Verbindingsproblemen met de ARM-service oplossen

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019

Dit artikel bevat de algemene scenario's voor probleemoplossing waarmee u problemen kunt oplossen die kunnen optreden bij het maken van een Azure Resource Manager-serviceverbinding. Zie Serviceverbindingen beheren voor meer informatie over het maken, bewerken en beveiligen van serviceverbindingen.

Wat gebeurt er wanneer u een ARM-serviceverbinding maakt?

Als u geen serviceverbinding hebt, kunt u er als volgt een maken:

  1. Selecteer projectinstellingen in uw project en selecteer vervolgens Serviceverbindingen.

    Schermopname van het openen van serviceverbindingen vanuit projectinstellingen

  2. Selecteer Nieuwe serviceverbinding om een nieuwe serviceverbinding toe te voegen en selecteer vervolgens Azure Resource Manager. Selecteer Volgende wanneer u klaar bent.

    Schermopname van de typen serviceverbindingen.

  3. Selecteer service-principal (automatisch) en selecteer vervolgens **Volgende.

  4. Selecteer Abonnement en selecteer vervolgens uw abonnement in de vervolgkeuzelijst. Vul het formulier in en selecteer Opslaan wanneer u klaar bent.

    Schermopname van het nieuwe verbindingsformulier voor de ARM-service.

Wanneer u uw nieuwe ARM-serviceverbinding opslaat, gaat u azure DevOps als volgt te werk:

  1. Verbinding maken naar de Microsoft Entra-tenant voor het geselecteerde abonnement.
  2. Er wordt een toepassing in Microsoft Entra ID gemaakt namens de gebruiker.
  3. Nadat de toepassing is gemaakt, wijst u de toepassing als bijdrager toe aan het geselecteerde abonnement.
  4. Er wordt een Azure Resource Manager-serviceverbinding gemaakt met behulp van de details van deze toepassing.

Notitie

Als u serviceverbindingen wilt maken, moet u worden toegevoegd aan de groep Endpoint Creator in uw projectinstellingen: Project settings>Service connections>Security. Inzenders worden standaard toegevoegd aan deze groep.

Scenario’s voor probleemoplossing

Hieronder vindt u enkele van de problemen die kunnen optreden bij het maken van serviceverbindingen:

Onvoldoende bevoegdheden om de bewerking te voltooien

Dit gebeurt meestal wanneer het systeem namens u een toepassing probeert te maken in Microsoft Entra-id.

Dit is een machtigingsprobleem dat kan worden veroorzaakt door de volgende oorzaken:

De gebruiker heeft alleen gastmachtigingen in de map

De beste methode om dit probleem op te lossen, terwijl u alleen de minimale extra machtigingen aan de gebruiker verleent, is door de machtigingen van gastgebruikers als volgt te verhogen.

  1. Meld u aan bij Azure Portal met behulp van een beheerdersaccount. Het account moet een eigenaar, globale beheerder of beheerder van gebruikersaccount zijn.

  2. Selecteer Microsoft Entra-id in de linkernavigatiebalk.

  3. Zorg ervoor dat u de juiste map bewerkt die overeenkomt met het gebruikersabonnement. Als dat niet het geval is, selecteert u Schakelen tussen mappen en meldt u zich aan met de juiste referenties, indien nodig.

  4. Selecteer Gebruikers in de sectie Beheren .

  5. Selecteer Gebruikersinstellingen.

  6. Selecteer Instellingen voor externe samenwerking beheren in de sectie Externe gebruikers .

  7. Wijzig de machtigingen voor gastgebruikers zijn beperkt tot Nee.

Als u bereid bent om de gebruiker aanvullende machtigingen (beheerdersniveau) te geven, kunt u de gebruiker lid maken van de rol Globale beheerder . Volg hiervoor de onderstaande stappen:

Waarschuwing

