Proteger o aplicativo do Serviço de Aplicativo

Concluído

O Serviço de Aplicativo do Azure fornece suporte interno para a autenticação e autorização. Você pode conectar usuário e acessar dados escrevendo pouco ou nenhum código em seu aplicativo Web, API ou back-end móvel, bem como seus aplicativos do Azure Functions.

A autenticação e autorização seguras exigem um profundo entendimento de segurança, incluindo federação, criptografia, gerenciamento JWT (Token Web JSON), tipos de concessão, e assim por diante. O Serviço de Aplicativo disponibiliza esses utilitários para que você possa investir mais tempo e energia no fornecimento de valor comercial ao seu cliente.

Observação

Você não precisa usar o Serviço de Aplicativo do Azure para autenticação e autorização. Muitas estruturas da Web são agrupadas com recursos de segurança e você pode usar o serviço de sua preferência.

O que saber sobre a segurança do aplicativo com o Serviço de Aplicativo

Vamos ver com mais detalhes como o Serviço de Aplicativo ajuda você a fornecer segurança para o aplicativo.

  • O módulo de segurança de autenticação e autorização no Serviço de Aplicativo do Azure é executado no mesmo ambiente que o código do aplicativo, mas separadamente.

  • O módulo de segurança é configurado usando as configurações do aplicativo. Não há necessidade de SDKs, idiomas específicos ou alterações no código do aplicativo.

  • Quando você habilita o módulo de segurança, cada solicitação HTTP de entrada passa pelo módulo antes de ser tratada pelo código do aplicativo.

  • O módulo de segurança cuida de várias tarefas para o aplicativo:

    • Autenticar os usuários com o provedor especificado
    • Validar, armazenar e atualizar tokens
    • Gerenciar a sessão autenticada
    • Injetar informações de identidade nos cabeçalhos de solicitação

Coisas a serem consideradas ao usar o Serviço de Aplicativo para segurança do aplicativo

Configure a segurança de autenticação e autorização no Serviço de Aplicativo selecionando recursos no portal do Azure. Examine as opções a seguir e pense em qual segurança pode beneficiar sua implementação de aplicativos do Serviço de Aplicativo.

  • Permitir solicitações anônimas (nenhuma ação). Adiar a autorização de tráfego não autenticado para o código do aplicativo. Para solicitações autenticadas, o Serviço de Aplicativo também passa informações de autenticação nos cabeçalhos HTTP. Esse recurso oferece mais flexibilidade para lidar com solicitações anônimas. Com esse recurso, você pode apresentar vários provedores de entrada para seus usuários.

  • Permitir apenas solicitações autenticadas. Redirecione todas as solicitações anônimas para /.auth/login/<provider> do provedor escolhido. O recurso é equivalente a Fazer logon com o <provedor>. Se a solicitação anônima se originar de um aplicativo móvel nativo, a resposta retornada será uma mensagem HTTP 401 Unauthorized. Com esse recurso, você não precisa escrever nenhum código de autenticação no aplicativo.

    Importante

    Esse recurso restringe o acesso a todas as chamadas para o aplicativo. Restringir o acesso a todas as chamadas poderá não ser desejável se o aplicativo exigir uma home page pública, como é o caso de muitos aplicativos de página única.

  • Registro em log e rastreamento. Veja rastreamentos de autenticação e autorização diretamente em seus arquivos de log. Se você visualizar um erro de autenticação que não esperava, será possível localizar convenientemente todos os detalhes examinando os logs do aplicativo existente. Se você habilitar o rastreamento de solicitação com falha, poderá ver exatamente como o módulo de segurança participou de uma solicitação com falha. Nos logs de rastreamento, procure referências para um módulo nomeado EasyAuthModule_32/64.