我在教程后使用Identity Server 3,AOuth和ASP.NET设置了授权服务器,但我陷入困境,因为我无法生成硬编码测试签名证书以在应用设置上设置它在Web.Config上。
<appSettings>
<add key="SigningCertificate" value="HARDCODED SIGNING CERTIFICATE"/>
<add key="SigningCertificatePassword" value="password"/>
</appSettings>
<system.webServer>
<modules runAllManagedModulesForAllRequests="true" />
</system.webServer>
我正在尝试在Configuration方法的Startup类上使用此签名证书。
public void Configuration(IAppBuilder app)
{
var inMemoryManager = new InMemoryManager();
var factory = new IdentityServerServiceFactory()
.UseInMemoryUsers(inMemoryManager.GetUsers()) // THIS IS TO USE IN MEMORY USERS. FOR NOW
.UseInMemoryScopes(inMemoryManager.GetScopes())
.UseInMemoryClients(inMemoryManager.GetClients());
var certificate = Convert.FromBase64String(ConfigurationManager.AppSettings["SigningCertificate"]);
// var certificate = Convert.ToBase64String(File.ReadAllBytes(@"C:\TestCert\certificate.pfx"));
var options = new IdentityServerOptions
{
SigningCertificate = new X509Certificate2(certificate, ConfigurationManager.AppSettings["SigningCertificatePassword"]),
RequireSsl = false, // DO NOT DO THIS IN PRODUCTION. JUST TO RUN IT HERE LOCALLY
Factory = factory
};
app.UseIdentityServer(options);
}
我对ASP.NET的这个领域不太熟悉。有谁知道如何让mu Authorization Server工作?
编辑:命令不生成证书。