1
resposta

Projeto completo publicado no Azure não autentica o usuário

Olá Prezados,

Com o projeto do Screensound concluído e executando a autentificação do usuário perfeitamente a partir da solução local (via Visual Studio) resolvi implementar os passos para a publicação nas nuvens (Azure) como descrito no curso anterior (.NET: desenvolvendo uma aplicação web com ASP.NET Core Blazor). Executando a API separadamente (a partir do endereço da Azure) a mesma funciona perfeitamente e interage com o banco de dados sem problema. Porém estou me deparando com um problema na autentificação do usuário quando executo a aplicação Web a partir do endereço da Azure. Aparentemente, a aplicação Web está consumindo a API mas o vinculo com alguma biblioteca, pacote, ou algo semelhante está bloqueando a consulta ao banco de dados, a tela abaixo mostra a tentativa de login com as respectivas mensagens de erro gerada no console. Insira aqui a descrição dessa imagem para ajudar na acessibilidadeAlguma sugestão para a solução? Percebi que após vários testes esta funcionalidade de autentificação de usuários está exigindo alguma abordagem diferente à aquela apresentada no curso anterior (quando não havia autentificações).

Atenciosamente

Caio Holanda

1 resposta

Olá Caio.

Tudo bem?

Pelo que você descreveu e pela imagem fornecida, parece que você está enfrentando um problema de autenticação após a publicação da sua aplicação no Azure. A mensagem de erro "Authorization failed. These requirements were not met: DenyAnonymousAuthorizationRequirement: Requires an authenticated user." sugere que a aplicação está exigindo autenticação, mas o processo não está sendo completado com sucesso.

Aqui estão algumas sugestões que podem ajudar a resolver o problema:

  1. Revisão das Configurações de Autenticação e Autorização no Azure: Verifique se as configurações de autenticação e autorização no portal do Azure estão corretas e se correspondem às configurações que você tem localmente. Isso inclui a revisão das configurações do App Service e quaisquer políticas de autenticação que você possa ter configurado.

  2. CORS (Cross-Origin Resource Sharing): Se a sua API e aplicação web estão hospedadas em domínios diferentes, você precisará garantir que as configurações de CORS estejam permitindo que sua aplicação web acesse sua API. Verifique se o domínio da sua aplicação web está na lista de permissões da API.

  3. Strings de Conexão e Configurações de Ambiente: Certifique-se de que todas as strings de conexão e variáveis de ambiente necessárias para a autenticação estão definidas corretamente no ambiente do Azure. Isso pode incluir strings de conexão de banco de dados, chaves de API, e outras configurações que podem diferir entre seu ambiente de desenvolvimento local e o ambiente de produção.

  4. Logs de Diagnóstico: Habilite e examine os logs de diagnóstico do Azure para obter mais informações sobre os erros de autenticação. Isso pode fornecer pistas adicionais sobre o que pode estar falhando.

  5. Revisão do Código de Autenticação: Revise o código de autenticação da sua aplicação para garantir que ele está configurado para funcionar em um ambiente de produção. Isso pode incluir a verificação de como os tokens de autenticação são gerados e validados.

  6. SSL/TLS: Verifique se a comunicação entre sua aplicação web e a API está sendo feita através de HTTPS, pois a autenticação pode falhar se a segurança da conexão não estiver garantida.

Como uma etapa de diagnóstico adicional, você pode tentar fazer uma autenticação manual usando ferramentas como Postman ou cURL para verificar se a API está respondendo corretamente às solicitações de autenticação quando chamada diretamente.

Espero que essas sugestões ajudem a identificar e resolver o problema. Lembre-se de que problemas de autenticação podem ser delicados e às vezes exigem uma investigação detalhada das configurações e do código. Espero ter ajudado. Qualquer dúvida manda aqui. Bons estudos.