UNPKG

innotec-auth-plugin

Version:

The Innotec-Auth-Plugin is designed to handle all authentication processes for applications where's conntected to the innotec v2 infrastructure. Theses plugin provides different authentication processes:

129 lines (72 loc) 3.07 kB
# Innotec Auth Plugin The Innotec-Auth-Plugin is designed to handle all authentication processes for applications where's conntected to the innotec v2 infrastructure. Theses plugin provides different authentication processes: - Authentication over authentication providers (Github, PayPal, Facebook ...) - Authentication over the Innotec V2 Infrastructure (Authentication by username and password) With this module its easy to connect the infrastructure. ### Installation **NOTE**: please use `npm 3.*` (`(sudo) npm i -g npm@3`) ```bash npm i --save --save-exact innotec-auth-plugin ``` ### Import in your app module You can import the module in your Application with: ```javascript import { InnotecAuthPlugin } from 'innotec-auth-plugin'; ``` ### Integration Steps #### First At first you must set your personal options of your app. To set this options call the `moduleoptions` Service: ```javascript import { ModuleOptions } from 'innotec-auth-plugin'; . . export class YoUrClAsSs { constructor (private options: ModuleOptions) { } public yourService() { let options = { companylogo: "http://yourLogoURL", // You can define a own logo of your companylogo. Default is the logo of the Innotec Company clientid: 'Innotec Client ID', // Your clientid from Innotec clientsecret: 'Innotec Client Secret',// Your clientsecret from Innotec facebook_clientid: 'abc', // The Facebook Client_ID for OAuth google_clientid: 'abc', // The Google Client_ID for OAuth paypal_clientid: 'abc', // The PayPal Client_ID for OAuth endpoint: 'live', // Switch for the endpoints. Sandbox is comming soon. live is default. userregisterurl: 'url', // Defines the url where the user can be register... Default is 'https://app.v2.werbasinnotec.com' closeable: true // Boolen to define if the loginwindow is closeable }; this.options.set(options); } } ``` #### Second At next you can import the loginfield in your base template: ```html <login-field [open]='!isLoggedIn'></login-field> ``` The loginfield is hidden in default-mode. You can open the loginfield with the open property in this element. If the open property true, the login will displayed as fixed container. #### Third To check the loginstate you can call the auth service: ```javascript import { CheckAuthStatus } from 'innotec-auth-plugin'; export class YoUrClAsSs { constructor (private auth: CheckAuthStatus) { } public yourService() { this.auth.check(); // returns true or false } } ``` You can subscribe the variable also: ```javascript this.auth.isLoggedIn().subscribe((state) => { this.isLoggedIn = state }); ``` ### Additional functions #### CheckAuthStatus: - logout(): User will logged out - Cookie will deleted. - getTokenInfo(): Will response all tokeninfo. Ex. userobj.picture is users picture (C) 2017 - Werbas AG / Werbas Innotec GmbH All rights reserverd! -