{"id":22018507,"url":"https://github.com/flavienbwk/gitlab-azure-oauth","last_synced_at":"2026-04-09T23:54:29.990Z","repository":{"id":230095463,"uuid":"778387135","full_name":"flavienbwk/gitlab-azure-oauth","owner":"flavienbwk","description":"Binding GitLab with Azure Entra ID and OAuth2.","archived":false,"fork":false,"pushed_at":"2024-03-27T18:39:48.000Z","size":6,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-01-28T16:17:34.781Z","etag":null,"topics":["azure","docker","entra-id","gitlab"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/flavienbwk.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2024-03-27T16:15:49.000Z","updated_at":"2024-03-27T20:35:53.000Z","dependencies_parsed_at":"2024-03-27T20:44:05.527Z","dependency_job_id":"efd953f4-cf05-42d5-bebc-4453475115e1","html_url":"https://github.com/flavienbwk/gitlab-azure-oauth","commit_stats":null,"previous_names":["flavienbwk/gitlab-azure-oauth"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavienbwk%2Fgitlab-azure-oauth","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavienbwk%2Fgitlab-azure-oauth/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavienbwk%2Fgitlab-azure-oauth/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavienbwk%2Fgitlab-azure-oauth/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/flavienbwk","download_url":"https://codeload.github.com/flavienbwk/gitlab-azure-oauth/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245081806,"owners_count":20557849,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["azure","docker","entra-id","gitlab"],"created_at":"2024-11-30T05:12:24.660Z","updated_at":"2026-04-09T23:54:24.961Z","avatar_url":"https://github.com/flavienbwk.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Gitlab Azure OAuth\n\nBinding GitLab with Azure Entra ID (formerly Azure Active Directory) with OAuth2.\n\n## Pre-requisites\n\n- Docker \u003e= 24.x\n- Compose plugin \u003e= 2.x\n\n## A. Configuring hosts and gitlab\n\n1. Add `gitlab.local` to your `/etc/hosts`\n\n    ```txt\n    172.17.0.1 gitlab.local\n    ```\n\n2. Copy the compose configuration example\n\n    ```bash\n    cp docker-compose.example.yml docker-compose.yml\n    ```\n\n3. Generate self-signed certificates\n\n    ```bash\n    sudo bash generate-certs.sh\n    ```\n\n## B. Configuring Azure\n\n1. Sign in to the [Microsoft Entra admin center](https://entra.microsoft.com/)\n\n2. Browse to _Identity_ \u003e _Applications_ \u003e _App registrations_ and select _New registration_\n\n3. Enter a display _Name_ `gitlab` with single tenant\n\n4. Retrieve and set the IDs\n\n    Identify and add your _client ID_ and _tenant ID_ in `docker-compose.yml` respectively for values `OAUTH_AZURE_API_KEY` and `OAUTH_AZURE_TENANT_ID`.\n\n5. Create and set the Secret\n\n    Create a secret going to  _Identity_ \u003e _Applications_ \u003e _App registrations_, select application GitLab and select _Certificates \u0026 secrets_.\n    \n    In the _Client secrets_ tab, click _New client secret_. Add this client secret to `docker-compose.yml`'s `OAUTH_AZURE_API_SECRET` value.\n\n6. Configure the redirect URI\n\n    Go to  _Identity_ \u003e _Applications_ \u003e _App registrations_, select application GitLab and select _Authentication_.\n\n    Click _Add a platform_ \u003e _Web_ and add the following redirect URI : \n    \n    - `https://gitlab.local:10443/users/auth/azure_activedirectory_v2/callback`\n\nYou might get more information checking the [official documentation](https://learn.microsoft.com/en-us/entra/identity-platform/quickstart-register-app).\n\n## C. Start gitlab\n\n```bash\ndocker compose up -d\n```\n\nAfter some seconds, you should be able to browse to `https://gitlab.local:10443` and click on the _Azure AD v2_ sign in button.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fflavienbwk%2Fgitlab-azure-oauth","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fflavienbwk%2Fgitlab-azure-oauth","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fflavienbwk%2Fgitlab-azure-oauth/lists"}