Compartilhar via


Exemplo de código: formulários simples do ASP.NET

Atualizado em: 19 de junho de 2015

Aplica-se ao Azure

Este exemplo ilustra como integrar o ACS a um aplicativo ASP.NET Web Forms. O código para este exemplo está localizado no subdiretório ASPNETSimpleForms (C#\Websites/ASPNETSimpleForms) do pacote de exemplos de código acs (Microsoft Azure Active Directory Controle de Acesso).

Pré-requisitos

Para executar esta amostra, você precisará do seguinte:

  1. Uma conta no portal do Azure e um namespace Controle de Acesso.

  2. Visual Studio 2010 (qualquer versão)

  3. Windows Identity Foundation SDK

Para obter mais detalhes, consulte os pré-requisitos do ACS (https://go.microsoft.com/fwlink/?LinkId=221065).

Configurando o exemplo

A configuração do ACS necessária para este exemplo pode ser executada usando o Portal de Gerenciamento do ACS ou o Serviço de Gerenciamento do ACS. Este tópico descreve duas opções.

  1. Opção 1: Configurar o exemplo usando o Portal de Gerenciamento do ACS

  2. Opção 2: Configurar o exemplo usando o Serviço de Gerenciamento do ACS

Opção 1: Configurar o exemplo usando o portal de gerenciamento do ACS

Para configurar o exemplo usando o Portal de Gerenciamento do ACS

  1. Vá para o Portal de Gerenciamento do Microsoft Azure (https://manage.WindowsAzure.com), entre e clique em Active Directory. (Dica de solução de problemas: o item "Active Directory" está ausente ou não está disponível)

  2. Para criar um namespace do Access Control clique em Novo, clique em Serviços de Aplicativo, clique em Access Control, e depois em Criação Rápida. (Or, clique em Namespaces do Access Control antes de clicar em Novo.)

  3. Para gerenciar um namespace do Access Control, selecione o namespace e clique em Gerenciar. (Or, clique em Namespaces do Access Control, selecione o namespace e clique em Gerenciar.)

    Essa ação abre o portal de gerenciamento do Serviço de Controle de Acesso.

  4. Para estabelecer as relações com os provedores de identidade que os usuários do seu site devem usar quando fizerem logon, clique em Provedores de identidade e adicione Yahoo! e Google. Em seguida, clique em Início para retornar à página inicial.

  5. Para registrar seu aplicativo no ACS, clique em Aplicativos de Terceira Parte Confiável, clique em Adicionar e insira as seguintes informações no formulário:

    • No campo Nome, digite Exemplo de Formulários Simples ASPNET.

    • No campo Realm , insira https://localhost:62000/

    • No campo URL de Retorno , insira https://localhost:62000/

    • Selecione SAML 2.0 na caixa de lista suspensa Formato do token.

    • Na seção Provedores de identidade, selecione Google, Windows Live ID e Yahoo!

    • No campo Autenticação de token, selecione Utilizar certificado do namespace de serviço (padrão).

    • Deixe os valores dos outros campos com suas definições padrão.

  6. Clique em Salvar e navegue para a página principal.

  7. Com seu aplicativo de terceira parte confiável registrado, agora é hora de criar as regras que determinam as declarações que o ACS emitirá ao seu aplicativo. Neste exemplo, passaremos por todas as declarações emitidas pelo provedor de identidade. Para criar essa regra, clique em Grupos de Regras e em Grupo de Regras Padrão para Exemplo de Formulários Simples ASPNET. Na parte inferior da página, clique no link Gerar. Verifique se os três provedores de identidade Yahoo!, Google e estão selecionados e clique em Gerar. Por fim, clique em Salvar e navegue para a página principal.

  8. Com o ACS configurado, abra Visual Studio.

Opção 2: Configurar o exemplo usando o serviço de gerenciamento do ACS

Para configurar o exemplo usando o Serviço de Gerenciamento do ACS

  1. Para configurar o exemplo, abra o arquivo SamplesConfiguration.cs (acs\Management\ManagementService\Common). Substitua os espaços reservados na classe SamplesConfiguration na biblioteca de classes Comuns por informações sobre seu namespace Controle de Acesso. Você pode encontrar as informações no Portal de Gerenciamento do ACS.

    Para navegar até o Portal de Gerenciamento do ACS: acesse o Portal de Gerenciamento de Microsoft Azure (https://manage.WindowsAzure.com), entre e clique em Active Directory. (Dica de solução de problemas: o item "Active Directory" está ausente ou não está disponível) Para gerenciar um namespace Controle de Acesso, selecione o namespace e clique em Gerenciar. (Or, clique em Namespaces do Access Control, selecione o namespace e clique em Gerenciar.)

    • ServiceNamespace – insira o nome do namespace Controle de Acesso.

    • ManagementServiceIdentityName – insira o nome de uma conta de serviço de gerenciamento do ACS. O padrão é ManagementClient.

      Para localizar o nome da conta de serviço de gerenciamento, no Portal de Gerenciamento do ACS, clique em Serviço de Gerenciamento. As contas são listadas por nome em Contas do serviço de gerenciamento.

    • ManagementServiceIdentityKey - Insira a senha da conta do serviço de gerenciamento.

      Para localizar a senha da conta de serviço de gerenciamento, no Portal de Gerenciamento do ACS, clique em Serviço de Gerenciamento. Clique no nome de uma conta do serviço de gerenciamento e, em Credenciais, clique em Senha. A senha é exibida no campo Senha. Para copiar a senha, clique em Mostrar senha.

  2. Execute o aplicativo ConfigureSample no Visual Studio, que configurará o ACS para executar este exemplo.

Executando o exemplo

Para executar a amostra

  1. Abra o exemplo localizado em Websites\ASPNETSimpleForms\ASPNETSimpleForms.sln em Visual Studio.

  2. Pressione F5 para iniciar o aplicativo.

  3. Feche o navegador para parar o aplicativo.

  4. Clique com o botão direito do mouse no projeto e selecione Adicionar Referência de STS no menu contextual.

  5. Na caixa de diálogo, insira a raiz do aplicativo Web no campo URI do aplicativo e clique em Avançar. Para este exemplo, esse valor é https://localhost:62000/

    Observação

    A barra à direita é importante, pois se alinha com os valores inseridos no ACS para sua terceira parte confiável. O assistente enviará um aviso de que seu site não está utilizando o protocolo SSL. Aceite este aviso clicando no botão Sim, mas lembre-se de que um site de produção deve usar SSL para esses tipos de cenário.

  6. Na próxima janela, selecione o botão usar o opção STS existente e insira o URI dos metadados WS-Federation publicados pelo namespace Controle de Acesso. Esse URI pode ser encontrado no portal em Integração de Aplicativo. Se o namespace Controle de Acesso for acssamples, o URI será https://acssamples. accesscontrol.windows.net/FederationMetadata/2007-06/FederationMetadata.xml. Depois de inserir o valor, clique em Avançar.

  7. Como seu site não exige tokens criptografados. clique em Avançar nas caixas de diálogo restantes e depois clique em Concluir.

  8. O ACS e seu aplicativo agora estão configurados. Pressione F5 em Visual Studio para executar o aplicativo. Seu navegador será levado para a página descoberta de realm inicial hospedada pelo ACS.

  9. Clique em Yahoo! ou em Google e seu navegador direcionará você para esse provedor de identidade.

  10. Quando o navegador estiver no provedor de identidade, digite as credenciais de uma conta de teste e aceite o formulário de consentimento do usuário.

  11. Seu navegador deve voltar para https://localhost:62000/. Observe que o nome de sua identidade de teste é exibido na parte superior direita da página. Esses dados foram emitidos pelo provedor de identidade e retornados ao aplicativo por meio do ACS.