Partilhar via


Aplicativos de terceira parte confiável

Atualizado: June 19, 2015

Aplica-se a: Azure

Um aplicativo de terceira parte confiável (também conhecido como aplicativo com reconhecimento de declarações ou aplicativo baseado em declarações) é um aplicativo ou serviço que depende de declarações para autenticação. No Controle de Acesso do Ative Directory do Microsoft Azure (também conhecido como Serviço de Controle de Acesso ou ACS), um aplicativo de terceira parte confiável é um site, um aplicativo ou um serviço que usa o ACS para implementar a autenticação federada.

Você pode criar e configurar aplicativos de terceira parte confiável manualmente, usando o Portal de Gerenciamento ACS, ou programaticamente, usando o Serviço de Gerenciamento ACS.

No Portal de Gerenciamento ACS, o aplicativo de terceira parte confiável que você adiciona e configura é uma representação lógica do seu site, aplicativo ou serviço que confia em um namespace de Controle de Acesso específico. Você pode adicionar e configurar muitos aplicativos de terceira parte confiável em cada namespace do Controle de Acesso.

Configurando no Portal de Gerenciamento ACS

Você pode usar o Portal de Gerenciamento ACS para configurar as seguintes propriedades de um aplicativo de terceira parte confiável:

  • Modo

  • URL de realm e retorno

  • URL de erro (opcional)

  • Formato do token

  • Política de criptografia de token

  • Duração do Token

  • Fornecedores de Identidade

  • Grupos de regras

  • Assinatura de token

  • Criptografia de token

Modo

A propriedade Mode determina se você define as configurações do aplicativo de terceira parte confiável manualmente ou se especifica um WS-Federation documento de metadados que define as configurações do aplicativo.

Um documento de metadados WS-Federation normalmente contém o território e a URL de retorno de um aplicativo. Ele também pode incluir um certificado de criptografia opcional que é usado para criptografar os tokens que o ACS emite para o aplicativo. Se um documento WS-Federation for especificado e os metadados contiverem um certificado de criptografia, a configuração Política de Criptografia de Token assumirá como padrão Exigir Criptografia. Se o valor da configuração da Diretiva de Criptografia de Token for Exigir Criptografia, mas o documento de metadados WS-Federation não incluir um certificado de criptografia, você deverá carregar um certificado de criptografia manualmente.

Se seu aplicativo de terceira parte confiável estiver integrado ao Windows Identity Foundation (WIF), o WIF criará automaticamente um documento de metadados WS-Federation para seu aplicativo.

URL de realm e retorno

A propriedade Realm define o URI no qual os tokens emitidos pelo ACS são válidos. A URL de retorno (também conhecida como endereço ReplyTo) define a URL para a qual os tokens emitidos pelo ACS são enviados. Quando um token é solicitado para acesso ao aplicativo de terceira parte confiável, o ACS emite o token somente quando o realm na solicitação de token corresponde ao realm do aplicativo de terceira parte confiável.

Importante

No ACS, os valores de realm diferenciam maiúsculas de minúsculas.

No Portal de Gerenciamento ACS, você pode configurar apenas um território e uma URL de retorno em cada namespace do Controle de Acesso. No caso mais simples, o realm e o URL de retorno são idênticos. Por exemplo, se o URI raiz do seu aplicativo for https://contoso.com, a URL de Realm e Return do aplicativo de terceira parte confiável será https://contoso.com.

Para configurar mais de uma URL de retorno (endereço ReplyTo) para um aplicativo de terceira parte confiável, use a entidade RelyingPartyAddress no Serviço de Gerenciamento ACS.

Quando um token é solicitado ao ACS ou um token é postado no ACS de um provedor de identidade, o ACS compara o valor de realm na solicitação de token com os valores de realm para os aplicativos de terceira parte confiável. Se a solicitação de token usar WS-Federation protocolo, o ACS usará o valor realm está no parâmetro wtrealm . Se o token usa o protocolo OAuth WRAP, o ACS usa o valor realm no parâmetro applies_to. Se o ACS encontrar um realm correspondente nas definições de configuração de um aplicativo de terceira parte confiável, ele criará um token que autenticará o usuário no aplicativo de terceira parte confiável e enviará o token para a URL de retorno.

