Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

Conteúdo

  1. Visão Geral

  2. Configuração
  3. Como enviar código de acesso para o usuário

  4. Como redefinir a senha

  5. Como modificar template do e-mail
  6. Como adicionar URL com código de acesso no e-mail

01. Visão geral

.......

....

.....

,,,,

02. Configuração

info

Índice
minLevel2


01. Objetivo

O serviço permite a redefinição de senha de um usuário do produto Datasul, por meio de API, deste modo permitindo que aplicativos consigam solicitar a redefinição de senha. 



02. Configuração


A recuperação de senha deve estar ativa no produto.


Configuração no DATASUL: É habilitada por meio da propriedade enable.recover.password, para . Para mais informações sobre a propriedade, acesse Documentação "datasul_framework.properties"

Configuração no DATASUL FOR THF: É habilitada nas Propriedades do Sistema, p. Para mais informações sobre a propriedade, acesse Segurança

warning
Expandir
titleCaso a recuperação de senha não esteja ativa, será retornada mensagem de ERRO.

Mensagem no DATASUL

Image Modified





Mensagem no DATASUL FOR THF

Image Removed

Image Added



Informações

Verifique se os parâmetros de e-mail estão configurados e funcionais

, o

. O processo de redefinição de senha faz o uso do método de envio definido no produto.



Parâmetros no DATASUL: Para mais informações sobre os parâmetros, acesse Parâmetros Email Foundation (BTB962ZB)

Parâmetros no DATASUL FOR THF: Para mais informações sobre os parâmetros, acesse CFG - E-mail.

Expandir
warning
titleCaso ocorra erro no processo de envio de e-mail, será retornada mensagem de erro.

A mensagem não possui detalhes, por não receber detalhes de erro da api de envio de e-mail.

Image Modified



Verifique se os parâmetros gerais estão configurados e funcionais. O processo de redefinição de senha faz o uso das configurações na montagem da URL e TOKEN no DATASUL.

DATASUL: Para mais informações sobre a configuração, acesse Janela Parâmetros Gerais Módulo Básico – Pasta ServidorParâmetros Gerais Módulo Básico (BTB946AA).

Expandir
titleCaso não exista configuração será gerado o erro.

Image Added



Verifique se a URL do RFI está configurada. O processo de redefinição de senha faz o uso da configuração na montagem da URL e TOKEN no DATASUL FOR THF.

DATASUL FOR THF: Para mais informações sobre a configuração, acesse Gerais.

Expandir
titleCaso não exista configuração será gerado o erro.

Image Added




03. Como enviar código de acesso para o usuário


Para realizar o envio do código de acesso, utilize o serviço passwordReset existente no contexto totvs-login, seguindo as premissas: 

O método de requisição é do tipo POST 

Não possui autenticação na requisição.

Deve ser enviado o parâmetro email, contendo o e-mail do usuário do produto, que está solicitando o código de acesso.

O usuário relacionado ao e-mail:

  • Deve ser do tipo INTERNO.
  • O e-mail não pode estar associado a mais de um usuário válido.
  • Não pode estar bloqueado;
  • Não pode estar inativo;
  • Expandir
    titleCaso não atenda os requisitos acima será retornado erro
.
  • Erros sem mensagens

  • Erro de sintaxe inválida

. ao utilizar o serviço
  • , terá como retorno status 400 Bad Request.

  •  Exemplo: o parâmetro email errado (emaill) ou sem valor.

    Erros com mensagens

, são
  • : são retornadas no formato JSON

;
  • .

    Image Modified

Documentação da manutenção de usuário: Manutenção de Usuário (SEC000AA)

Exemplo

http://<SERVIDOR>:<PORTA>/totvs-login/passwordReset?email=<E-MAIL_DO_USUÁRIO>

Image Modified



Ao executar o serviço com sucesso, o usuário receberá um e-mail contendo o código de acesso para redefinição de senha. 


Image Added


O código de acesso deve ser encaminhado para o serviço de redefinição de senha

, para

. Para mais informações leia o conteúdo 04. Como redefinir a senha.

Abaixo temos o exemplo de um e-mail padrão contendo o código de acesso:

Image Removed

Informações

Código de acesso:

  • É anulado após o seu uso na redefinição de senha;
  • É válido por 10 minutos, após este tempo será considerado como inválido;
