没有指定授权的存储机制
No storage mechanism for grants specified
我是 IdentityServer 的新手,在设置时遇到了一些问题。
由于我不会进入这里的原因,我无法使用 ASP.NET Identity 或 EntityFramework。我有一个自定义的用户数据库,我需要对其进行身份验证,因此我获取了示例并尝试将 InMemoryUsers 切换为自定义持久性存储。
这是我的 ConfigureServices 方法:
public void ConfigureServices(IServiceCollection services)
{
services.AddIdentityServer(options =>
{
options.AuthenticationOptions = new IdentityServer4.Configuration.AuthenticationOptions
{
};
})
.AddInMemoryClients(Clients.Get())
.AddInMemoryScopes(Scopes.Get())
.SetTemporarySigningCredential();
services.AddMvc();
services.AddTransient<ISignInService, SignInService>();
services.AddTransient<IUserRepository, UserRepository>();
services.AddTransient<IUserService, UserService>();
services.AddTransient<IResourceOwnerPasswordValidator, ResourceOwnerPasswordValidator>();
services.AddTransient<IProfileService, ProfileService>();
}
我知道这个方法不完善,因为我还在测试一些东西,但是当我 运行 应用程序时,我得到这个错误:
System.InvalidOperationException
没有指定授权的存储机制。使用'AddInMemoryStores'扩展方法注册开发版。
显然我不想在生产实施中使用内存存储,但我不确定我需要做什么来解决这个问题。
AddInMemoryStores 没有最佳名称。它实际上为与发布的 materials/tokens.
相关的所有瞬态数据添加了存储
我们有时会在生产中使用它,因为很多时候我们并不真正需要将这些数据保存到磁盘,而且我们不使用长寿命令牌。
查看扩展方法的作用 here 并查看 IPersistedGrantStore
合同的外观以获得更好的想法。
我是 IdentityServer 的新手,在设置时遇到了一些问题。
由于我不会进入这里的原因,我无法使用 ASP.NET Identity 或 EntityFramework。我有一个自定义的用户数据库,我需要对其进行身份验证,因此我获取了示例并尝试将 InMemoryUsers 切换为自定义持久性存储。
这是我的 ConfigureServices 方法:
public void ConfigureServices(IServiceCollection services)
{
services.AddIdentityServer(options =>
{
options.AuthenticationOptions = new IdentityServer4.Configuration.AuthenticationOptions
{
};
})
.AddInMemoryClients(Clients.Get())
.AddInMemoryScopes(Scopes.Get())
.SetTemporarySigningCredential();
services.AddMvc();
services.AddTransient<ISignInService, SignInService>();
services.AddTransient<IUserRepository, UserRepository>();
services.AddTransient<IUserService, UserService>();
services.AddTransient<IResourceOwnerPasswordValidator, ResourceOwnerPasswordValidator>();
services.AddTransient<IProfileService, ProfileService>();
}
我知道这个方法不完善,因为我还在测试一些东西,但是当我 运行 应用程序时,我得到这个错误:
System.InvalidOperationException 没有指定授权的存储机制。使用'AddInMemoryStores'扩展方法注册开发版。
显然我不想在生产实施中使用内存存储,但我不确定我需要做什么来解决这个问题。
AddInMemoryStores 没有最佳名称。它实际上为与发布的 materials/tokens.
相关的所有瞬态数据添加了存储我们有时会在生产中使用它,因为很多时候我们并不真正需要将这些数据保存到磁盘,而且我们不使用长寿命令牌。
查看扩展方法的作用 here 并查看 IPersistedGrantStore
合同的外观以获得更好的想法。