O processo é semelhante quando a terceira parte confiável tem mais de uma URL de retorno. O ACS obtém a URL de redirecionamento do parâmetro wreply . Se a URL de redirecionamento for uma das URLs de retorno para o aplicativo de terceira parte confiável, o ACS enviará a resposta para essa URL.

Os valores de domínio diferenciam maiúsculas de minúsculas. O token é emitido somente se os valores de realm forem idênticos ou se o valor de realm para o aplicativo de terceira parte confiável for um prefixo do realm na solicitação de token. Por exemplo, o valor de realm do aplicativo de terceira parte confiável corresponde a um valor de realm de solicitação de http://www.fabrikam.com token de http://www.fabrikam.com/billing, mas não corresponde a um realm de solicitação de token v de https://fabrikam.com.

URL de erro (opcional)

A URL de erro especifica uma URL para a qual o ACS redireciona os usuários se ocorrer um erro durante o processo de login. É uma propriedade opcional do aplicativo de terceira parte confiável.

O valor da URL de erro pode ser uma página personalizada hospedada pelo aplicativo de terceira parte confiável, como http://www.fabrikam.com/billing/error.aspx. Como parte do redirecionamento, o ACS fornece detalhes sobre o erro para o aplicativo de terceira parte confiável como um parâmetro de URL HTTP codificado em JSON. A página de erro personalizada pode ser criada para interpretar as informações de erro codificadas em JSON, para renderizar a mensagem de erro real e/ou para exibir texto de ajuda estático.

Para obter mais informações sobre o uso da URL de erro, consulte Exemplo de código: ASP.NET MVC simples 2.

Formato do token

A propriedade Token format determina o formato dos tokens que o ACS emite para o aplicativo de terceira parte confiável. O ACS pode emitir tokens SAML 2.0, SAML 1.1, SWT ou JWT. Para obter mais informações sobre formatos de token, consulte Formatos de token suportados no ACS.

O ACS usa protocolos padrão para retornar os tokens a um aplicativo ou serviço Web. Quando há suporte para mais de um protocolo para um formato de token, o ACS usa o mesmo protocolo que foi usado para a solicitação de token. O ACS suporta as seguintes combinações de formato/protocolo de token:

  • O ACS pode retornar tokens SAML 2.0 usando protocolos WS-Trust e WS-Federation.

  • O ACS pode retornar tokens SAML 1.1 usando WS-Federation e protocolos WS-Trust relacionados.

  • O ACS pode retornar tokens SWT usando os protocolos WS-Federation, WS-Trust, OAuth-WRAP e OAuth 2.0.

  • O ACS pode emitir e retornar tokens JWT usando os protocolos WS-Federation, WS-Trust e OAuth 2.0.

Para obter mais informações sobre protocolos padrão usados pelo ACS, consulte Protocolos suportados no ACS.

Ao escolher um formato de token, considere como seu namespace do Controle de Acesso assina os tokens que ele emite. Todos os tokens emitidos pelo ACS devem ser assinados. Para obter mais informações, consulte Assinatura de token.

Além disso, considere se deseja que os tokens sejam criptografados. Para obter mais informações, consulte Política de criptografia de token.

Política de criptografia de token

A política de criptografia de token determina se os tokens que o ACS emite para o aplicativo de terceira parte confiável são criptografados. Para exigir criptografia, selecione o valor Exigir criptografia .

No ACS, você pode configurar uma política de criptografia apenas para tokens SAML 2.0 ou SAML 1.1. O ACS não oferece suporte à criptografia dos tokens SWT ou JWT.

O ACS criptografa tokens SAML 2.0 e SAML 1.1 usando um certificado X.509 contendo um arquivo de chave pública (.cer). Esses tokens criptografados são então descriptografados usando uma chave privada possuída pelo aplicativo de terceira parte confiável. Para obter mais informações sobre como obter e usar certificados de criptografia, consulte Certificados e chaves.

A configuração de uma política de criptografia em seus tokens emitidos pelo ACS é opcional. No entanto, uma política de criptografia deve ser configurada quando seu aplicativo de terceira parte confiável é um serviço Web que está usando tokens de prova de posse sobre o protocolo WS-Trust. Este cenário específico não funciona corretamente sem tokens criptografados.

