Authentication NSwag for Asp.Net Web Api 2在swagger gui中显示安全性

Authentication NSwag for Asp.Net Web Api 2在swagger gui中显示安全性,authentication,swagger,nswag,Authentication,Swagger,Nswag,我们已经在我们的项目中安装了nswag,到目前为止它运行良好 但是我们所有的函数都是用api密钥保护的 当我在swagger的演示页面上查看时,我可以看到锁a,它位于我需要授权的每个api调用的末尾(我想这就是锁) 在我们的本地安装中,我们有“授权”按钮,我们可以设置密钥,但我不知道如何激活锁定登录api调用?是否有需要设置的属性?解决方案是仅使用此选项设置ApiKey的GeneratorSettings.OperationProcessors,它正在工作。在我的global.asax应用程

我们已经在我们的项目中安装了nswag,到目前为止它运行良好

但是我们所有的函数都是用api密钥保护的

当我在swagger的演示页面上查看时,我可以看到锁a,它位于我需要授权的每个api调用的末尾(我想这就是锁)


在我们的本地安装中,我们有“授权”按钮,我们可以设置密钥,但我不知道如何激活锁定登录api调用?是否有需要设置的属性?

解决方案是仅使用此选项设置ApiKey的GeneratorSettings.OperationProcessors,它正在工作。在我的global.asax应用程序中启动

  app.UseSwaggerUi3(typeof(WebApiApplication).Assembly, settings =>
            {

                settings.MiddlewareBasePath = "/swagger";
                settings.GeneratorSettings.DocumentProcessors.Add(new SecurityDefinitionAppender("ApiKey", new SwaggerSecurityScheme
                {
                    Type = SwaggerSecuritySchemeType.ApiKey,
                    Name = "X-API-KEY",
                    In = SwaggerSecurityApiKeyLocation.Header
                }));
                settings.GeneratorSettings.OperationProcessors.Add(new OperationSecurityScopeProcessor("ApiKey"));
            });

解决方案是仅使用此选项设置ApiKey的GeneratorSettings.OperationProcessors,它正在工作。在我的global.asax应用程序中启动

  app.UseSwaggerUi3(typeof(WebApiApplication).Assembly, settings =>
            {

                settings.MiddlewareBasePath = "/swagger";
                settings.GeneratorSettings.DocumentProcessors.Add(new SecurityDefinitionAppender("ApiKey", new SwaggerSecurityScheme
                {
                    Type = SwaggerSecuritySchemeType.ApiKey,
                    Name = "X-API-KEY",
                    In = SwaggerSecurityApiKeyLocation.Header
                }));
                settings.GeneratorSettings.OperationProcessors.Add(new OperationSecurityScopeProcessor("ApiKey"));
            });

生成器设置已被弃用,当您使用AddOpenAPIDocument(Swagger V3+/OpenAPI)时,此设置将自动失败

相反,您需要向文档中添加类似的设置。


生成器设置已被弃用,当您使用AddOpenAPIDocument(Swagger V3+/OpenAPI)时,此设置将自动失败

相反,您需要向文档中添加类似的设置。


这将被AddOpenAPIDocument(swagger v3+)悄悄忽略这将被AddOpenAPIDocument(swagger v3+)悄悄忽略我面临同样的问题。WebApi 2中NSwag的解决方案是什么而不是Asp.Net内核?我面临着同样的问题。WebApi 2中NSwag的解决方案是什么而不是Asp.Net核心?