0
我有一個授權服務器需要訪問受保護資源(在單獨的資源服務器上)需要訪問的用戶相關信息的場景。要訪問此受保護資源,需要訪問令牌。我通過TokenGranter
手動生成了該令牌,並將其添加到Rest Template所做請求的頭部。當資源被訪問時,它使用授權服務器驗證令牌。從授權服務器訪問受保護資源
我的問題是,即使在數據庫中存在訪問令牌,但當我嘗試訪問資源時,我不斷獲取訪問權限。
我在做錯在訪問資源?如何從授權服務器訪問受保護的資源?
下面是授權其他控制器用來請求資源的代碼:
private final OAuth2TokenGranter tg;
TokenRequest tr = new TokenRequest(reqparams, clientId, scope, grantType);
OAuth2AccessToken grantToken = tg.grant("bearer", tr);
String token = "Bearer " + grantToken.getValue();
RestTemplate restTemplate = new RestTemplate();
HttpHeaders headers = new HttpHeaders();
headers.set("Authorization", token);
headers.setAccept(Arrays.asList(MediaType.APPLICATION_JSON));
HttpEntity<String> entity = new HttpEntity<String>(headers);
restTemplate.exchange(url, HttpMethod.GET, entity, PagedResources.class, authentication.getName());