Använd portalen för att skapa ett Azure AD-program och huvudnamn för tjänsten som kan komma åt resurser

Den här artikeln visar hur du skapar ett nytt Azure Active Directory-program (Azure AD) och tjänstens huvudnamn som kan användas med rollbaserad åtkomstkontroll. När du har program, värdtjänster eller automatiserade verktyg som behöver åtkomst till eller ändrar resurser kan du skapa en identitet för appen. Den här identiteten kallas tjänstens huvudnamn. Åtkomsten till resurser begränsas av de roller som tilldelats tjänstens huvudnamn, vilket ger dig kontroll över vilka resurser som kan nås och på vilken nivå. Av säkerhetsskäl rekommenderar vi att du alltid använder tjänstens huvudnamn med automatiserade verktyg i stället för att tillåta inloggning med en användaridentitet.

Den här artikeln visar hur du använder portalen för att skapa tjänstens huvudnamn i Azure Portal. Den fokuserar på ett program med en enda klientorganisation där programmet är avsett att köras inom endast en organisation. Du använder vanligtvis program med en enda klientorganisation för verksamhetsapplikationer som körs i din organisation. Du kan också använda Azure PowerShell för att skapa ett huvudnamn för tjänsten.

Viktigt

Överväg att använda hanterade identiteter för Azure-resurser som programidentitet i stället för att skapa ett huvudnamn för tjänsten. Om din kod körs på en tjänst som stöder hanterade identiteter och har åtkomst till resurser som stöder Azure AD-autentisering är hanterade identiteter ett bättre alternativ för dig. Mer information om hanterade identiteter för Azure-resurser, inklusive vilka tjänster som för närvarande stöder det, finns i Vad är hanterade identiteter för Azure-resurser?.

Appregistrering, appobjekt och tjänstens huvudnamn

Det går inte att skapa ett huvudnamn för tjänsten direkt med hjälp av Azure Portal. När du registrerar ett program via Azure Portal skapas automatiskt ett programobjekt och tjänstens huvudnamn i din hemkatalog eller klientorganisation. Mer information om relationen mellan appregistrering, programobjektoch tjänstens huvudnamn finns i Program- och tjänsthuvudnamnsobjekt i Azure Active Directory .

Behörigheter som krävs för att registrera en app

Du måste ha tillräcklig behörighet för att registrera ett program med din Azure AD-klientorganisation och tilldela programmet en roll i din Azure-prenumeration.

Kontrollera Azure AD-behörigheter

  1. Välj Azure Active Directory.

  2. Observera din roll. Om du har rollen Användare måste du se till att icke-administratörer kan registrera program.

    Hitta din roll. Om du är användare ser du till att icke-administratörer kan registrera appar

  3. I den vänstra rutan väljer du Användarinställningar.

  4. Kontrollera Appregistreringar inställningen. Det här värdet kan bara anges av en administratör. Om det är inställt på Ja kan alla användare i Azure AD-klienten registrera en app.

Om inställningen för appregistreringar är inställd på Nej kan endast användare med en administratörsroll registrera dessa typer av program. Se Inbyggda roller i Azure AD för att lära dig mer om tillgängliga administratörsroller och de specifika behörigheter i Azure AD som ges till varje roll. Om ditt konto har tilldelats användarrollen, men appregistreringsinställningen är begränsad till administratörsanvändare, ber du administratören att antingen tilldela dig en av de administratörsroller som kan skapa och hantera alla aspekter av appregistreringar eller att låta användare registrera appar.

Kontrollera azure-prenumerationsbehörigheter