Gebruikers die zijn toegewezen aan de rol Globale beheerder, kunnen elke beheerinstelling in uw Microsoft Entra-organisatie lezen en wijzigen. Als best practice raden we u aan deze rol toe te wijzen aan minder dan vijf personen in uw organisatie.

  1. Meld u aan bij Azure Portal met behulp van een beheerdersaccount. Het account moet een eigenaar, globale beheerder of beheerder van gebruikersaccount zijn.

  2. Selecteer Microsoft Entra ID in het linkernavigatiedeelvenster.

  3. Zorg ervoor dat u de juiste map bewerkt die overeenkomt met het gebruikersabonnement. Als dat niet het geval is, selecteert u Schakelen tussen mappen en meldt u zich aan met de juiste referenties, indien nodig.

  4. Selecteer Gebruikers in de sectie Beheren .

  5. Gebruik het zoekvak om te zoeken naar de gebruiker die u wilt beheren.

  6. Selecteer de maprol in de sectie Beheren en wijzig vervolgens de rol in Globale beheerder. Selecteer Opslaan wanneer u klaar bent.

Het duurt doorgaans 15 tot 20 minuten om de wijzigingen globaal toe te passen. De gebruiker kan vervolgens proberen de serviceverbinding opnieuw te maken.

De gebruiker is niet gemachtigd om toepassingen toe te voegen in de directory

U moet machtigingen hebben om geïntegreerde toepassingen toe te voegen in de map. De directorybeheerder heeft machtigingen om deze instelling te wijzigen.

  1. Selecteer Microsoft Entra-id in het linkernavigatiedeelvenster.

  2. Zorg ervoor dat u de juiste map bewerkt die overeenkomt met het gebruikersabonnement. Als dat niet het geval is, selecteert u Schakelen tussen mappen en meldt u zich aan met de juiste referenties, indien nodig.

  3. Selecteer Gebruikers en selecteer vervolgens Gebruikersinstellingen.

  4. Wijzig onder App-registraties de optie Toepassingen registreren in Ja.

U kunt ook de service-principal maken met een bestaande gebruiker die al over de vereiste machtigingen beschikt in Microsoft Entra-id. Zie Een Azure Resource Manager-serviceverbinding maken met een bestaande service-principal voor meer informatie.

Kan geen toegangstoken verkrijgen of er is geen geldig vernieuwingstoken gevonden

Deze fouten treden meestal op wanneer uw sessie is verlopen. Ga als volgt te werk om deze problemen op te lossen:

  1. Meld u af bij Azure DevOps.
  2. Open een InPrivate- of incognitobrowservenster en navigeer naar Azure DevOps.
  3. Meld u aan met de juiste referenties.
  4. Selecteer uw organisatie en uw project.
  5. Maak uw serviceverbinding.

Rol Inzender kan niet worden toegewezen

Deze fout treedt meestal op wanneer u geen schrijfmachtiging hebt voor het geselecteerde Azure-abonnement.

Als u dit probleem wilt oplossen, vraagt u de abonnementsbeheerder om u de juiste rol toe te wijzen in Microsoft Entra-id.

Abonnement wordt niet vermeld bij het maken van een serviceverbinding

Er worden maximaal 50 Azure-abonnementen weergegeven in de verschillende vervolgkeuzelijsten voor Azure-abonnementen (facturering, serviceverbinding, enzovoort). Als u een serviceverbinding instelt en u meer dan 50 Azure-abonnementen hebt, worden sommige abonnementen niet vermeld. Voer in dit scenario de volgende stappen uit:

  1. Maak een nieuwe, systeemeigen Microsoft Entra-gebruiker in het Microsoft Entra-exemplaar van uw Azure-abonnement.

  2. Stel de Microsoft Entra-gebruiker zo in dat deze over de juiste machtigingen beschikt om facturering in te stellen of serviceverbindingen te maken. Zie Gebruiker toevoegen die facturering voor Azure DevOps kan instellen voor meer informatie.

  3. Voeg de Microsoft Entra-gebruiker toe aan de Azure DevOps-organisatie met een toegangsniveau belanghebbenden en voeg deze vervolgens toe aan de groep Projectverzameling Beheer istrators (voor facturering) of zorg ervoor dat de gebruiker over voldoende machtigingen in het teamproject beschikt om serviceverbindingen te maken.

  4. Meld u aan bij Azure DevOps met de nieuwe gebruikersreferenties en stel een facturering in. U ziet slechts één Azure-abonnement in de lijst.

Sommige abonnementen ontbreken in de lijst met abonnementen