Duração do Token

A propriedade Token lifetime especifica o intervalo de tempo (em segundos) durante o qual o token de segurança que o ACS emite para o aplicativo de terceira parte confiável é válido. O valor padrão é 600 (10 minutos). No ACS, o valor do tempo de vida do token deve estar entre zero (0) e 86400 (24 horas), inclusive.

Fornecedores de Identidade

A propriedade Provedores de identidade especifica os provedores de identidade que podem enviar declarações para o aplicativo de terceira parte confiável. Esses provedores de identidade aparecem na página de login do ACS para seu aplicativo ou serviço Web. Todos os provedores de identidade configurados na seção Provedores de identidade do portal ACS aparecem na lista de provedores de identidade. Para adicionar um provedor de identificação à lista, clique em Provedores de identidade.

Cada aplicativo de terceira parte confiável pode ser associado a zero ou mais provedores de identidade. Os aplicativos de terceira parte confiável em um namespace de Controle de Acesso podem ser associados ao mesmo provedor de identidade ou a provedores de identidade diferentes. Se você não selecionar nenhum provedor de identidade para um aplicativo de terceira parte confiável, deverá configurar uma autenticação direta com o ACS para o aplicativo de terceira parte confiável. Por exemplo, você pode usar identidades de serviço para configurar uma autenticação direta. Para obter mais informações, consulte Identidades de serviço.

Grupos de regras

A propriedade Rule groups determina quais regras o aplicativo de terceira parte confiável usa ao processar declarações.

Cada aplicativo de terceira parte confiável do ACS deve estar associado a pelo menos um grupo de regras. Se uma solicitação de token corresponder a um aplicativo de terceira parte confiável que não tenha grupos de regras, o ACS não emitirá um token para o aplicativo ou serviço Web.

Todos os grupos de regras configurados na seção Grupos de regras do portal ACS aparecem na lista de grupos de regras. Para adicionar um grupo de regras à lista, clique em Grupos de regras.

Quando você adiciona um novo aplicativo de terceira parte confiável no Portal de Gerenciamento ACS, a opção Criar Novo Grupo de Regras é selecionada por padrão. É altamente recomendável que você crie um novo grupo de regras para seu novo aplicativo de terceira parte confiável. No entanto, você pode associar seu aplicativo de terceira parte confiável a um grupo de regras existente. Para fazer isso, desmarque a opção Criar novo grupo de regras e selecione o grupo de regras desejado.

Você pode associar um aplicativo de terceira parte confiável a mais de um grupo de regras (e associar um grupo de regras a mais de um aplicativo de terceira parte confiável). Se um aplicativo de terceira parte confiável estiver associado a mais de um grupo de regras, o ACS avaliará recursivamente as regras em todos os grupos de regras como se fossem regras em um único grupo de regras.

Para obter mais informações sobre regras e grupos de regras, consulte Grupos de regras e regras.

Assinatura de token

A propriedade Configurações de assinatura de token especifica como os tokens de segurança emitidos pelo ACS são assinados. Todos os tokens emitidos pelo ACS devem ser assinados.

As opções de assinatura de token disponíveis dependem do Formato de Token do aplicativo de terceira parte confiável. (Para obter mais informações sobre formatos de token, consulte Formato de token.)

  • Tokens SAML: use um certificado X.509 para assinar tokens.

  • Tokens SWT: use uma chave simétrica para assinar tokens.

  • Tokens JWT: use um certificado X.509 ou uma chave simétrica para assinar tokens.

X.509 Opções de certificado. As opções a seguir estão disponíveis para tokens assinados com um certificado X.509.

  • Usar certificado de namespace de serviço (padrão)—Se você selecionar essa opção, o ACS usará o certificado para o namespace do Controle de Acesso para assinar tokens SAML 1.1 e SAML 2.0 para o aplicativo de terceira parte confiável. Use essa opção se você planeja automatizar a configuração de seu aplicativo ou serviço Web usando metadados WS-Federation, porque a chave pública do namespace é publicada nos metadados WS-Federation para seu namespace do Controle de Acesso. A URL do documento de metadados WS-Federation aparece na página Integração de aplicativos do Portal de Gerenciamento ACS.

  • Usar certificado dedicado—Se você selecionar essa opção, o ACS usará um certificado específico do aplicativo para assinar tokens SAML 1.1 e SAML 2.0 para o aplicativo de terceira parte confiável. O certificado não é usado para outros aplicativos de terceira parte confiável. Depois de selecionar esta opção, procure um certificado X.509 com uma chave privada (ficheiro .pfx) e, em seguida, introduza a palavra-passe para o ficheiro .pfx.