I din Azure-prenumeration måste ditt konto ha Microsoft.Authorization/*/Write åtkomst till att tilldela en roll till en AD-app. Den här åtgärden beviljas genom rollen Ägare eller Administratör för användaråtkomst. Om ditt konto har tilldelats rollen Deltagare har du inte tillräcklig behörighet. Du får ett felmeddelande när du försöker tilldela tjänstens huvudnamn en roll.

Så här kontrollerar du dina prenumerationsbehörigheter:

  1. Sök efter och välj Prenumerationer eller välj Prenumerationerstartsidan.

    Sök

  2. Välj den prenumeration som du vill skapa tjänstens huvudnamn i.

    Välj prenumeration för tilldelning

    Om du inte ser den prenumeration som du letar efter väljer du globala prenumerationsfilter. Kontrollera att den prenumeration som du vill använda är vald för portalen.

  3. Välj Mina behörigheter. Välj sedan Klicka här för att visa fullständig åtkomstinformation för den här prenumerationen.

    Välj den prenumeration som du vill skapa tjänstens huvudnamn i

  4. Välj Visa i Rolltilldelningar för att visa dina tilldelade roller och avgör om du har tillräcklig behörighet att tilldela en roll till en AD-app. Om inte ber du prenumerationsadministratören att lägga till dig i rollen Administratör för användaråtkomst. I följande bild tilldelas användaren rollen Ägare, vilket innebär att användaren har tillräcklig behörighet.

    Det här exemplet visar att användaren har tilldelats rollen Ägare

Registrera ett program med Azure AD och skapa ett huvudnamn för tjänsten

Nu ska vi gå direkt till att skapa identiteten. Om du får problem kontrollerar du behörigheterna som krävs för att kontrollera att ditt konto kan skapa identiteten.

  1. Logga in på ditt Azure-konto via Azure Portal.

  2. Välj Azure Active Directory.

  3. Välj Appregistreringar.

  4. Välj Ny registrering.

  5. Ge programmet ett namn. Välj en kontotyp som stöds, som avgör vem som kan använda programmet. Under Omdirigerings-URI väljer du Webb för den typ av program som du vill skapa. Ange den URI som åtkomsttoken skickas till. Du kan inte skapa autentiseringsuppgifter för ett inbyggt program. Du kan inte använda den typen för ett automatiserat program. När du har valt värdena väljer du Registrera.

    Ange ett namn för ditt program

Du har skapat ditt Azure AD-program och tjänstens huvudnamn.

Anteckning

Du kan registrera flera program med samma namn i Azure AD, men programmen måste ha olika program-(klient)-ID:n.

Tilldela en roll till programmet

Om du vill komma åt resurser i din prenumeration måste du tilldela en roll till programmet. Bestäm vilken roll som ger rätt behörigheter för programmet. Mer information om tillgängliga roller finns i Inbyggda Roller i Azure.

Du kan ange omfånget på prenumerationsnivå, resursgrupp eller resursnivå. Behörigheter ärvs till lägre omfångsnivåer. Om du till exempel lägger till ett program i rollen Läsare för en resursgrupp kan den läsa resursgruppen och alla resurser den innehåller.

  1. I Azure Portal väljer du den omfångsnivå som du vill tilldela programmet till. Om du till exempel vill tilldela en roll i prenumerationsomfånget söker du efter och väljer Prenumerationer eller väljer Prenumerationer på sidan Start.

    Du kan till exempel tilldela en roll i prenumerationsomfånget

  2. Välj den prenumeration som du vill tilldela programmet till.

    Välj prenumeration för tilldelning

    Om du inte ser den prenumeration som du letar efter väljer du globala prenumerationsfilter. Kontrollera att den prenumeration som du vill använda är vald för portalen.

  3. Välj Åtkomstkontroll (IAM) .

  4. Välj Välj Lägg till lägg > till rolltilldelning för att öppna sidan Lägg till rolltilldelning.

  5. Välj den roll som du vill tilldela till programmet. Om du till exempel vill tillåta att programmet kör åtgärder som omstart, starta och stoppa instanser väljer du rollen Deltagare. Läs mer om tillgängliga roller Som standard visas inte Azure AD-program i de tillgängliga alternativen. Du hittar programmet genom att söka efter namnet och välja det.

    Tilldela rollen Deltagare till programmet i prenumerationsomfånget. Detaljerade anvisningar finns i Tilldela Azure-roller med hjälp av Azure Portal.

Tjänstens huvudnamn har ställts in. Du kan börja använda den för att köra skript eller appar. Om du vill hantera tjänstens huvudnamn (behörigheter, användarmedgivande behörigheter, se vilka användare som har samtyckt till, granska behörigheter, se inloggningsinformation med mera) går du till Företagsprogram.

Nästa avsnitt visar hur du hämtar värden som behövs vid inloggning programmatiskt.

Hämta värden för klientorganisation och app-ID för inloggning

När du loggar in programmässigt skickar du klientorganisations-ID:t med din autentiseringsbegäran och program-ID:t. Du behöver också ett certifikat eller en autentiseringsnyckel (beskrivs i följande avsnitt). Hämta dessa värden med följande steg:

  1. Välj Azure Active Directory.

  2. Från Appregistreringar i Azure AD väljer du ditt program.

  3. Kopiera katalog-ID:t (klient)-ID:t och lagra det i programkoden.

    Kopiera katalogen (klient-ID) och lagra den i din appkod

    Katalog-ID:t (klient) finns också på översiktssidan för standardkatalogen.

  4. Kopiera Program-ID:t och lagra det i din programkod.

    Kopiera program-ID:t (klienten)

Autentisering: Två alternativ

Det finns två typer av autentisering för tjänsthuvudnamn: lösenordsbaserad autentisering (programhemlighet) och certifikatbaserad autentisering. Vi rekommenderar att du använder ett certifikat , men du kan också skapa en programhemlighet.

Alternativ 1: Upload ett certifikat

Du kan använda ett befintligt certifikat om du har ett. Du kan också skapa ett själv signerat certifikat endast i testsyfte. Om du vill skapa ett självsignerat certifikat öppnar du PowerShell och kör New-SelfSignedCertificate med följande parametrar för att skapa certifikatet i användarcertifikatarkivet på datorn:

$cert=New-SelfSignedCertificate -Subject "CN=DaemonConsoleCert" -CertStoreLocation "Cert:\CurrentUser\My"  -KeyExportPolicy Exportable -KeySpec Signature

Exportera det här certifikatet till en fil med mmc-snapin-modulen Hantera användarcertifikat som är tillgänglig från Windows Kontrollpanelen.

  1. Välj KörStart-menyn och ange sedan certmgr.msc.

    Certificate Manager-verktyget för den aktuella användaren visas.

  2. Om du vill visa dina certifikat går du till Certifikat – Aktuell användare i den vänstra rutan och expanderar katalogen Personlig.

  3. Högerklicka på det certifikat som du skapade och välj Alla uppgifter som >Exportera.

  4. Följ guiden Exportera certifikat. Exportera inte den privata nyckeln och exportera till en . CER-fil.

Så här laddar du upp certifikatet:

  1. Välj Azure Active Directory.

  2. Från Appregistreringar i Azure AD väljer du ditt program.

  3. Välj Certifikat & hemligheter.

  4. Välj Upload certifikat och välj certifikatet (ett befintligt eller det själv signerade certifikat som du exporterade).

    Välj Upload och välj det certifikat som du vill lägga till

  5. Välj Lägg till.

När du har registrerat certifikatet med ditt program i programregistreringsportalen aktiverar du klientprogramkoden för att använda certifikatet.

Alternativ 2: Skapa en ny programhemlighet

Om du väljer att inte använda ett certifikat kan du skapa en ny programhemlighet.

  1. Välj Azure Active Directory.

  2. Från Appregistreringar i Azure AD väljer du ditt program.

  3. Välj Certifikat & hemligheter.

  4. Välj Klienthemligheter - > Ny klienthemlighet.

  5. Ange en beskrivning av hemligheten och en varaktighet. När du är klar väljer du Lägg till.

    När du har sparat klienthemligheten visas värdet för klienthemligheten. Kopiera det här värdet eftersom du inte kan hämta nyckeln senare. Du anger nyckelvärdet med program-ID:t för att logga in som programmet. Lagra nyckelvärdet där programmet kan hämta det.

    Kopiera det hemliga värdet eftersom du inte kan hämta det senare

Konfigurera åtkomstprinciper för resurser

Tänk på att du kan behöva konfigurera ytterligare behörigheter för resurser som ditt program behöver åtkomst till. Du måste till exempel också uppdatera åtkomstprinciperna för ett nyckelvalv så att ditt program får åtkomst till nycklar, hemligheter eller certifikat.

  1. I Azure Portaldu till nyckelvalvet och väljer Åtkomstprinciper.
  2. Välj Lägg till åtkomstprincip och välj sedan de nyckel-, hemlighets- och certifikatbehörigheter som du vill bevilja ditt program. Välj tjänstens huvudnamn som du skapade tidigare.
  3. Välj Lägg till för att lägga till åtkomstprincipen och sedan Spara för att genomföra ändringarna. Lägga till åtkomstprincip

Nästa steg