O template de

A mensagem do e-mail pode ser

modificado

modificada.

  • Para mais informações leia o conteúdo: 05. Como modificar
o template do e-mail.O código de acesso pode ser enviado juntamente com uma URL.Para mais informações leia o conteúdo: 06. Como adicionar URL com o código de acesso no
  • a mensagem do e-mail.




04. Como redefinir a senha


Para redefinir a senha, utilize o serviço passwordReset existente no contexto totvs-login, seguindo as premissas: 

O método de requisição é do tipo POST 

Não possui autenticação na requisição.

A autorização para redefinição de senha será por meio do código de acesso.

Expandir
titleDeve ser enviado um
JSON no
JSON no corpo da requisição
 com as informações:

guid: É o código de acesso, que o usuário recebeu por e-mail;

newPassword: É a nova senha do usuário;

confirmNewPassword: É a confirmação da senha do usuário;

Exemplo:

Image Modified

Expandir
titleCaso não atenda os requisitos acima será retornado erro
.

Erros sem mensagens

Erro de sintaxe inválida

. ao utilizar o serviço

, terá como retorno status 400 Bad Request.

 Exemplo: Corpo da requisição errada ou sem valor.

Erros com mensagens

,

: são retornadas no formato JSON

;

.

Image Modified

Exemplo:

http://<SERVIDOR>:<PORTA>/totvs-login/passwordReset

Image Modified




05. Como modificar

o template do

a mensagem do e-mail


A modificação

do template do

da mensagem do e-mail

, ocorre

 ocorre por meio de

