muxa1l-sentry-auth-oidc


Namemuxa1l-sentry-auth-oidc JSON
Version 5.0.5 PyPI version JSON
download
home_page
SummaryOpenID Connect authentication provider for Sentry
upload_time2023-07-20 13:31:46
maintainer
docs_urlNone
authorMax Wittig
requires_python>=3.6,<4.0
license
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            OpenIDConnect Auth for Sentry
=============================

An SSO provider for Sentry which enables `OpenID Connect <http://openid.net/connect/>`_ Apps authentication.

This is a fork of `sentry-auth-google <https://github.com/getsentry/sentry-auth-google/>`_.

Why fork, instead of adapting sentry-auth-google to work with every OpenID Connect provider?
--------------------------------------------------------------------------------------------
The maintainer has different ideas with sentry-auth-google. See:

* https://github.com/getsentry/sentry-auth-google/pull/29
* https://github.com/getsentry/sentry/issues/5650

Install
-------

::

    $ pip install sentry-auth-oidc

Example Setup for Google
------------------------

Start by `creating a project in the Google Developers Console <https://console.developers.google.com>`_.

In the **Authorized redirect URIs** add the SSO endpoint for your installation::

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

Naturally other providers, that are supporting OpenID-Connect can also be used (like GitLab).

Finally, obtain the API keys and the well-known account URL and plug them into your ``sentry.conf.py``:

.. code-block:: python

    OIDC_CLIENT_ID = ""

    OIDC_CLIENT_SECRET = ""

    OIDC_SCOPE = "openid email"

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

The ``OIDC_DOMAIN`` defines where the OIDC configuration is going to be pulled from.
Basically it specifies the OIDC server and adds the path ``.well-known/openid-configuration`` to it.
That's where different endpoint paths can be found.

Detailed information can be found in the `ProviderConfig <https://openid.net/specs/openid-connect-discovery-1_0.html#ProviderConfig>`_ specification.

You can also define ``OIDC_ISSUER`` to change the default provider name in the UI, even when the ``OIDC_DOMAIN`` is set.

If your provider doesn't support the ``OIDC_DOMAIN``, then you have to set these
required endpoints by yourself (autorization_endpoint, token_endpoint, userinfo_endpoint, issuer).

.. code-block:: python

    OIDC_AUTHORIZATION_ENDPOINT = "https://accounts.google.com/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"

            

