跳转到主要内容

Sentry的OpenID Connect身份验证提供商

项目描述

Sentry 的单点登录(SSO)提供商,支持 OpenID Connect 应用认证。

这是从 sentry-auth-google 分支出来的。

为什么要分支,而不是将 sentry-auth-google 适配到每个 OpenID Connect 提供商呢?

维护者与 sentry-auth-google 的想法不同。见

安装

$ pip install sentry-auth-oidc

Google 的示例设置

首先,在 Google 开发者控制台 中创建一个项目。

授权重定向 URI 中添加您的安装的 SSO 终端。

https://sentry.example.com/auth/sso/

当然,其他支持 OpenID-Connect 的提供商也可以使用(如 GitLab)。

最后,获取 API 密钥和已知的账户 URL,并将它们插入到您的 sentry.conf.py 中。

OIDC_CLIENT_ID = ""

OIDC_CLIENT_SECRET = ""

OIDC_SCOPE = "openid email"

OIDC_DOMAIN = "https://#"  # e.g. for Google

OIDC_DOMAIN 定义了 OIDC 配置将被拉取的位置。基本上,它指定了 OIDC 服务器,并添加了路径 .well-known/openid-configuration。那里可以找到不同的端点路径。

更详细的信息可以在 ProviderConfig 规范中找到。

您还可以定义 OIDC_ISSUER 来更改 UI 中的默认提供者名称,即使设置了 OIDC_DOMAIN

如果您的提供商不支持 OIDC_DOMAIN,那么您必须自己设置这些必需的端点(授权端点、令牌端点、用户信息端点、发行者)。

OIDC_AUTHORIZATION_ENDPOINT = "https://#/o/oauth2/v2/auth"  # e.g. for Google

OIDC_TOKEN_ENDPOINT = "https://www.googleapis.com/oauth2/v4/token"  # e.g. for Google

OIDC_USERINFO_ENDPOINT = "https://www.googleapis.com/oauth2/v3/userinfo" # e.g. for Google

OIDC_ISSUER = "Google"

开发

常见问题解答

  • 如果您使用 macOS brew 的 openssl 并且遇到 psycopg 构建错误,如下所示
    ld: library not found for -lssl
    请设置以下环境变量
    export LDFLAGS="-L/usr/local/opt/openssl/lib"
    export CPPFLAGS="-I/usr/local/opt/openssl/include"

项目详情


下载文件

下载您平台的文件。如果您不确定选择哪个,请了解更多关于 安装软件包 的信息。

源分布

sentry_auth_oidc-9.0.0.tar.gz (8.8 kB 查看散列)

上传时间

构建分布

sentry_auth_oidc-9.0.0-py3-none-any.whl (10.7 kB 查看散列)

上传时间 Python 3

由以下机构支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误记录 StatusPage StatusPage 状态页面