1.5.1 • Published 10 months ago
aesirx-sso v1.5.1
Integration SSO
Installation
npm i aesirx-sso
Usage in SSR site
- Download sso.js from https://github.com/aesirxio/sso/releases/latest
- copy
sso.jsto your project - Add script to
<head>:
<script>
window.aesirxEndpoint="https://example.com"
window.aesirxClientSecret="[Replace this with the provided SSO CLIENT ID]"
window.aesirxClientID="[Replace this with the provided SSO CLIENT SECRET]"
window.aesirxAllowedLogins=['concordium', 'metamask', 'regular']
</script>
<script async defer src="YOUR_PROJECT_PATH/sso.js"></script>SSO CLIENT IDreplace this with the providedSSO CLIENT IDfrom https://dapp.shield.aesirx.io/licensesSSO CLIENT SECRETreplace this with the providedSSO CLIENT SECRETfrom https://dapp.shield.aesirx.io/licensesaesirxAllowedLoginsare for which logins do you want to use and you have wallets set up
concordium- Concordium wallet loginmetamask- Metamask wallet loginregular- Regular login to your site
Create button with window.handleSSO()
<script>
const onGetData = async (response) => {
//response is a Object that return from SSO, you can use it to handle Authentication in your Site
};
const onClickSSO = async () => {
await window.handleSSO(onGetData);
};
</script>
<button onclick="onClickSSO()"> SSO Login </button>Usage in ReactJS
Add the environment variable file (.env)
REACT_APP_SSO_CLIENT_ID=[Replace this with the provided SSO CLIENT ID from https://dapp.shield.aesirx.io/licenses]
REACT_APP_SSO_CLIENT_SECRET=[Replace this the provided SSO CLIENT SECRECT from https://dapp.shield.aesirx.io/licenses]Using <SSOButton /> to create Login Button
you can pass className, text, options props and onGetData function to control it
options are for which logins do you want to use and you have wallets set up:
concordium- Concordium wallet loginmetamask- Metamask wallet loginregular- Regular login to your site
import { SSOButton } from 'aesirx-sso';
const onGetData = async (response) => {
//response is a Object that return from SSO, you can use it to handle Authentication in your App
/*
Example:
const authService = new AesirxAuthenticationApiService();
await authService.setTokenUser(response, false);
Storage.setItem('auth', true);
*/
};
<SSOButton
className="btn w-100 fw-medium btn-success position-relative d-flex align-item-center justify-content-center mt-3"
text={"SSO Login"}
onGetData={onGetData}
options={['concordium', 'metamask', 'regular']}
/>Usage in NextJS
Add the environment variable file (.env)
NEXT_PUBLIC_SSO_CLIENT_ID=[Replace this with the provided SSO CLIENT ID from https://dapp.shield.aesirx.io/licenses]
NEXT_PUBLIC_SSO_CLIENT_SECRET=[Replace this the provided SSO CLIENT SECRECT from https://dapp.shield.aesirx.io/licenses]Using <SSOButton /> to create Login Button
you can pass className, text props and onGetData function to control it
options are for which logins do you want to use and you have wallets set up:
concordium- Concordium wallet loginmetamask- Metamask wallet loginregular- Regular login to your site
import { SSOButton } from 'aesirx-sso';
const onGetData = async (response) => {
//response is a Object that return from SSO, you can use it to handle Authentication in your App
/*
Example:
await updateUserData(response.access_token);
redirectProfile(response.access_token);
*/
};
<SSOButton
className="btn w-100 fw-medium btn-success position-relative d-flex align-item-center justify-content-center mt-3"
text={"SSO Login"}
onGetData={onGetData}
options={['concordium', 'metamask', 'regular']}
/>1.5.1
10 months ago
1.5.0
1 year ago
1.4.18
1 year ago
1.4.17
1 year ago
1.4.16
1 year ago
1.4.15
1 year ago
1.4.14
1 year ago
1.4.13
1 year ago
1.4.12
1 year ago
1.4.11
1 year ago
1.4.10
1 year ago
1.4.9
1 year ago
1.4.8
1 year ago
1.4.7
1 year ago
1.4.6
2 years ago
1.4.5
2 years ago
1.4.4
2 years ago
1.2.0
2 years ago
1.1.1
2 years ago
1.1.0
2 years ago
1.4.3
2 years ago
1.4.2
2 years ago
1.4.1
2 years ago
1.2.3
2 years ago
1.4.0
2 years ago
1.2.2
2 years ago
1.3.0
2 years ago
1.2.1
2 years ago
1.0.11
2 years ago
1.0.10
2 years ago
1.0.9
2 years ago
1.0.8
3 years ago
1.0.7
3 years ago
1.0.6
3 years ago
1.0.5
3 years ago
1.0.4
3 years ago
1.0.3
3 years ago
1.0.2
3 years ago
1.0.1
3 years ago
1.0.0
3 years ago