未提供项目说明

starlette-oauth2的Python项目详细描述


星光大道2号

一种用于通过oauth2通过密钥进行身份验证的Startlette中间件,该密钥通常用于向代表用户与API交互的web应用程序添加身份验证和授权。在

当应用程序依赖外部租户(例如Microsoft AD)进行身份验证时,将使用此中间件。在

检查example/以了解具体的实现。在

如何针对microsoftaad运行示例

注意:大写的值,如CLIENT_ID要加到example/.venv上。在

  1. 生成一个秘密(例如openssl rand -base64 32)并将其值写到SECRET_KEY

  2. 转到azuread,创建一个应用程序注册(app registrations),给它一个名称,并添加http://localhost:5001/authorized作为Redirect URI。在

    • Application (client) ID上的值添加到CLIENT_ID
    • Endpoints > OpenID Connect metadata document上的值加到SERVER_METADATA_URL
  3. Certificates & secrets选项卡中,创建一个新的客户端密码。在

    • 将刚刚在Client secrets下创建的键的值添加到CLIENT_SECRET
  4. 安装依赖项并运行:

cd example
python -m venv venv
venv/bin/pip install -r requirements.txt
venv/bin/python -m app

当您访问http://localhost:5001/public时,您将看到您没有通过身份验证。 当您访问http://localhost:5001/other时,您将被重定向到您的租户,以进行身份验证。经过身份验证后,您将被重定向回http://localhost:5001/other,您的电子邮件将出现。在

公共终结点是可选的。它们在健康检查等方面很有用。在

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
JFrame中的Java多线程   java Servlet异常映射   java无法从输出流读取   swing Java带来的小程序GUI问题   java什么原因导致错误“'void'类型此处不允许”以及如何修复它?   Java选择器select(长)与selectNow的区别   java自定义arraylist<mygames>获得不同   java Icepdf注释让页面消失   java反向整数数组   java I在生成同步“无法解析配置的所有依赖项”时遇到此错误:app:debugRuntimeClasspath   多个虚拟机上的java线程访问单个DB实例上的表,有时会导致性能低下和异常   swing更改Java中的默认按钮,使其看起来“更好”   java慢速MQ主题订阅。并行化不能提高性能   java运行Boggle Solver需要一个多小时。我的代码怎么了?   数据库中的java循环与应用程序中的java循环   正则表达式匹配${123…456}并在Java中提取2个数字?   java如何制作我们软件的试用版   Java内存参数计算   从另一个类调用方法时出现java问题