Raw data

            {
    "_id": null,
    "home_page": "",
    "name": "muxa1l-sentry-auth-oidc",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.6,<4.0",
    "maintainer_email": "",
    "keywords": "",
    "author": "Max Wittig",
    "author_email": "max.wittig@siemens.com",
    "download_url": "https://files.pythonhosted.org/packages/b3/09/e65e5267853ce96e51370c36e1a2a570a13619d0882d93390a5f0e6c8830/muxa1l-sentry-auth-oidc-5.0.5.tar.gz",
    "platform": null,
    "description": "OpenIDConnect Auth for Sentry\n=============================\n\nAn SSO provider for Sentry which enables `OpenID Connect <http://openid.net/connect/>`_ Apps authentication.\n\nThis is a fork of `sentry-auth-google <https://github.com/getsentry/sentry-auth-google/>`_.\n\nWhy fork, instead of adapting sentry-auth-google to work with every OpenID Connect provider?\n--------------------------------------------------------------------------------------------\nThe maintainer has different ideas with sentry-auth-google. See:\n\n* https://github.com/getsentry/sentry-auth-google/pull/29\n* https://github.com/getsentry/sentry/issues/5650\n\nInstall\n-------\n\n::\n\n    $ pip install sentry-auth-oidc\n\nExample Setup for Google\n------------------------\n\nStart by `creating a project in the Google Developers Console <https://console.developers.google.com>`_.\n\nIn the **Authorized redirect URIs** add the SSO endpoint for your installation::\n\n    https://sentry.example.com/auth/sso/\n\nNaturally other providers, that are supporting OpenID-Connect can also be used (like GitLab).\n\nFinally, obtain the API keys and the well-known account URL and plug them into your ``sentry.conf.py``:\n\n.. code-block:: python\n\n    OIDC_CLIENT_ID = \"\"\n\n    OIDC_CLIENT_SECRET = \"\"\n\n    OIDC_SCOPE = \"openid email\"\n\n    OIDC_DOMAIN = \"https://accounts.google.com\"  # e.g. for Google\n\nThe ``OIDC_DOMAIN`` defines where the OIDC configuration is going to be pulled from.\nBasically it specifies the OIDC server and adds the path ``.well-known/openid-configuration`` to it.\nThat's where different endpoint paths can be found.\n\nDetailed information can be found in the `ProviderConfig <https://openid.net/specs/openid-connect-discovery-1_0.html#ProviderConfig>`_ specification.\n\nYou can also define ``OIDC_ISSUER`` to change the default provider name in the UI, even when the ``OIDC_DOMAIN`` is set.\n\nIf your provider doesn't support the ``OIDC_DOMAIN``, then you have to set these\nrequired endpoints by yourself (autorization_endpoint, token_endpoint, userinfo_endpoint, issuer).\n\n.. code-block:: python\n\n    OIDC_AUTHORIZATION_ENDPOINT = \"https://accounts.google.com/o/oauth2/v2/auth\"  # e.g. for Google\n\n    OIDC_TOKEN_ENDPOINT = \"https://www.googleapis.com/oauth2/v4/token\"  # e.g. for Google\n\n    OIDC_USERINFO_ENDPOINT = \"https://www.googleapis.com/oauth2/v3/userinfo\" # e.g. for Google\n\n    OIDC_ISSUER = \"Google\"\n",
    "bugtrack_url": null,
    "license": "",
    "summary": "OpenID Connect authentication provider for Sentry",
    "version": "5.0.5",
    "project_urls": null,
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "5ed988b02e4e9b71fa9807570991f58fe11db3d9606c5f90bfa6c48df8255926",
                "md5": "5d8a6999bbd801e3ea02bd535bda4111",
                "sha256": "1beae83470f59357f4cece0d2e530915f0626f5fafb553041385a82f5753d29f"
            },
            "downloads": -1,
            "filename": "muxa1l_sentry_auth_oidc-5.0.5-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "5d8a6999bbd801e3ea02bd535bda4111",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.6,<4.0",
            "size": 10967,
            "upload_time": "2023-07-20T13:31:47",
            "upload_time_iso_8601": "2023-07-20T13:31:47.040398Z",
            "url": "https://files.pythonhosted.org/packages/5e/d9/88b02e4e9b71fa9807570991f58fe11db3d9606c5f90bfa6c48df8255926/muxa1l_sentry_auth_oidc-5.0.5-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "b309e65e5267853ce96e51370c36e1a2a570a13619d0882d93390a5f0e6c8830",
                "md5": "be7459422c764f0b0d7f64af3ca2623b",
                "sha256": "34168b56ae4ab356229aa6f414a87946d56fbfb8e704de588747067b16e37931"
            },
            "downloads": -1,
            "filename": "muxa1l-sentry-auth-oidc-5.0.5.tar.gz",
            "has_sig": false,
            "md5_digest": "be7459422c764f0b0d7f64af3ca2623b",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.6,<4.0",
            "size": 9675,
            "upload_time": "2023-07-20T13:31:46",
            "upload_time_iso_8601": "2023-07-20T13:31:46.120111Z",
            "url": "https://files.pythonhosted.org/packages/b3/09/e65e5267853ce96e51370c36e1a2a570a13619d0882d93390a5f0e6c8830/muxa1l-sentry-auth-oidc-5.0.5.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-07-20 13:31:46",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "lcname": "muxa1l-sentry-auth-oidc"
}
        
Elapsed time: 1.69440s