los-auth
v1.0.20
Published
Libreria de autenticacion para las aplicaciones internas de la empresa LOS
Downloads
16
Readme
LOS-AUTH
Librería para uso de módulo o aplicaciones desarrolladas para el sistema de LOS.
Prerequisitos
Es necesario contar con la versión de Angular 5 o posterior.
Tabla de contenido
Instalación
npm install --save los-auth
Implementación
En el archivo de app.module.ts
importaremos el módulo de autenticación de LOS.
import { LosAuthModule } from 'los-auth';
Y despues lo agregaremos en el bloque de imports
en @NgModule
de la siguiente manera:
@NgModule({
declarations: [
AppComponent
],
imports: [
BrowserModule,
LosAuthModule.forRoot()
],
providers: [],
bootstrap: [AppComponent]
})
Ya con esto estarás incorporando los servicios de autenticación e interceptores necesarios la creación de módulos para el sistema LOS
Servicios
login(LosLoginModel) : LosAuthResponseModel
Para poder realizar un Login es necesario importar LosAuthService
y LosLoginModel
en el componente donde se requiera utilizar los servicios.
import { LosAuthService, LosLoginModel } from 'los-auth';
Hacer instancia en el constructor de LosAuthService
de la siguiente manera:
constructor(
private authService: LosAuthService
) { }
Y para poder realizar un login es necesario realizar las siguientes instrucciones en la función que ejecutará el evento.
const data: LosLoginModel = {
username: 'moises.aleman',
password: 'secret',
client_id: 'client_id',
url: 'http:/url-auth/auth',
grant_type: 'password'
}
this.authService.login(data).subscribe(response => {
/* Success */
}, responseError => {
/* Error */
});
En caso de que la petición sea exitosa la respuesta sera:
{
"access_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJodHRwOi8vd3d3LnczLm9yZy8yMDAxLzA0L3htbGRzaWctbW9yZSNobWFjLXNoYTUxMiJ9.eyJpZCI6IjE0MjUiLCJ1c2VybmFtZSI6IjYwMDYxNCIsInVzZXJkb21haW4iOiJtb2lzZXMuYWxlbWFuIiwidXNlcnNhcCI6Im1hbGVtYW4iLCJuYW1lIjoiTW9pc2VzIEFsYmVydG8iLCJsYXN0bmFtZSI6IkFsZW1hbiBNYWNpYXMiLCJza2luIjoiYmctaW5kaWdvIiwicGVyc29uIjoie1wiSURcIjoxNTAxMyxcIk5hbWVcIjpcIk1vaXNlcyBBbGJlcnRvXCIsXCJMYXN0TmFtZVwiOlwiQWxlbWFuIE1hY2lhc1wiLFwiQmlydGhkYXlcIjpcIjE5OTItMDEtMjBUMDA6MDA6MDBcIixcIkdlbmRlcl.806qA2bcwuZPxmvRHrnNjIkS1XLzc3x9Poz_3YWrB9Q6hwoll9_PHbwQHNKqWJglm79BxN82nZeVSf68CVbaYA",
"token_type": "bearer",
"expires_in": 43199,
"id": "1425",
"username": "",
"audience": "cc73800ebd6544d2aec59ca41",
"person": "",
"roles": "",
"salas": "",
"user_applications": "",
".issued": "Tue, 09 Jan 2018 00:25:36 GMT",
".expires": "Tue, 09 Jan 2018 12:25:36 GMT"
}
logout(): Boolean
Podrás realizar un logout mediante el método disponible en el servicio de LosAuthService.
isLogged(): Boolean
Verifica si el usuario está loggeado.
getUserActive(): LosAuthModel
Obtiene el usuario que está activo en ese momento (usuario que realizo login previamente).
getToken(): String
Obtiene el string del token.
getUserRoles(): String[]
Obtiene todos los roles del usuario.
hasPermission(String[]): Boolean
Valida si los roles enviados en arreglo están en los roles del usuario.
getUserApplications(): String[]
Obtiene todas las aplicaciones que tiene acceso el usuario.
changePassword(LosChangePassword): Any
Cambia la contraseña del usuario actual.
switchSkinTheme(String): Any
Cambia el skin por defecto del usuario.
getUserSkin(): String
Obtiene el skin del usuario.
getUserRooms(): String[]
Obtiene todas las salas que tiene asignadas el usuario.
getUserRoomDefault(): String
Obtiene la sala defecto del usuario.
setRoomActive(String): Boolean
Setea en navegador la sala activa que seleccionó del listado el usuario.
getRoomActive(): String
Obtiene la sala activa que está seteada en el navegador.