takiacademy-sso
v1.1.14
Published
takiacademy sso
Downloads
8
Maintainers
Readme
Takiacademy SSO
Installation
npm i takiacademy-sso
How to use ?
import TASSO from 'takiacademy-sso';
or using commonJS :
const { default: TASSO } = require('takiacademy-sso');
const accessManager = await new TASSO({
client_id: /* your application id */,
client_secret: /* your application secret */,
tenant_id: /* your organization tenant id */,
ms_graph_base_url: /* microsoft graph api URL example:
https://graph.microsoft.com/v1.0 */
});
for security reasons you should add these arguments in your .env file .
Get all users in the organization :
const users = await accessManager.getAllUsers();
/*
returns User[]
User {
businessPhones: string[];
displayName: string;
givenName: string;
jobTitle: string | null;
mail: string | null;
mobilePhone: string | null;
officeLocation: string | null;
preferredLanguage: string | null;
surname: string | null;
userPrincipalName: string;
id: string;
appRolesIds: string[]
}
*/
Get all appRoles in the application :
const users = await accessManager.getAppRoles();
/*
returns AppRole[]
AppRole {
allowedMemberTypes: string[];
description: string;
displayName: string;
id: string;
isEnabled: boolean;
origin?: string;
value: string;
}
*/
Add appRoles to the application :
const addAppRolesIds = await accessManager.addRolesToApp(appRoles);
// appRoles can be an array or a single AppRoleBody
/*
appRoles : AppRoleBody[]
AppRoleBody {
description: string;
displayName: string;
value: string;
}
*/
Assign appRoles to users :
await accessManager.addRolesToUsers(rolesIds, usersIds);
// you can get users and roles ids using respectively the getUsers() and getAppRoles() methods
/*
rolesIds : string[]
[
"4ee80c79-fbd0-4548-9453-4857b16b528c",
"9fa45a2d-870f-46cc-9aed-1a5d837f6ea5",
...
]
usersIds : string[]
[
"9fa45a2d-870f-46cc-9aed-1a5d837f6ea5",
"4ee80c79-fbd0-4548-9453-4857b16b528c",
...
]
*/
Create new user :
await accessManager.createUser(userBody);
/*
userBody: UserBody
UserBody {
accountEnabled: boolean;
displayName: string;
mailNickname: string;
passwordProfile: {
forceChangePasswordNextSignIn: boolean;
forceChangePasswordNextSignInWithMfa: boolean;
password: string;
};
userPrincipalName: string;
}
*/
Contact
if you have any suggestion or issue contact me through my email : [email protected]