UNPKG

@locii/biopass-cognito-sdk

Version:

Biopass Cognito Web SDK

216 lines (154 loc) 3.95 kB
# Cognito MFA Package This SDK is a wrapper for adding Biopass Multifactor authentications to applications which had their users in AWS Cognito. ### Table of Contents **[Getting Started](#Getting-Started)** **[Use React App](#Use-React-App)** **[Use Angular App](#Use-Angular-App)** **[Use Vue App](#Use-Vue-App)** ## Getting Started Install the package ```bash npm install @locii/biopass-cognito-sdk ``` ## Require the package To import @locii/biopass-cognito-sdk, run the following command ```bash import { BiopassAuth } from "@locii/biopass-cognito-sdk"; ``` ## After installing the packege, do the following steps: **Step 1:** Create config file ```javascript export const config = { Auth: { region: '', userPoolId: '', userPoolWebClientId: '', authenticationFlowType: 'CUSTOM_AUTH', clientMetadata: { redirectUri: 'http://localhost:3000/login' }, } }; ``` `redirectUri:` The user is redirected to this address after authentication. Please make sure this is exactly same as the Allowed Callback URL setting in Biopass application. **Step 2:** ```javascript import { Amplify } from 'aws-amplify'; "@aws-amplify/ui-angular": "^3.2.10", import * as ui from '@aws-amplify/ui-angular'; import config from './amplify-config'; Amplify.configure(config); ``` ## Use React App When signing in with user name and password, you will pass in the username and the password to the `signin` method of the Auth class. ### Sign-In ``` import { BiopassAuth } from "@locii/biopass-cognito-sdk"; const login = async (event) => { BiopassAuth.signin(username, password) .then((res) => { // add your code }) .catch((err) => // add your code); }; useEffect(() => { BiopassAuth.resumeSignIn() .then((user) => { // add your code }) .catch((err) => { // add your code }); }, []); ``` ### Sign-Out ``` import { Auth } from 'aws-amplify'; async function signOut() { try { await Auth.signOut(); } catch (error) { console.log('error signing out: ', error); } } ``` ## Use Angular App When signing in with user name and password, you will pass in the username and the password to the `signin` method of the Auth class. ### Global config Add a below command in Ployfills.ts ``` (window as any).global = window; ``` ### Sign-In ``` import { BiopassAuth } from "@locii/biopass-cognito-sdk"; ngOnInit() { your code ... BiopassAuth.resumeSignIn() .then((user) => { console.log('userr', user); // add your code }) .catch((err) => { // add your code }); } login() { BiopassAuth.signin(this.username.value, this.password.value) .then((res) => { // add your code }) .catch((err) => // add your code); } ``` ### Sign-Out ``` import { Auth } from 'aws-amplify'; logout() { try { Auth.signOut(); } catch (error) { console.log('error signing out: ', error); } } ``` ## Use Vue App When signing in with user name and password, you will pass in the username and the password to the `signin` method of the Auth class. ### Global config Add a below command in App.vue ``` var global = window ``` ### Sign-In ``` import { BiopassAuth } from "@locii/biopass-cognito-sdk"; created() { BiopassAuth.resumeSignIn() .then((user) => { // add your code }) .catch((err) => { // add your code }) }, methods: { login() { //add your code BiopassAuth.signin(this.username, this.password) .then((res) => { // add your code }) .catch((err) => console.log('asasasas')) } } ``` ### Sign-Out ``` import { Auth } from 'aws-amplify'; logout() { try { Auth.signOut(); } catch (error) { console.log('error signing out: ', error); } } ```