我使用IdentityServer來控制訪問的API。我有一個單獨的身份驗證API,它發佈令牌並驗證訪問請求以確保API的安全。Identity Server的刷新令牌資源所有者密碼憑據流
我給用戶通過安全的web應用程序生成訪問令牌的能力。我正在使用資源所有者密碼憑證流程。
有沒有一種方法可以發出刷新令牌,而無需用戶登錄和請求?或者有什麼辦法可以設置初始訪問令牌的到期時間?
代碼
這是我用來生成令牌代碼。
DiscoveryResponse disco = await DiscoveryClient.GetAsync("http://localhost:27144");
TokenClient tokenClient = new TokenClient(disco.TokenEndpoint, "My Client", "MySecret");
TokenResponse tokenResponse = await tokenClient.RequestResourceOwnerPasswordAsync("testUser", "testPassword");
能否請您提供更多的信息?如果你設置'AllowOfflineAccess = True',IdentityServer會自動返回'refresh_token'。你也可以設置'AccessTokenLifetime' ... – moritzg
@moritzg我將allowOfflineAccess標誌設置爲true,並將absoluteRefreshTokenLifetime設置爲31540000,這應該是一年。但是,令牌響應對象爲expiresIn屬性返回3600。我可以看到refresh_token也被返回。我是否在授權標題中傳遞了該信息? –
你是指「令牌響應對象」的意思嗎? – moritzg