

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# O endpoint de declaração SAML do IdP
<a name="saml2-idpresponse-endpoint"></a>

O `/saml2/idpresponse` recebe declarações de SAML. No login service-provider-initiated (iniciado pelo SP), seu aplicativo não interage diretamente com esse endpoint — seu provedor de identidade (IdP) do SAML 2.0 redireciona seu usuário aqui com a resposta do SAML. Para login iniciado pelo SP, configure seu IdP com o caminho para `saml2/idpresponse` como URL do serviço de consumidor de declaração (ACS). Para obter mais informações sobre o início da sessão, consulte [Iniciação de sessão SAML em grupos de usuários do Amazon Cognito](cognito-user-pools-SAML-session-initiation.md).

No login iniciado pelo IdP, invoque solicitações para esse endpoint em sua aplicação depois de fazer login como usuário com seu provedor SAML 2.0. Seus usuários fazem login com seu IdP no navegador e, em seguida, a aplicação coleta a declaração SAML e a envia para esse endpoint. Você deve enviar declarações SAML no corpo de uma solicitação `HTTP POST` por HTTPS. O corpo da sua solicitação `POST` deve ser um parâmetro `SAMLResponse` e um parâmetro `Relaystate`. Para obter mais informações, consulte [Implementar o login SAML iniciado pelo IdP](cognito-user-pools-SAML-session-initiation.md#cognito-user-pools-SAML-session-initiation-idp-initiation).

O endpoint `saml2/idpresponse` pode aceitar declarações SAML de até 100.000 caracteres.

## POST `/saml2/idpresponse`
<a name="saml2-idpresponse-endpoint-post"></a>

Para usar o endpoint `/saml2/idpresponse` em um login iniciado por IdP, gere uma solicitação POST com parâmetros que forneçam ao seu grupo de usuários os detalhes da sessão do usuário.
+ O cliente da aplicação no qual ele deseja fazer login.
+ O URL de retorno de chamada ao qual ele deseja chegar.
+ Os escopos OAuth 2.0 que eles desejam solicitar no token de acesso do seu usuário.
+ O IdP que iniciou a solicitação de login.

### Parâmetros do corpo da solicitação iniciados pelo IdP
<a name="saml2-idpresponse-endpoint-post-request"></a>

*SAMLResponse*  
Uma declaração SAML codificada em Base64 de um IdP associado a um cliente de aplicação válido e a uma configuração de IdP em seu grupo de usuários.

*RelayState*  
Um parâmetro `RelayState` contém os parâmetros de solicitação que, de outra forma, você passaria para o endpoint `oauth2/authorize`. Para mais informações sobre esses parâmetros, consulte [Autorizar endpoint](authorization-endpoint.md).    
*response\_type*  
O tipo de subsídio OAuth 2.0.  
*client\_id*  
O ID do cliente do aplicativo  
*redirect\_uri*  
O URL para o qual o servidor de autenticação redireciona o navegador depois que o Amazon Cognito autoriza o usuário.  
*identity\_provider*  
O nome do provedor de identidades para o qual você deseja redirecionar o usuário.  
*idp\_identifier*  
O identificador do provedor de identidades para o qual você deseja redirecionar o usuário.  
*scope*  
Os escopos OAuth 2.0 que você deseja que seu usuário solicite do servidor de autorização.

### Exemplos de solicitações com respostas positivas
<a name="saml2-idpresponse-endpoint-post-example"></a>

**Exemplo - solicitação POST**  
A solicitação a seguir é para uma concessão de código de autorização para um usuário do IdP `MySAMLIdP` no cliente de aplicação `1example23456789`. O usuário redireciona para `https://www.example.com` com seu código de autorização, que pode ser trocado por tokens que incluem um token de acesso com os escopos OAuth `openid` 2.0, e. `email` `phone`

```
POST /saml2/idpresponse HTTP/1.1
User-Agent: {{USER_AGENT}}
Accept: */*
Host: {{example.auth.us-east-1.amazoncognito.com}}
Content-Type: application/x-www-form-urlencoded

SAMLResponse={{[Base64-encoded SAML assertion]}}&RelayState=identity_provider%3D{{MySAMLIdP}}%26client_id%3D{{1example23456789}}%26redirect_uri%3D{{https%3A%2F%2Fwww.example.com}}%26response_type%3D{{code}}%26scope%3D{{email%2Bopenid%2Bphone}}
```

**Exemplo - resposta**  
Veja a seguir um exemplo de resposta para a solicitação anterior.

```
HTTP/1.1 302 Found
Date: Wed, 06 Dec 2023 00:15:29 GMT
Content-Length: 0
x-amz-cognito-request-id: 8aba6eb5-fb54-4bc6-9368-c3878434f0fb
Location: {{https://www.example.com}}?code={{[Authorization code]}}
```