Connect Azure DevOps with Microsoft Entra ID

To enable users to work with a remote Git repository that is hosted on Microsoft Azure Repos:

  1. Set up an application in Microsoft Entra ID.

  2. Apply the Microsoft Entra ID App Secret.

Microsoft Entra ID replaces the deprecated Azure DevOps OAuth 2.0 application, which no longer accepts new registrations. If you have an existing Azure DevOps OAuth app, migrate to Microsoft Entra ID.

Create a Microsoft Entra ID application for Che

Create a Microsoft Entra ID application so that Che can authenticate your developers and provide credential-free access to Azure DevOps repositories.

Prerequisites

Connect Che to your Microsoft Entra ID application

Connect Che to your Microsoft Entra ID application so that developers can access Azure DevOps repositories from workspaces without re-entering credentials.

Prerequisites
  • You have configured the Microsoft Entra ID OAuth App.

  • You have the following values, which were generated when configuring the Microsoft Entra ID OAuth App:

    • Application (client) ID

    • Directory (tenant) ID

    • Client Secret

  • An active kubectl session with administrative permissions to the destination Kubernetes cluster. See Overview of kubectl.

Procedure
  1. Prepare the Secret:

    kind: Secret
    apiVersion: v1
    metadata:
      name: azure-devops-oauth-config
      namespace: eclipse-che(1)
      labels:
        app.kubernetes.io/part-of: che.eclipse.org
        app.kubernetes.io/component: oauth-scm-configuration
      annotations:
        che.eclipse.org/oauth-scm-server: azure-devops
    type: Opaque
    stringData:
      tenant-id: <Microsoft_Entra_ID_Tenant_ID>(2)
      id: <Microsoft_Entra_ID_App_ID>(3)
      secret: <Microsoft_Entra_ID_Client_Secret>(4)
    1 The Che namespace. The default is eclipse-che.
    2 The Microsoft Entra ID Directory (tenant) ID.
    3 The Microsoft Entra ID Application (client) ID.
    4 The Microsoft Entra ID Client Secret.
  2. Apply the Secret:

    $ kubectl apply -f - <<EOF
    <Secret_prepared_in_the_previous_step>
    EOF
Verification
  • Verify that the output displays secret/azure-devops-oauth-config created.

  • Verify that the rollout of the Che server components is complete:

    $ kubectl rollout status deployment/che -n eclipse-che