首页 > 解决方案 > 如何删除 swagger production .net core 2.1

问题描述

我在多个微服务上大摇大摆地工作。部署到 Azure 时,由于安全最佳实践,我们需要一起删除 swagger 选项。使用 .net core 2.1 寻找定义示例。

标签: swaggerasp.net-core-2.0swagger-ui

解决方案


首先,什么“安全最佳实践”?将 API 文档用于生产并没有错。这实际上是重点:客户应该能够查看文档,以便他们可以正确使用您的 API。如果这些微服务不被外部客户端使用,那么问题就更小了,因为无论如何,外面的人都无法获得服务文档。如果服务是公开的,那么它们也应该要求授权请求,并且可以通过相同的机制锁定文档本身。

无论如何,如果您坚持在生产中删除它,那么最好的选择是一开始就不要添加它。换句话说,将所有 Swagger 设置包装在Startup.cs其中,if (env.IsDevelopment())或者如果您希望它在诸如登台环境之类的东西中可用:if (!env.IsProduction()).


推荐阅读