Как выполнить проверку сертификата клиента (mTLS) в Starlette / FastAPI - PullRequest
2 голосов
/ 08 января 2020

Я рассматриваю возможность использования инфраструктуры FastAPI для реализации довольно простого API, но он должен поддерживать mTLS. AFAIK FastAPI основан на Starlette. Можно ли проверить сертификат клиента в Starlette?

1 Ответ

1 голос
/ 23 января 2020

Нет, согласно документации Starlette , вы можете использовать HTTPSRedirectMiddleware для принудительного использования https, но встроенная проверка сертификата не осуществляется в Starlette .

Вы можете повторно выполнить проверку сертификата самостоятельно, но она будет очень грязной ... на мой взгляд, лучше всего передать проверку сертификата непосредственно на веб-сервер или промежуточное программное обеспечение.

Вы можете использовать uwsgi до обработки аутентификации сертификата клиента или (пере) реализации вашего API с использованием Flask + Gunicorn , что позволит вам проверить сертификат клиента. (например, здесь )

...