Auth módulo fornece autenticação e autorização para a sua aplicação, incluindo gestão de utilizadores, gestão de grupos, registo de utilizadores, login, e funções relacionadas. É instalado automaticamente quando o projecto é criado.
O Login de Utilizador e Palavra-passe por defeito de Admin são os seguintes:
- Login: [email protected]
- Password: appmaster
As definições dos módulos podem ser configuradas da seguinte forma:
- SignUp Groups: define a lista de grupos onde o utilizador se pode registar;
- SignUp: permite aos utilizadores inscreverem-se e obterem contas na aplicação;
- Session timeout (minutes): define o tempo após o qual a sessão do utilizador actual terminará se o utilizador estiver inactivo; por defeito 60 min;
- Failed login delay (in ms): define o tempo de atraso para respostas após tentativas de login falhadas; por defeito 0ms;
- Email confirmation required: define se o utilizador tem de confirmar o registo via e-mail;
- Signed-Up User Active: define active=true para cada objecto de utilizador recém-criado, se activado;
- Groups tab permite criar e configurar uma lista de grupos de utilizadores;
User e User Session são criados automaticamente assim que o módulo Auth é instalado. Pode encontrá-los na página Data Design tab. Não é possível configurar os atributos por defeito destes modelos, mas é possível adicionar novos modelos.
User, User Session e Auth Module BPs relacionados
Processos empresariais pré-instalados relacionados com User e User Session os modelos são os seguintes:
User Modelo
- DB: Delete User: apaga User objecto da base de dados com base no seu ID;
- DB: Update User: repõe todos os campos de um determinado modelo de objecto na base de dados e actualiza-os com determinados valores (DB: Patch User tem de ser utilizado para alterar apenas os campos fornecidos e manter outros como estão);
- DB: Create User: cria um registo na base de dados e devolve o objecto modelo User (requer a utilização de Make User bloco a criar User modelo de objecto de acordo com os campos de entrada);
- DB: Soft Delete User: actualizações DeletedAt campo do seleccionado User modelo de objecto em vez de remover todo o registo como DB: Delete User faz;
- DB: Bulk Delete User: apaga em massa o conjunto de User modelos de registos de objectos com o dado IDs (ids matriz); failed_ids - um conjunto de utilizadores IDs que não será apagado;
- DB: Patch User: actualiza os campos seleccionados do User modelo de objecto na base de dados (DB: Update User tem de ser utilizado para reiniciar todos os campos);
- DB: Search User: encontra um ou vários User modelos de objectos na base de dados com base nos seus campos e devolve-os;
- DB: GetOne User: encontra os User modelo de objecto com base no seu ID e devolve-o;
- Expand User: devolve todos os campos dos seleccionados User objecto modelo;
- Make User: faz o User modelo de objecto com base em campos de entrada (é necessário utilizar DB: Create User a fim de fazer o registo na base de dados);
User Session
- DB: Delete User Session: apaga User Session objecto da base de dados com base no seu ID;
- DB: Update User Session: repõe todos os campos de um determinado objecto modelo na base de dados, e actualiza-os com determinados valores (DB: Patch User Session tem de ser utilizado apenas para alterar os campos fornecidos);
- DB: Create User Session: cria um registo na base de dados e devolve o User Session modelo de objecto (requer a utilização de Make User Session bloco a criar User modelo de objecto de acordo com os campos de entrada);
- DB: Soft Delete User Session: actualizações DeletedAt campo do seleccionado User Session objecto modelo;
- DB: Bulk Delete User Session: apaga em massa o conjunto de User Session modelos de registos de objectos com o dado IDs (ids matriz); failed_ids array define o conjunto de IDs que será ignorado do processo de eliminação;
- DB: Patch User Session: actualiza os campos seleccionados do User Session modelo de objecto na base de dados (DB: Update User Session tem de ser utilizado para reiniciar todos os campos);
- DB: Search User Session: encontra um ou vários User Session modelos de objectos na base de dados com base nos seus campos e devolve-os;
- DB: GetOne User Session: encontra os User Session modelo de objecto com base no seu ID e devolve-o;
- Expand User Session: devolve todos os campos dos seleccionados User Session objecto modelo;
- Make User Session: faz o User Session modelo de objecto com base em campos de entrada (é necessário utilizar DB: Create User Session a fim de fazer o registo na base de dados);
Auth Module
- Auth: Generate Auth Token: gera um código de autorização (Auth Token) do comprimento dado;
- Auth: Registration: regista um novo utilizador;
- Auth: Authorization: verifica se um dado Auth Token existe e devolve o utilizador a ele associado;
- Auth: Authentification: verifica o login e a palavra-chave do utilizador e devolve Auth Token;
- Auth: Logout: encerra a sessão do utilizador actual com base no Auth Token;
- Auth: Get current user: devolve corrente User objecto modelo;
- Auth: Remove user from group: remove um utilizador do grupo seleccionado com base no seu ID;
- Auth: Add user to group: adiciona um utilizador ao grupo seleccionado com base no seu ID;
- Auth: Hash Password: converte a cadeia de palavras-passe em hash;
- Auth: Restore Password: restaura a palavra-passe com base no login do utilizador;
- Auth: Change Password: altera a palavra-passe do utilizador;
- Auth: Probe Password: verifica a associação entre a palavra-passe e o hash;
Auth Module, User e User Session endpoints
Pré-instalado Endpoints do Auth Module e User e User Session Os modelos são gerados automaticamente assim que o projecto é criado.
Auth Module
Tipo de pedido | Endpoint | Processo empresarial associado |
/logout/ | Auth: Logout | |
/auth/ | Auth: Authentification | |
/register/ | Auth: Registration | |
/confirm/ | Auth: Get Current User | |
/user/change-password/ | Auth: Change Password | |
/user/restore-password/ | Auth: Restore Password | |
/user/profile/ | Auth: Get Current User |
Utilizador
Tipo de pedido | Endpoint | Processo empresarial associado |
/user/:id/ | DB: Update User | |
/user/:id/ | DB: Delete User | |
/user/:id/ | DB: GetOne User | |
/user/ | DB: Search User | |
/user/:id/ | DB: Patch User | |
/user/ | DB: Create User |
User Session
Tipo de pedido | Endpoint | Processo empresarial associado |
/user-session/:id/ | DB: Delete User Session | |
/user-session/:id/ | DB: GetOne User Session | |
/user-session/ | DB: Search User Session | |
/user-session/:id/ | DB: Patch User Session | |
/user-session/ | DB: Create User Session | |
/user-session/:id/ | DB: Update User Session |
Auth Token
Auth Token está a ser utilizado como um símbolo de sessão do utilizador autorizado. É possível interagir com o Auth Token, nos processos empresariais de aplicação web:
- Get Auth Token devolve a sessão do utilizador actual Auth Token;
- Set Auth Token reescreve a sessão do utilizador actual Auth Token;
- Remove Auth Token remove a sessão do utilizador actual Auth Token;
Como obter um utilizador actual
1. Ir para o Business logic e arrastar o Auth: Get current user bloco.
2. Ir para o bloco Endpoints e expandir o separador User secção. Em seguida, criar uma GET método de tipo para o processo empresarial criado na etapa 1. O URL endpoint seria /user_current.
3. Ir para o Web Apps e criar um novo processo de negócio com Server request GET /user_current para obter o utilizador actual do processo comercial da aplicação web.