Histórico da Página
Informações | ||
---|---|---|
| ||
Disponível a partir da versão 19.3.1 e superiores. |
Para utilização do protocolo oAuth2 TlppCore é necessário promover alterações no arquivo de configuração do AppServer(appserver.ini).
Foi criada chave a tlppdataTlppData, ela deve ser incluída na sessão do HttpServer que irá passar a validar o acesso às API’s através deste protocolo.
Abaixo veremos um exemplo onde foi configurada uma porta específica para responder às requisições passando pela com validação de acesso pelo oAuth2:
Bloco de código | ||||
---|---|---|---|---|
| ||||
[HTTPSERVER] Enable=1 log=0 Servers=HTTPS_OAUTH2_47500_TLPPCORE [HTTPS_OAUTH2_47500_TLPPCORE] |
...
hostname=localhost |
...
port=47500 |
...
locations=HTTPS_ROOT_OAUTH2_47500 |
...
ContentTypes=CT_HTPP |
...
SslCertificate=_certs\cloud_cert_with_no_chain.pem |
...
SslCertificateKey=_certs\cloud_key.pem |
...
Charset=UTF-8 |
...
TlppData={"Authorization":{"scheme":"oAuth2","onAuth":"", "onAuthNoCheckUri":" |
...
u_ |
...
noCheckUri", "onAuthparams":"u_paramsProvider"}} [HTTPS_ROOT_OAUTH2_47500] Path=/rest RootPath=root/web DefaultPage=index.html AllowMethods=GET, HEAD, POST, PUT, DELETE, PATCH, OPTIONS ThreadPool=THREAD_POOL_OAUTH2_47500 [THREAD_POOL_OAUTH2_47500] Environment=TLPPCORE MinThreads=1 MaxThreads=2 MinFreeThreads=1 GrowthFactor=1 InactiveTimeout=30000 AcceptTimeout=10000 |
A chave TlppData oAuth2GetParameters"}}A chave tlppdata é onde devem ser configuradas as funções necessárias para o correto funcionamento do oAuth2 TlppCore.
Ela possui o formato Json, portanto sua sintaxe deve seguir o modelo de {“key”:”value”} , caso contrário, os valores não serão lidos e será apontado erro de configuração no momento da requisição ou na validação dos tokens.
...
- "Authorization" -> Indica que nesta porta há um protocolo de autorização. A partir do momento que esta key foi declarada o server exigirá as demais chaves.
- "scheme" -> Deve ser declarado o protocolo de autorização no caso : "oAuth2". Este parâmetro é obrigatório, não pode ser deixado em branco/null e caso seja colocado um valor diferente de "oAuth2" ou "oAuth", será apresentado erro na utilização do endpoint.
- "onAuth" -> Inserir o nome da função que irá realizar a checagem do token assim que chegar a requisição a uma API. Caso seu valor seja declarada : "" (em branco) será utilizada a função padrão TlppCore para validação do access token .
- "onAuthNoCheckUri" -> Declarar a função responsável por incluir a lista com os endpoints que não devem ser validados pelo oAuth2. Caso seja declarada : "" (em branco) todos os endpoints exigirão o access token e serão validados.
- "onAuthparams" -> Declarar a função responsável por enviar os parâmetros privados do cliente para composição e validação dos tokens(access/refresh). O valor desta chave é obrigatório, não pode ser deixado em branco/null.
...
Informações | ||
---|---|---|
| ||
É Obrigatório o uso de uma porta HTTPS com protocolo SSL por conta da segurança no tráfego de informações, evitando inclusive ataques do tipo: man-in-the-midle(MITM) |