Autorizador de terceiros
Você pode configurar seu próprio serviço para autenticar solicitações de API. APIG primeiro invoca este serviço para autenticação e, em seguida, invoca o serviço de back-end depois de receber uma resposta bem-sucedida.
Se o gateway não oferecer suporte a essa política, entre em contato com o suporte técnico para atualizar o gateway para a versão mais recente.
A figura a seguir mostra o princípio da autenticação de terceiros. Depois de vincular uma política de autenticação de terceiros a uma API, chame a API referindo-se a Chamada das APIs.

Parâmetros de configuração
|
Parâmetro |
Descrição |
|---|---|
|
Load Balance Channel |
Se conectar um serviço de autenticação de terceiros usando um canal de balanceamento de carga.
|
|
Backend URL |
|
|
Host Header |
Defina esse parâmetro somente se um canal de balanceamento de carga for usado. Defina um cabeçalho de host para as solicitações a serem enviadas aos servidores de nuvem vinculados ao canal de balanceamento de carga. Por padrão, o cabeçalho do host original em cada solicitação é usado. |
|
Timeout (ms) |
Tempo limite do serviço de autenticação. Ele não pode exceder o tempo limite máximo do serviço de back-end. Visualize o limite de tempo limite na guia Parameters da página de detalhes do gateway. |
|
Brute Force Threshold |
Os endereços IP cujo número de tentativas de falha de autenticação de terceiros em 5 minutos exceder esse limite serão bloqueados. Eles serão desbloqueados após 5 minutos. Por exemplo, se um endereço IP falhou na autenticação de terceiros mais do que o limite configurado no terceiro minuto, o endereço é bloqueado e será desbloqueado após 2 minutos. |
|
Identity Sources |
Parâmetros a serem obtidos das solicitações originais da API para autenticação de terceiros. Máximo de 10 cabeçalhos e 10 cadeias de consulta. Se não for especificado, todos os cabeçalhos e cadeias de consulta nas solicitações originais serão usados. |
|
Relaxed Mode |
Quando esta opção está ativada, o APIG aceita solicitações do cliente mesmo quando seu serviço de autenticação não consegue se conectar ou retorna um código de erro começando com "5". |
|
Allow Original Request Body |
Quando essa opção está ativada, o corpo da solicitação original é incluído para autenticação. |
|
Request Body Size (bytes) |
Disponível somente quando Allow Original Request Body estiver ativado. O valor não pode exceder o tamanho máximo do corpo da solicitação do gateway. Visualize o limite de tamanho do corpo da solicitação na guia Parameters da página de detalhes do gateway. |
|
Allow Original Request Path |
Quando esta opção está ativada, o caminho de solicitação original é adicionado ao final do caminho de solicitação de autenticação. |
|
Return Response |
Quando esta opção está ativada, a resposta de autenticação é retornada em caso de falha. |
|
Allowed Response Headers |
Cabeçalhos para obter da resposta de autenticação e enviar para o serviço de back-end, quando a autenticação for bem-sucedida. Máximo de 10 cabeçalhos. |
|
Simple Authentication |
Quando esta opção está ativada, os códigos de status que começam com "2" indicam a autenticação bem-sucedida. |
|
Authentication Result |
Disponível somente quando Simple Authentication estiver desativado. As respostas cujos cabeçalhos contêm esses parâmetros com os mesmos valores indicam uma autenticação bem-sucedida. |
|
Blacklist/Whitelist |
Quando essa opção está ativada, se as solicitações de API exigem autenticação de terceiros depende das regras configuradas da lista negra ou da lista branca. |
|
Type |
|
|
Parameters |
Defina parâmetros para correspondência de regras.
|
|
Rules |
Defina as condições para correspondência de regras. Clique em Add Rule e edite o nome e as condições da regra. Na caixa de diálogo Condition Expressions, selecione um parâmetro e um operador e insira um valor.
|
Exemplo de script
{
"auth_request": {
"method": "GET",
"protocol": "HTTPS",
"url_domain": "192.168.10.10",
"timeout": 5000,
"path": "/",
"vpc_channel_enabled": false,
"vpc_channel_info": null
},
"custom_forbid_limit": 100,
"carry_body": {
"enabled": true,
"max_body_size": 1000
},
"auth_downgrade_enabled": true,
"carry_path_enabled": true,
"return_resp_body_enabled": false,
"carry_resp_headers": [],
"simple_auth_mode_enabled": true,
"match_auth": null,
"rule_enabled": false,
"rule_type": "allow"
}