首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >OAuthProblemException -description=‘AADSTS900144 900144:请求主体必须包含以下参数:'refresh_token’

OAuthProblemException -description=‘AADSTS900144 900144:请求主体必须包含以下参数:'refresh_token’
EN

Stack Overflow用户
提问于 2021-07-16 06:28:26
回答 1查看 221关注 0票数 0

这是我的MS团队身份验证提供程序代码:

代码语言:javascript
复制
  try {
            if (durationPassed >= integrationToken.getAuth().getExpiresIn() * 1000) {
                TokenRequestBuilder token = OAuthClientRequest.tokenLocation(AuthHelper.getAuthority() + AuthConstants.TOKEN_ENDPOINT)
                        .setClientId(AuthHelper.getClientId()).setScope(AuthHelper.getScopes())
                        .setRefreshToken(integrationToken.getAuth().getRefreshToken())
                        .setGrantType(GrantType.REFRESH_TOKEN).setClientSecret(AuthHelper.getClientSecret())
                        .setRedirectURI(authHelper.getRedirectUrl());

                OAuthClientRequest request = token.buildBodyMessage();
                OAuthClient oAuthClient = new OAuthClient(new URLConnectionClient());
                long startTime = System.currentTimeMillis();
                OAuthJSONAccessTokenResponse response = oAuthClient.accessToken(request);
                saveNewTokenData(integrationToken, response, startTime);
            }
            return integrationToken.getAuth().getAccessToken();
        } catch (Exception e) {
            e.printStackTrace();
        }

我得到了一个错误:

代码语言:javascript
复制
OAuthProblemException{error='invalid_request', description='AADSTS900144: The request body must contain the following parameter: 'refresh_token'.
Trace ID: 89433eff-047a-476c-92d0-fcf61e7fa100
Correlation ID: 87f28fa7-729f-4c92-8457-3b3d1eb2df45
Timestamp: 2021-07-16 06:01:31Z', uri='https://login.microsoftonline.com/error?code=900144', state='null', scope='null', redirectUri='null', responseStatus=400, parameters={}}
    at org.apache.oltu.oauth2.common.exception.OAuthProblemException.error(OAuthProblemException.java:59)
    at org.apache.oltu.oauth2.client.validator.OAuthClientValidator.validateErrorResponse(OAuthClientValidator.java:63)
    at org.apache.oltu.oauth2.client.validator.OAuthClientValidator.validate(OAuthClientValidator.java:48)
    at org.apache.oltu.oauth2.client.response.OAuthClientResponse.validate(OAuthClientResponse.java:127)
    at org.apache.oltu.oauth2.client.response.OAuthClientResponse.init(OAuthClientResponse.java:96)
    at org.apache.oltu.oauth2.client.response.OAuthAccessTokenResponse.init(OAuthAccessTokenResponse.java:65)
    at org.apache.oltu.oauth2.client.response.OAuthClientResponse.init(OAuthClientResponse.java:101)
    at org.apache.oltu.oauth2.client.response.OAuthAccessTokenResponse.init(OAuthAccessTokenResponse.java:60)
    at org.apache.oltu.oauth2.client.response.OAuthClientResponse.init(OAuthClientResponse.java:120)
    at org.apache.oltu.oauth2.client.response.OAuthClientResponseFactory.createCustomResponse(OAuthClientResponseFactory.java:82)
    at org.apache.oltu.oauth2.client.URLConnectionClient.execute(URLConnectionClient.java:111)
    at org.apache.oltu.oauth2.client.OAuthClient.accessToken(OAuthClient.java:65)
    at org.apache.oltu.oauth2.client.OAuthClient.accessToken(OAuthClient.java:55)
    at org.apache.oltu.oauth2.client.OAuthClient.accessToken(OAuthClient.java:71)
    at com.ps.addons.chats.teams.auth.provider.TeamAuthenticationProvider.getAccessToken(TeamAuthenticationProvider.java:59)
    at com.ps.addons.chats.teams.auth.provider.TeamAuthenticationProvider.authenticateRequest(TeamAuthenticationProvider.java:31)
    at com.microsoft.graph.http.CoreHttpProvider.sendRequestInternal(CoreHttpProvider.java:395)
    at com.microsoft.graph.http.CoreHttpProvider.send(CoreHttpProvider.java:220)
    at com.microsoft.graph.http.CoreHttpProvider.send(CoreHttpProvider.java:200)
    at com.microsoft.graph.http.BaseCollectionRequest.send(BaseCollectionRequest.java:92)
    at com.microsoft.graph.requests.extensions.UserCollectionRequest.get(UserCollectionRequest.java:76)
    at com.ps.addons.chats.teams.graphql.loader.UserBatchLoader.lambda$load$1(UserBatchLoader.java:33)
    at java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1604)
    at java.lang.Thread.run(Thread.java:748)

请帮帮忙。我是不是漏掉了什么范围?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-07-29 11:56:14

从我们的身份验证设置中清除并重新生成集成令牌,用于为ms请求提供refresh_token。- Aakash Verma

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68404391

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档