我正在使用Bluemix中的CF API進行連接。我驗證到的OAuth端點以下:如何設置Oauth令牌過期?
oauth_endpoint = 'https://login.ng.bluemix.net/UAALoginServerWAR/oauth/token'
http_headers = {
'Authorization': 'Basic Y2Y6'
}
http_payload = {
'grant_type': 'password',
'username': user,
'password': pw
}
response = requests.post(oauth_endpoint, data=http_payload, headers=http_headers)
results = response.json()
authorization = results['token_type'] + ' ' + results['access_token']
authorized_headers = {
'Authorization': authorization
}
然後刷新令牌:
http_refresh_payload = {
'grant_type': 'refresh_token',
'refresh_token': results['refresh_token']
}
response = requests.post(oauth_endpoint, data=http_refresh_payload, headers=http_headers)
results = response.json()
authorization = results['token_type'] + ' ' + results['access_token']
authorized_headers = {
'Authorization': authorization
}
到期對這些令牌的時間比我想要的。我如何指定更短的到期日?
我不認爲你作爲一個用戶可以控制它。令牌的持續時間由您的UAA服務器的管理員設置(全球範圍內 - > https://github.com/cloudfoundry/uaa-release/blob/develop/jobs/uaa/spec#L385-L390)。它也可以基於每個客戶端進行設置。不過,您正在使用'cf'客戶端,該客戶端旨在與cf cli配合使用,並且也由您的平臺管理員進行配置,因此無法在此處進行自定義。本質上來說,要做到這一點,你需要請求一個自定義的客戶端,或者做你正在做的事情,只是過早地銷燬訪問/刷新標記。 –
感謝您的指針。是的,這確實是一個管理級別的事情。 – user2085050