作者热门文章
- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我目前有一个连接到 Azure Active Directory 的 Azure 网站,用户当前可以使用该网站登录。
但是,作为登录过程的一部分创建的访问 token 只能使用户保持登录状态一小时。经过一些研究,我发现这个问题可以通过引入刷新 token 来解决,这将使用户登录的时间更长。
现在的问题是我找不到任何关于如何在我的项目中实际创建和使用此刷新 token 的代码。下面是我用来与 Active Directory 通信的库和代码:
using Microsoft.Owin.Security.ActiveDirectory;
public class Startup {
public void Configuration(IAppBuilder app) {
var config = new HttpConfiguration();
ConfigureAuth(app);
}
private void ConfigureAuth(IAppBuilder app) {
app.UseWindowsAzureActiveDirectoryBearerAuthentication(
new WindowsAzureActiveDirectoryBearerAuthenticationOptions {
TokenValidationParameters = new TokenValidationParameters {
ValidAudience = ConfigurationManager.AppSettings["ida:AudienceUri"]
},
Tenant = ConfigurationManager.AppSettings["AzureADTenant"]
});
}
}
最佳答案
看看active-directory-dotnet-webapp-webapi-oauth2-useridentity特别是它如何利用 TokenDbCache 与 ADAL 结合来存储刷新 token 。
当您使用 TokenCache 配置 ADAL AuthenticationContext 时,ADAL 将自动尝试从缓存中检索刷新 token (如果可用且有效)。
关于c# - 如何为 Azure AD 创建和使用刷新 token ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38952388/
我是一名优秀的程序员,十分优秀!