feat(module,auth): authentication module with arbitrary claims support
This commit is contained in:
@ -21,6 +21,7 @@
|
||||
</script>
|
||||
<script src="/edge/sdk/client.js"></script>
|
||||
<script src="test/client-sdk.js"></script>
|
||||
<script src="test/auth-module.js"></script>
|
||||
<script class="mocha-exec">
|
||||
mocha.run();
|
||||
</script>
|
||||
|
20
misc/client-sdk-testsuite/src/public/test/auth-module.js
Normal file
20
misc/client-sdk-testsuite/src/public/test/auth-module.js
Normal file
@ -0,0 +1,20 @@
|
||||
describe('Auth Module', function() {
|
||||
|
||||
before(() => {
|
||||
return Edge.connect();
|
||||
});
|
||||
|
||||
after(() => {
|
||||
Edge.disconnect();
|
||||
});
|
||||
|
||||
it('should retrieve user informations', function() {
|
||||
return Edge.rpc("getUserInfo")
|
||||
.then(userInfo => {
|
||||
chai.assert.isNotNull(userInfo.subject);
|
||||
chai.assert.isNotNull(userInfo.role);
|
||||
chai.assert.isNotNull(userInfo.preferredUsername);
|
||||
})
|
||||
});
|
||||
|
||||
});
|
@ -10,12 +10,12 @@ function onInit() {
|
||||
rpc.register("add", add);
|
||||
rpc.register("reset", reset);
|
||||
rpc.register("total", total);
|
||||
rpc.register("getUserInfo", getUserInfo);
|
||||
}
|
||||
|
||||
// Called for each client message
|
||||
function onClientMessage(ctx, data) {
|
||||
var sessionId = context.get(ctx, context.SESSION_ID);
|
||||
console.log("onClientMessage", sessionId, data.now);
|
||||
console.log("onClientMessage", data.now);
|
||||
net.send(ctx, { now: data.now });
|
||||
}
|
||||
|
||||
@ -60,4 +60,16 @@ function reset(ctx, params) {
|
||||
|
||||
function total(ctx, params) {
|
||||
return count;
|
||||
}
|
||||
|
||||
function getUserInfo(ctx, params) {
|
||||
var subject = auth.getClaim(ctx, auth.CLAIM_SUBJECT);
|
||||
var role = auth.getClaim(ctx, auth.CLAIM_ROLE);
|
||||
var preferredUsername = auth.getClaim(ctx, auth.CLAIM_PREFERRED_USERNAME);
|
||||
|
||||
return {
|
||||
subject: subject,
|
||||
role: role,
|
||||
preferredUsername: preferredUsername,
|
||||
};
|
||||
}
|
Reference in New Issue
Block a user