Exportar (0) Imprimir
Expandir Tudo

Amostra de código: ASP.NET Simple MVC 2

Publicado: abril de 2011

Atualizado: maio de 2011

Aplica-se a: Windows Azure

Essa amostra demonstra como integrar Windows Azure AppFabric Access Control Service (ACS) com um aplicativo ASP.NET MVC. O código para esta amostra está localizado na pasta ASPNETSimpleMVC do pacote Exemplos e documentação do Serviço Controle de Acesso (http://go.microsoft.com/fwlink/?LinkId=213167).

Pré-requisitos

Para executar esta amostra, será preciso:

  1. Uma conta na página Windows Azure (http://go.microsoft.com/fwlink/?LinkId=130560) e um Namespace de Serviço. esta amostra retoma um Namespace de serviço de acssamples, mas o seu Namespace de serviço particular será diferente.

  2. Visual Studio 2010 (qualquer versão)

  3. SDK do Windows Identity Foundation

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

Configurando a amostra

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

  1. Opção 1: Configurando a amostra usando o Portal de Gerenciamento do ACS

  2. Opção 2: Configurando a amostra usando o Serviço de Gerenciamento do ACS

Opção 1: Configurando a amostra usando o Portal de Gerenciamento do ACS

Para configurar a amostra usando o Portal de Gerenciamento do ACS

  1. Abra um navegador, vá para a página inicial do Windows Azure (http://go.microsoft.com/fwlink/?LinkId=130560) e conecte-se. Vá para a seção Barramento de Serviço, Controle de Acesso, Cache para configurar o seu namespace de serviço do ACS. Depois de ter criado um namespace, selecione-o e clique em Gerenciar > Serviço Controle de Acesso, localizado no topo da página. Esta ação abrirá a página em uma nova janela.

  2. Para estabelecer relações com os provedores de identidade que você gostaria que os usuários do seu site usassem para fazer login, clique no link Provedores de identidade e adicione Yahoo! e Google. Clique em Página inicial para retornar à página principal.

  3. Para registrar seu aplicativo com o ACS, clique no link Aplicativos de Terceira Parte Confiável, localizado na página principal, selecione Adicionar e insira as seguintes informações no formulário:

    • No campo Nome, insira ASPNET Simple MVC Sample.

    • No campo Realm, insira http://localhost:63000/

    • No campo URL de retorno, insira http://localhost:63000/

    • No campo URL de erro, insira http://localhost:63000/Error

    • No campo Formato do Token, selecione SAML 2.0.

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

  4. Clique em Salvar e vá para a página principal.

  5. Com a sua terceira parte confiável registrada agora é hora de criar as regras que determinam as declarações de que o ACS será emitido para o aplicativo. Nesta amostra, vamos simplesmente passar por todas as declarações emitidas pelo Provedor de identidade. Para criar esta regra, clique em Grupos de regras e depois em Grupo de regras padrão ASPNET Simple MVC Sample. Próximo à parte inferior da página seguinte, clique no link Gerar. Verifique se os três provedores de identidade (Yahoo!, Google e Windows Live ID) estão selecionados e clique em Gerar.

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

  7. Com o ACS configurado, abra Visual Studio.

Opção 2: Configurando a amostra usando o Serviço de Gerenciamento do ACS

A solução Visual Studio de exemplo contém um aplicativo de console chamado ConfigureSample que usa o Serviço de Gerenciamento do ACS e os auxiliares comuns definidos na biblioteca de classe Comum. Este aplicativo pode ser usado para configurar o namespace de serviço do ACS para uso com esta amostra.

Para configurar a amostra usando o Serviço de Gerenciamento do ACS

  1. Atualize a biblioteca de classes Comum com informações sobre o seu Namespace de serviço. Abra o SamplesConfiguration.cs e insira as seguintes informações:

    • ServiceNamespace - É o namespace usado com o ACS.

    • ManagementServiceIdentityName - É um nome de conta do serviço de gerenciamento

    • ManagementServiceIdentityKey - É a senha associada à conta do serviço de gerenciamento.

    • AcsHostUrl - É o nome de host do ACS

  2. Execute o aplicativo ConfigureSample em Visual Studio, que irá configurar o ACS para executar esta amostra.

Executando a amostra

Executar a amostra

  1. Abra a amostra localizada em Websites\ASPNETSimpleMVC\ASPNETSimpleMVC.sln em Visual Studio

  2. Pressione F5 para iniciar o aplicativo.

  3. Feche o navegador para parar o aplicativo e prosseguir com a configuração do ACS.

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

  5. Na caixa de diálogo, insira a raiz do aplicativo da Web no campo URI do aplicativo e clique em Avançar. Para esta amostra, este valor é http://localhost:63000/

    noteObservação
    A barra invertida é importante, pois alinha com os valores inseridos no ACS para sua terceira parte confiável. O assistente emitirá um aviso de que o site não está usando SSL. Aceite este aviso, clicando no botão Sim, mas lembre-se de que um site de produção deve sempre usar SSL para esses cenários.

  6. Na janela seguinte, selecione o botão de opção Usar o STS existente e insira a URI dos metadados Web Services Federation publicada pelo Namespace de serviço do ACS. Essa URI pode ser encontrada no portal em Integração do aplicativo. Se o seu Namespace de serviço for acssamples, a URI será https://acssamples.accesscontrol.windows.net/FederationMetadata/2007-06/FederationMetadata.xml. Depois de ter inserido este valor, clique em Avançar.

  7. Como o seu site não precisa de tokens criptografados, clique em Avançar e em Concluir.

  8. ACS, e agora o seu aplicativo está configurado. Pressione F5 em Visual Studio para executar o aplicativo. O navegador será direcionado para a página hospedada Home Realm Discovery do ACS.

  9. Clique em Google. O navegador será redirecionado para uma página de autenticação do Google.

  10. Insira as credenciais para uma conta do Google e decline o termo de consentimento do usuário.

  11. O navegador deverá retornar para http://localhost:63000/Error e exibir uma cadeia de erro personalizada, indicando que o login no site foi cancelado.

  12. Clique no link para tentar novamente e em um provedor de identidade novamente.

  13. Quando o navegador estiver no provedor de identidade, insira as credenciais para uma conta de teste como antes, mas desta vez aceite o termo de consentimento do usuário.

  14. O navegador deverá retornar para http://localhost:63000/. Observe que o nome de identidade de teste aparece no canto superior direito da página. Estes dados foram emitidos pelo provedor de identidade e foram devolvidos ao aplicativo pelo ACS.

Mostrar:
© 2014 Microsoft