1

我正尝试登录到Azure托管的Java API后端应用程序,并使用Activty Directory进行保护。如何在没有ADAL的情况下登录到Azure托管和Active Directory受保护的API应用程序?

this article我读拨打此电话为接收令牌:

GET https://login.windows.net/developertenant.onmicrosoft.com/oauth2/authorize?response_type=id_token&client_id=aeadda0b-4350-4668-a457-359c60427122&redirect_uri=https%3A%2F%2Flocalhost%3A44326%2F&state=8f0f4eff-360f-4c50-acf0-99cf8174a58b&nonce=8b8385b9-26d3-42a1-a506-a8162bc8dc63 HTTP/1.1

但是如何找出状态现时设置我自己的API后端应用程序?

只是使用上面的例子中的状态和nonce导致我回应所谓的flowToken。这也是我要发送的令牌类型,也是在引用的文章中提到的吗?请参见本部分:

地点:https://localhost:44326/#id_token=eyJ0eXAiOiJKV1QiLC[SNIP]gu1OnSTN2Q2NVu3ug&state=8f0f4eff-360f-4c50-acf0-99cf8174a58b&session_state=e4ec5227-3676-40bf-bdfe-454de9a2fdb2

我只是想有一个前端应用程序安全地连接到后端应用程序会自动在没有用户凭据打字。

请不要告诉我使用ADAL。因为那是我已经尝试过的,什么都不起作用。正如你可以看到here

回答

0

由于授权盛大流包含多个url重定向,这很难在SPA上实现。你需要在你的客户端实现OAuth2 implicit grant flow in Azure Active Directory (AD),这也是JS完成的ADAL。有关工作流程的更多信息,请参阅https://docs.microsoft.com/en-us/azure/active-directory/active-directory-authentication-scenarios#single-page-application-spa

在SPA中最简单的方法是使用ADAL for JS。根据您的问题Access to azure hosted API App denied by CORS policy,您可以尝试设置保护您的后端服务器的AAD应用程序的配置。 I.E.

尝试使用theEndpoints变量中的客户端ID设置为adalAuthenticationServiceProvider.init函数。它在我的测试项目上工作正常。

任何进一步的关注,请随时让我知道。

相关问题