npm install @kernel-js/auth
Exposes the possible ways of storing the data received through native browser drives.
import { StorageMethods } from '@kernel-js/auth';
StorageMethods.LocalStorage
StorageMethods.CookieStorage
StorageMethods.SessionStorage
Used for OAuth type password authentication. By default, it uses the model established by Laravel Passport.
new OAuthAuthentication(config);
Arguments
config
- Object with the authentication settings.request
- It waits for an Axios instance and will be used to make the requests.storage - method
- Expect a StorageMethods enum that will tell you how to persist the data.client - id
- OAuth client id.client - scope
- Scope says you want to get (optional).client - secret
- Secret of the client OAuth.
import Axios from 'axios';
import { StorageMethods, OAuthAuthentication } from '@kernel-js/auth';
new OAuthAuthentication({
storage: {
method: StorageMethods.LocalStorage,
},
request: Axios.create({
baseURL: 'http://localhost:8000',
headers: {},
}),
client: {
id: '1',
scope: '',
secret: 'VRoONFr4soNZkoSYXiYZzcx8H5VfJdUt9IYk1l8o',
},
});
All classes use by default the interface Authentication that defines some common methods, being them.
Method that authenticates the user and returns their access tokens, in addition to the expiration date of the user.
new OAuthAuthentication(config...).login(data, url);
Arguments
data
- Object that holds the user data as the username and password.url (Optional)
- path in which the authentication request will be sent. By default/oauth/token
is used.
import Axios from 'axios';
import { StorageMethods, OAuthAuthentication } from '@kernel-js/auth';
const auth = new OAuthAuthentication(config...);
auth
.login({
'username': '[email protected]',
'password': '123456',
})
.then(response => {
console.log(auth.isAuthenticated());
});
Clears user authentication data.
new OAuthAuthentication(config...).logout();
import Axios from 'axios';
import { StorageMethods, OAuthAuthentication } from '@kernel-js/auth';
const auth = new OAuthAuthentication(config...);
auth
.logout()
.then(response => {
console.log(auth.isGuest());
});
Check if an authenticated user exist.
new OAuthAuthentication(config...).isGuest();
import Axios from 'axios';
import { StorageMethods, OAuthAuthentication } from '@kernel-js/auth';
const auth = new OAuthAuthentication(config...);
console.log(auth.isGuest());
Opposite the isGuest method.
new OAuthAuthentication(config...).isAuthenticated();
import Axios from 'axios';
import { StorageMethods, OAuthAuthentication } from '@kernel-js/auth';
const auth = new OAuthAuthentication(config...);
console.log(auth.isAuthenticated());
This library was developed by Bruno Santos, Carlos Escouto and Gustavo Siqueira
Please do! Check out our Contributing guidelines.
MIT © 2018-2019 Kernel JS