Azure AD在Spring Boot中没有用户身份验证

问题描述 投票:0回答:1

我想使用https://login.microsoftonline.com/{tenant}/oauth2/token端点登录到我的应用程序。我在发布请求中填充参数(client_id,client_secret,resource和grant_type:client_credentials)并获取访问令牌。当我使用它登录我的API时,Spring Boot会给我错误:

com.microsoft.aad.adal4j.AuthenticationException: {"error_description":"AADSTS50058: A silent sign-in request was sent but no user is signed in.

我应该怎么做才能仅在发布请求后获得有效的承载令牌?还是我缺少任何天蓝色的配置?

azure spring-boot azure-active-directory bearer-token jwt-auth
1个回答
0
投票

您所描述的“登录”不是用户登录,而是请求访问令牌的应用程序。然后,应用程序可以使用此令牌来调用其他一些API,例如MS图。它适用于根本不涉及用户的应用程序(例如,守护程序服务),或者应用程序要调用API而不引用当前登录的用户。如果要执行的操作是让用户登录到您的应用程序,则需要使用OpenIDConnect授权代码授予流程。使用MSAL4J

© www.soinside.com 2019 - 2024. All rights reserved.