uma chave referente a um template de e-mail parametrizado no produto, abaixo são apresentados os procedimentos: 
  • O parâmetro keyTemplate, dever ser enviado no serviço responsável pelo envio do código de acesso. 
  • Image Removed
  • Deve existir um template parametrizado no ambiente referente ao valor da keyTemplate
    • Caso não exista será utilizado o e-mail padrão. 
  • Exemplo com o parâmetro keyTemplate

    um programa registrado, que será responsável pela criação da mensagem do e-mail. A chave do registro do programa deve ser enviada no parâmetro keyTemplate.  





    http://<SERVIDOR>:<PORTA>/totvs-login/passwordReset?email=<E-MAIL_DO_USUÁRIO>&keyTemplate=<CHAVE_DO_
    TEMPLATE>
    REGISTRO> 

    Image Added

    Expandir
    titleCaso não exista registro para chave, será utilizado o e-mail padrão

    Image Added

    Expandir
    titleExemplo de e-mail modificado, recebido
    :
    • Image Removed
    pelo usuário

    Image Added



    Desenvolvendo o programa para modificar a mensagem do e-mail.

    A mensagem deve ser criada em formato HTML;

    A mensagem não pode utilizar a tag <script>;

    Criar programa progress para retornar a mensagem do e-mail, neste programa deve existir a procedure pi-html, tendo como parâmetro de entrada JsonObject e parâmetro de saída CHARACTER.

    Expandir
    titlePrograma de exemplo

    O parâmetro de entrada é do tipo JsonObject, será enviado com a estrutura e valores abaixo:

    Bloco de código
    themeRDark
    {
      "guid": "Código de acesso do usuário",
      "cod_usuario": "Código do usuário",
      "nom_usuario": "Nome do usuário"
      "url": "Servidor e porta configurados em Parâmetros Gerais, Para mais informações leia o conteúdo 02. Configuração",
    }

    O parâmetro de saída é do tipo CHARACTER, onde deve ser retornada a mensagem HTML.


    Bloco de código
    themeRDark
    titleAssinatura da Procedure
    USING Progress.Json.ObjectModel.*.
    
    {include/i-prgvrs.i EXEMPLO 2.00.00.001 }
    
    PROCEDURE pi-html:
        DEFINE INPUT   PARAMETER jsonIn    AS JsonObject NO-UNDO.
        DEFINE OUTPUT  PARAMETER htmlOut   AS CHARACTER  NO-UNDO.
    	
    	//Implementar Lógica para criar o retorno HTML    
    END PROCEDURE.

    Programa de exemplo:

    View file
    nameexemplo.zip
    height250

    Expandir
    titleResultado do e-mail

    Image Added



    Como registrar um programa.

    O método de requisição é do tipo POST 

    A requisição precisa de autenticação. Para mais informações sobre autenticação de API acesse

    Aviso
  • Neste momento, não possui uma interface gráfica para o gerenciamento de Templates;
  • Logo abaixo são apresentados procedimentos, para gerenciar Templates de e-mail que podem ser utilizados no processo de redefinição de senha, fazendo o uso de API:
  • AAPI requer autenticação, para mais informações sobre autenticação do serviço verificar
    • Como retornar um Template de e-mail:
    • Como retornar todos os Templates de e-mail:
    • Como criar um Template de e-mail:
    • Como atualizar um Template de e-mail:
    • Como remover um Template de e-mail:

    , deve se atentar com os modos de autenticação para DATASUL e DATASUL FOR THF.

    Não será realizada validação do programa ao registrá-lo. 

    Caso aconteça algum erro em tempo de execução com o programa registrado, será lançado erro no arquivo de log do servidor de aplicação Progress e será retornada mensagem padrão.


    Expandir
    titleDeve ser enviado um JSON no corpo da requisição

    key: Não pode passar o limite de 20 caracteres. Exemplos: fnd_access_code, app_rh_access_code.

    value: Informar o programa responsável pela modificação da mensagem do e-mail.

    Bloco de código
    themeRDark
    {
      "key": "fnd_access_code",
      "value": "sec/exemplo.r"
    }

    http://<SERVIDOR>:<PORTA>/api/sec/v1/passwordReset/templates

    Image Added



    Como atualizar o registro de um programa.


    O método de requisição é do tipo PUT

    A requisição precisa de autenticação. Para mais informações sobre autenticação de API acesse a página Desenvolvimento de APIs para o produto Datasul, deve se atentar com os modos de autenticação para DATASUL e DATASUL FOR THF.

    Expandir
    titleDeve ser enviado um JSON no corpo da requisição

    value: Informar o programa responsável pela modificação da mensagem do e-mail.

    Bloco de código
    themeRDark
    {
      "value": "sec/exemplo.r"
    }

    Informar a chave do registro na URL.

    http://<SERVIDOR>:<PORTA>/api/sec/v1/passwordReset/templates/fnd_access_code

    Image Added



    Como remover um programa registrado.


    O método de requisição é do tipo DELETE

    A requisição precisa de autenticação. Para mais informações sobre autenticação de API acesse

    06. Como adicionar URL com o código de acesso no e-mail

    dadsad

    Aviso
  • Neste momento, não possui uma interface gráfica para o gerenciamento de URLs;
  • Logo abaixo são apresentados procedimentos, para gerenciar URLs, que podem ser utilizados no processo de redefinição de senha, fazendo o uso de API:
  • AAPI requer autenticação, para mais informações sobre autenticação do serviço verificar
    • Como retornar uma URL:
    • Como retornar todas as URLs:
    • Como criar uma URL:
    • Como atualizar uma URL:
    • Como remover um URL:
    Informações
    iconfalse

    IMPORTANTE!

    Disponível para releases 12.1.29 e superiores.

    , deve se atentar com os modos de autenticação para Antiga Arquitetura (JBOSS) e Nova arquitetura DTS4THF(TOMCAT).

    Informar a chave do registro na URL.

    http://<SERVIDOR>:<PORTA>/api/sec/v1/passwordReset/templates/fnd_access_code

    Image Added



    Como retornar um programa registrado.

    O método de requisição é do tipo GET

    A requisição precisa de autenticação. Para mais informações sobre autenticação de API acesse a página Desenvolvimento de APIs para o produto Datasul, deve se atentar com os modos de autenticação para DATASUL e DATASUL FOR THF.

    Informar a chave do registro na URL.

    http://<SERVIDOR>:<PORTA>/api/sec/v1/passwordReset/templates/fnd_access_code

    Image Added



    Como retornar todos os programas registrados.

    O método de requisição é do tipo GET

    A requisição precisa de autenticação. Para mais informações sobre autenticação de API acesse a página Desenvolvimento de APIs para o produto Datasul, deve se atentar com os modos de autenticação para DATASUL e DATASUL FOR THF.

    http://<SERVIDOR>:<PORTA>/api/sec/v1/passwordReset/templates

    Image Added