我们有一个内置在Classic ASP中的遗留应用程序需要访问API - 这个API受到保护"通过IdentityServer - 基本上我们需要为此遗留应用程序实现OpenIdConnect支持。
到目前为止,我能想到的最简单的解决方案是尝试以更新的版本包装此站点,然后我们可以在Owin-startup中添加几行代码,而应该 (?)可以加入:
.AddOpenIdConnect("oidc", options =>
{
options.SignInScheme = "Cookies";
options.Authority = "http://localhost:5000";
options.RequireHttpsMetadata = false;
options.ClientId = "mvc";
options.ClientSecret = "secret";
options.ResponseType = "code id_token";
options.SaveTokens = true;
options.GetClaimsFromUserInfoEndpoint = true;
options.Scope.Add("api1");
options.Scope.Add("offline_access");
});
所以有可能以某种方式让OWIN与Classic ASP一起使用?或者我们注定要尝试构建自己的客户端/中间件?
答案 0 :(得分:0)
如果没有其他" show-stopper"阻止您更新到.Net Framework 4.5.1+,这是您正确的解决方案。
如果你转到Owin official NuGet page,它会告诉你,该库特别没有依赖关系,但是这不太正确。
如果我们转到Microsoft.Owin的source,我们会看到:
<TargetFrameworkVersion>v4.5.1</TargetFrameworkVersion>
所以它实际上取决于.Net Framework 4.5.1。如果您有可能升级您的项目 - 请执行此操作。