Observação

Tokens JWT. Quando você configura um aplicativo de terceira parte confiável para usar o certificado X.509 para o namespace do Controle de Acesso para assinar tokens JWT para um aplicativo de terceira parte confiável, os links para o certificado de namespace do Controle de Acesso e a chave do namespace do Controle de Acesso aparecem na página do aplicativo de terceira parte confiável no Portal de Gerenciamento ACS. No entanto, o ACS usa apenas o certificado de namespace para assinar tokens para o aplicativo de terceira parte confiável.

Namespaces gerenciados. Ao adicionar um aplicativo de terceira parte confiável a um namespace gerenciado, como um namespace do Service Bus, não insira certificados ou chaves específicos do aplicativo (dedicado). Em vez disso, selecione as opções que direcionam o ACS para usar os certificados e chaves configurados para todos os aplicativos no namespace gerenciado. Para obter mais informações, consulte Namespaces gerenciados

Para obter mais informações sobre certificados e chaves compartilhados e dedicados, consulte Certificados e chaves.

Opções de chave simétrica

Como prática recomendada de segurança, ao usar chaves simétricas, crie uma chave dedicada para cada aplicativo de terceira parte confiável, em vez de usar a chave simétrica compartilhada para o namespace do Controle de Acesso. Se você inserir ou gerar uma chave dedicada, o ACS usará uma chave dedicada para assinar tokens para o aplicativo de terceira parte confiável, desde que a chave dedicada seja válida. No entanto, se a chave dedicada expirar e não for substituída, o ACS usará a chave de namespace compartilhada para assinar tokens para o aplicativo de terceira parte confiável.

Se você optar por usar a chave simétrica compartilhada, copie os valores para a chave de Namespace de Serviço da página Certificados e chaves e cole-os nos campos na seção Assinatura de Token da página Aplicativos de terceira parte confiável .

As opções a seguir estão disponíveis para tokens assinados com chaves simétricas.

  • Chave de assinatura de token—Insira uma chave simétrica de 256 bits ou clique em Gerar para gerar uma chave simétrica de 256 bits.

  • Data efetiva—Especifica a data de início do intervalo de datas durante o qual a chave simétrica é válida. A partir dessa data, o ACS usa a chave simétrica para assinar tokens para o aplicativo de terceira parte confiável. O valor padrão do ACS é a data atual.

  • Data de validade— Especifica a data final do intervalo de datas durante o qual a chave simétrica é válida. A partir dessa data, o ACS não usa a chave simétrica para assinar tokens para o aplicativo de terceira parte confiável. Não há nenhum valor padrão. Como prática recomendada de segurança, as chaves simétricas devem ser substituídas a cada ano ou a cada dois anos, dependendo dos requisitos do aplicativo.

Criptografia de token

A opção de certificado de criptografia de token especifica o certificado X.509 (arquivo .cer) usado para criptografar tokens para o aplicativo de terceira parte confiável. No ACS, você pode criptografar apenas tokens SAML 2.0 ou SAML 1.1. O ACS não suporta criptografia de tokens SWT ou JWT.

Você especifica certificados para criptografia de token na seção Certificados e chaves do portal ACS. Quando você clica no link Clique aqui na seção Política de Criptografia de Token da página Aplicativo de terceira parte confiável, a página Adicionar Certificado de Criptografia de Token de Certificados e Chaves é aberta. Use esta página para especificar um arquivo de certificado.

Para obter mais informações, consulte Política de criptografia de token. Para obter mais informações sobre como obter e adicionar certificados de criptografia, consulte Certificados e chaves.

Ver também

Conceitos

Componentes do ACS 2.0