我正在使用刷新流示例,但我添加了instrospection中间件,因为我的资源服务器与我的授权服务器分开。使用角度应用程序,我可以连接到授权服务器。一切正常。但我在Implicit Flow示例中注意到添加了以下代码:
if (await manager.FindByClientIdAsync("aurelia", cancellationToken) == null)
{
var descriptor = new OpenIddictApplicationDescriptor
{
ClientId = "aurelia",
DisplayName = "Aurelia client application",
PostLogoutRedirectUris = { new Uri("http://localhost:9000/signout-oidc") },
RedirectUris = { new Uri("http://localhost:9000/signin-oidc") }
};
await manager.CreateAsync(descriptor, cancellationToken);
}
我是否需要为Refresh流程添加类似的内容?
答案 0 :(得分:0)
如果您没有将OpenIddict配置为要求options.RequireClientIdentification()
用于令牌请求(通过调用 var handler = new WebRequestHandler();
handler.ClientCertificateOptions = ClientCertificateOption.Automatic;
var httpClient = new HttpClient(handler);
),那么在数据库中创建应用程序不是必须的,以便能够使用刷新令牌流。