如何将端点访问仅限于使用FastAPI的特定IP?
发布于 2021-03-30 09:06:29
FastAPI提供了一个TrustedHostMiddleware,用于:
强制所有传入请求都有一个正确设置的主机头,以防止HTTP主机头攻击。 从fastapi.middleware.trustedhost导入TrustedHostMiddleware app = FastAPI() app.add_middleware( TrustedHostMiddleware,allowed_hosts="example.com","*.example.com“) @app.get("/")异步def main():返回{”消息“:"Hello”} 支持下列论点:
allowed_hosts
-应该允许作为主机名的域名列表。支持通配符域(如*.example.com
)来匹配子域,以允许任何主机名使用allowed_hosts=["*"]
或省略中间件。如果传入的请求没有正确验证,那么将发送一个400响应。
另一个解决方案是为您的部署介质(例如: k8)编写一个IP白名单。
https://stackoverflow.com/questions/66867814
复制相似问题