Autenticação da API OIDC
As APIs da Equinix usam o protocolo OAuth 2.0 para autenticar as solicitações do seu usuário OIDC aos endpoints da API . Para interagir com as APIs da Equinix, você precisa de um token de acesso de portador.
Pré-requisitos
-
Um provedor OIDC.
-
Um token de identificação OIDC do seu provedor OIDC registrado.
-
Permissões específicas do produto ou serviço para especificar o escopo do token de acesso à API. Você precisa de:
ern:<access-policy-ern>onde<access-policy-ern>é uma política de acesso único que foi concedida ao principal.roleassignments:<org-id>onde<org-id>é o ID da organização onde o principal OIDC atribuiu funções.projectpolicies:<project-id>onde<project-id>é um ID de projeto onde o principal OIDC recebeu uma política de acesso ou políticas de acesso .orgpolicies:<org-id>onde<org-id>é um ID de organização onde o principal recebeu uma ou mais políticas de acesso .orgpolicies:<org-id> roleassignments:<org-id>onde<org-id>é um ID de organização onde o principal recebeu funções e políticas de acesso .
Para obter mais informações, consulte Escopos de controle de acesso.
Solicitando um Token de Acesso
Para solicitar um token de acesso de portador, envie uma solicitar POST para o endpoint /v1/token.
No corpo da solicitação, especifique:
grant_type- Useurn:ietf:params:oauth:grant-type:token-exchangepara receber um token de acesso .scope(obrigatório) - Forneça o escopo. As permissões concedidas pelo token são verificadas para determinar se o principal recebeu as funções ou políticas de acesso apropriadas. Para obter mais informações, consulte Escopos de controle de acesso.subject_token- O token de ID OIDC.subject_token_type- Useurn:ietf:params:oauth:token-type:id_tokenque identifica seusubject_tokencomo um token de ID OIDC.
Exemplo de solicitação cURL:
curl -X POST 'https://sts.eqix.equinix.com/v1/token' \
--data-urlencode 'grant_type=urn:ietf:params:oauth:grant-type:token-exchange' \
--data-urlencode 'subject_token_type=urn:ietf:params:oauth:token-type:id_token' \
--data-urlencode 'scope=<role_or_access_policy>' \
--data-urlencode 'subject_token=<oidc_id_token>'
Usando tokens de acesso
Para interagir com a API da Equinix, envie seu token de acesso no cabeçalho de Autorização da solicitar HTTP com Authorization: Bearer <token>.