Dit probleem kan worden opgelost door de instellingen voor ondersteunde accounttypen te wijzigen en te definiëren wie uw toepassing kan gebruiken. Daarvoor voert u de volgende stappen uit:

  1. Meld u aan bij het Azure-portaal.

  2. Als u toegang hebt tot meerdere tenants, gebruikt u het filter Directory + abonnement in het bovenste menu om de tenant te selecteren waarin u een toepassing wilt registreren.

    Schermopname van het pictogram map en abonnementen in Azure Portal.

  3. Selecteer Microsoft Entra-id in het linkerdeelvenster.

  4. Selecteer App-registraties.

  5. Selecteer uw toepassing in de lijst met geregistreerde toepassingen.

  6. Selecteer onder Verificatie ondersteunde accounttypen.

  7. Onder Ondersteunde accounttypen kunt Wie deze toepassing gebruiken of deze API openen? Selecteer Accounts in een organisatiemap.

    Schermopname van de ondersteunde accounttypen.

  8. Selecteer Opslaan wanneer u klaar bent.

Het token van de service-principal is verlopen

Een probleem dat vaak optreedt bij service-principals die automatisch worden gemaakt, is dat het token van de service-principal verloopt en moet worden vernieuwd. Als u echter een probleem hebt met het vernieuwen van het token, ziet u dat er geen geldig vernieuwingstoken is gevonden.

Het toegangstoken vernieuwen voor een automatisch gemaakte service-principal:

  1. Ga naar Serviceverbindingen voor Project-instellingen>en selecteer vervolgens de serviceverbinding die u wilt wijzigen.

  2. Selecteer Bewerken in de rechterbovenhoek en selecteer Verifiëren.

  3. Selecteer Opslaan.

Het token van uw service-principal is nu drie maanden verlengd.

Notitie

Deze bewerking is beschikbaar, zelfs als het token van de service-principal niet is verlopen.

Kan de JWT niet ophalen met behulp van de client-id van de service-principal

Dit probleem treedt op wanneer u probeert een serviceverbinding met een verlopen geheim te verifiëren.

Ga als volgt te werk om het probleem op te lossen:

  1. Ga naar Serviceverbindingen voor Project-instellingen>en selecteer vervolgens de serviceverbinding die u wilt wijzigen.

  2. Selecteer Bewerken in de rechterbovenhoek en breng een wijziging aan in de serviceverbinding. De eenvoudigste en aanbevolen wijziging is het toevoegen van een beschrijving.

  3. Selecteer Opslaan om de serviceverbinding op te slaan.

    Notitie

    Selecteer Opslaan. Probeer de serviceverbinding tijdens deze stap niet te verifiëren.

  4. Sluit het bewerkingsvenster voor de serviceverbinding af en vernieuw de pagina met serviceverbindingen.

  5. Selecteer Bewerken in de rechterbovenhoek en selecteer nu Verifiëren.

  6. Selecteer Opslaan om de serviceverbinding op te slaan.

Azure-abonnement wordt niet doorgegeven vanuit de vorige taakuitvoer

Wanneer u uw Azure-abonnement dynamisch instelt voor uw release-pijplijn en de uitvoervariabele van een voorgaande taak wilt gebruiken, kan dit probleem optreden.

U kunt het probleem oplossen door ervoor te zorgen dat de waarden zijn gedefinieerd in de sectie variabelen van uw pijplijn. U kunt deze variabele vervolgens doorgeven tussen de taken van uw pijplijn.

Welke verificatiemechanismen worden ondersteund? Hoe werken beheerde identiteiten?

Een Azure Resource Manager-serviceverbinding kan verbinding maken met een Azure-abonnement met behulp van een service-principalverificatie (SPA) of verificatie van beheerde identiteiten. Beheerde identiteiten voor Azure-resources bieden Azure-services met een automatisch beheerde identiteit in Microsoft Entra ID. U kunt deze identiteit gebruiken om te verifiëren bij elke service die Ondersteuning biedt voor Microsoft Entra-verificatie zonder referenties in code of in de serviceverbinding te behouden.

Zie Rollen toewijzen voor meer informatie over beheerde identiteiten voor virtuele machines.

Notitie

Beheerde identiteiten worden niet ondersteund in door Microsoft gehoste agents. In dit scenario moet u een zelf-hostende agent instellen op een Azure-VM en een beheerde identiteit voor die VM configureren.