Solução de problemas do escopo da REST API
Ações de solução de problemas podem ajudar a resolver problemas comuns durante a configuração ou execução do escopo da REST API.
| Problema | Ação |
|---|---|
| A REST API está vinculada ao escopo de autenticação. No entanto, no tempo de execução, não há verificação de escopo de autenticação mesmo usando a autenticação de token do portador. |
|
| A REST API está vinculada a auth_scope1, mas o token de acesso que tem auth_scope2 também pode acessá-la. |
|
| A REST API está vinculada ao escopo de autenticação. No entanto, no tempo de execução, não há verificação de escopo de autenticação para basicAuth e mutualAuth. | Isso é esperado, já que o escopo de autenticação da REST API se aplica somente ao token de acesso OAuth ou ao token OIDC. Ele não se aplica à BasicAuth, cookie de sessão e autenticação baseada em certificados. |
| A chamada de REST API retorna 403 ao usar o token de acesso OAuth. | Verifique a mensagem de erro "Escopo de acesso de API necessário ausente". Se encontrado, a verificação do escopo de autenticação falha para esta REST API |
A useraccount predefinida foi excluída e não há certeza de que será restaurada. |
Exporte useraccount como xml da outra instância e importe-a ou crie uma useraccount e modifique a propriedade do sistema glide.oauth.token.scope.useraccount para o registro "sys_id" recém-criado. |
Perguntas frequentes
A seguir estão algumas das perguntas frequentes ao usar o escopo de autenticação da REST API:
- Um mesmo token OAuth pode ser vinculado a vários escopos de autenticação?
- Sim, uma mesma
oauth_entitypode ser vinculada a vários escopos de autenticação. Cada token OAuth emitido por essaoauth_entitytem os mesmos escopos de autenticação. - Tokens OAuth diferentes com escopos de autenticação diferentes podem acessar a mesma REST API?
- Sim, a mesma REST API pode ser acessada por diferentes escopos de autenticação. Desde que um escopo de autenticação seja correspondido, o escopo de autenticação retornará os resultados.
- O token de acesso OAuth com escopo de autenticação
useraccountpode acessar REST APIs? - Sim,
useraccounttem acesso total ao escopo de autenticação. - O escopo de OAuth do token de acesso OAuth pode ser alterado dinamicamente?
- Sim, o escopo de autenticação não está codificado com o token de acesso na tabela
oauth_credential. Em vez disso, durante o tempo de execução o escopo de autenticação é obtido daoauth_entityvinculada. - O token OAuth pode manter os mesmos escopos de autenticação após a atualização?
- Sim, o escopo de autenticação não mudará após a atualização do token, a menos que o
oauth_adminmodifique o escopo de autenticação vinculado aoauth_entity. - O registro de escopo de autenticação
useraccountpredefinido foi excluído. Um novo escopo de autenticação com o nomeuseraccountpode ser criado? - Não é possível criar um novo escopo de autenticação com a mesma
useraccount. No tempo de execução, ele usa osys_idem vez do nome para fazer a verificação do escopo de autenticação. Modifique a propriedade do sistema glide.oauth.token.scope.useraccount para o registrosys_idrecém-criado. - Se o administrador modificar o escopo de autenticação vinculado a
oauth_entity, todos os tokens de acesso OAuth existentes emitidos por esta entidade OAuth também serão alterados? - Sim, o escopo de autenticação não está diretamente vinculado ao token de acesso OAuth. Ele é obtido da
oauth_entitydurante o tempo de execução. - Diferentes tokens de acesso OAuth emitidos pela mesma
oauth_entitypodem ter diferentes escopos de autenticação? - Não, todos os acessos ao token são emitidos pela mesma
oauth_entitye sempre têm os mesmos escopos de autenticação. - Um usuário pode definir diferentes escopos de autenticação para um endpoint específico?
- Não, há uma verificação de restrição exclusiva para um endpoint de REST API específico. No entanto, para o mesmo endpoint de REST API, ele pode ter mais de um escopo de autenticação correspondente.
- A verificação de escopo de autenticação também é usada para BasicAuth?
- Não, a verificação do escopo de autenticação é apenas para token de acesso OAuth e token OIDC, não é aplicado para basicAuth e mutualAuth