OpenID的Swashbuckle问题

时间:2019-05-14 12:21:50

标签: c# .net asp.net-core openid-connect swashbuckle

我已经在ASP.NET Core上配置了Swashbuckle(5.0.0-rc2)以与我的OpenID服务器(Openiddict)一起使用,但是Swagger没有显示任何可用的授权。 只是一个空的模态。

这是我在招摇上设置OpenID的代码段

services.AddSwaggerGen(c =>
{
    //... omitted for brevity
    //baseAccountsUrl is "https://localhost:5401"

    c.AddSecurityDefinition("AccountsOpenID", new OpenApiSecurityScheme
    {
        Type = SecuritySchemeType.OpenIdConnect,
        OpenIdConnectUrl = new Uri($"{baseAccountsUrl}/.well-known/openid-configuration")
    });
}

如果我在到达此处之前登录,则每个操作都可以正常进行,否则,每个方法都将重定向到登录并显示在服务器响应中。

如果我使用OAuth2代替具有密码流的OpenID(它是在Openiddict上以这种方式配置的),并且未在浏览器中登录,那么它也不成功。

我在做什么错了?

1 个答案:

答案 0 :(得分:0)

Swagger用户界面 Swagger编辑器和Swagger UI当前不支持OIDC。请关注此问题以获取更新。

https://swagger.io/docs/specification/authentication/openid-connect-discovery/