|
| 1 | +.. _authentication-oidc: |
| 2 | + |
| 3 | +============================= |
| 4 | +OpenID Connect Authentication |
| 5 | +============================= |
| 6 | + |
| 7 | +.. default-domain:: mongodb |
| 8 | + |
| 9 | +.. contents:: On this page |
| 10 | + :local: |
| 11 | + :backlinks: none |
| 12 | + :depth: 1 |
| 13 | + :class: singlecol |
| 14 | + |
| 15 | +.. include:: /includes/fact-oidc-authentication.rst |
| 16 | + |
| 17 | +Behavior |
| 18 | +-------- |
| 19 | + |
| 20 | +- To authenticate using OpenID Connect, enable the ``MONGODB-OIDC`` :ref:`authentication |
| 21 | + mechanism <authentication>`. |
| 22 | + |
| 23 | +- OpenID Connect uses access tokens to provide identity information. The access |
| 24 | + tokens are encoded as JSON Web Tokens (JWT). They contain information about |
| 25 | + user identities and authorization rights. |
| 26 | + |
| 27 | +- MongoDB currently supports the use of Microsoft Azure AD and Okta as third-party |
| 28 | + identity providers. |
| 29 | + |
| 30 | +Get Started |
| 31 | +----------- |
| 32 | + |
| 33 | +- :ref:`Configure MongoDB with OpenID Connect <configure-oidc>` |
| 34 | + |
| 35 | +Details |
| 36 | +------- |
| 37 | + |
| 38 | +The OpenID Connect authentication process with MongoDB is summarized below: |
| 39 | + |
| 40 | +1. Configure your MongoDB server with OpenID Connect. The configuration |
| 41 | + includes information from your identity provider, such as client ID, |
| 42 | + authorization endpoints, and token endpoints. For more details, see |
| 43 | + :ref:`Configure MongoDB with OpenID Connect <configure-oidc>`. |
| 44 | + |
| 45 | +#. The client application (for example :binary:`~bin.mongosh` or |compass|) |
| 46 | + contacts the identity provider's authorization endpoint. You are redirected |
| 47 | + to your identity provider's login screen. Provide your credentials to complete |
| 48 | + authentication. |
| 49 | + |
| 50 | +#. The client application receives an access token from the identity provider. |
| 51 | + |
| 52 | +#. The MongoDB server uses the access token provided from the client application to |
| 53 | + finalize authentication. The access token contains information such as user |
| 54 | + identity and authorization rights. |
| 55 | + |
| 56 | +Learn More |
| 57 | +---------- |
| 58 | + |
| 59 | +- `OpenID Connect <https://auth0.com/docs/authenticate/protocols/openid-connect-protocol>`_ |
| 60 | + |
| 61 | +- `Microsoft Azure AD <https://learn.microsoft.com/en-us/azure/active-directory/manage-apps/add-application-portal-setup-oidc-sso>`_ |
| 62 | + |
| 63 | +- `Okta as an Identity Provider <https://help.okta.com/oie/en-us/Content/Topics/Apps/apps-about-oidc.htm>`_ |
| 64 | + |
| 65 | +.. toctree:: |
| 66 | + :titlesonly: |
| 67 | + :hidden: |
| 68 | + |
| 69 | + /tutorial/configure-oidc |
0 commit comments