Zapewnianie aplikacji dostępu do Azure Stack Hub zasobów

Aplikacja, która wdraża lub konfiguruje zasoby za pośrednictwem Azure Resource Manager musi być reprezentowana przez własną tożsamość, znaną jako podmiot zabezpieczeń. Tak jak użytkownik jest reprezentowany przez jednostkę użytkownika, aplikacja jest reprezentowana przez jednostkę usługi.

Tożsamości można również użyć do delegowania tylko niezbędnych uprawnień do użytkownika lub aplikacji. Na przykład aplikacja do zarządzania konfiguracją może używać Azure Resource Manager do spisu zasobów platformy Azure. Aplikacja zostanie zarejestrowana w katalogu, a następnie dodana do roli "czytelnik" w odpowiednim zakresie, ograniczając aplikację do dostępu tylko do odczytu.

Omówienie

Podobnie jak użytkownik, aplikacja musi prezentować poświadczenia podczas uwierzytelniania, co wymaga dwóch elementów:

  • Identyfikator aplikacji, czasami określany jako identyfikator klienta. Identyfikator GUID, który jednoznacznie identyfikuje rejestrację aplikacji w dzierżawie usługi Active Directory.
  • Klucz tajny. Możesz wygenerować ciąg klucza tajnego klienta (podobnie jak hasło) lub określić odcisk palca certyfikatu X509 (który używa jego klucza publicznego).

Uruchamianie aplikacji pod własną tożsamością jest preferowane z następujących powodów:

  • Silniejsze poświadczenia — aplikacja może zalogować się przy użyciu certyfikatu X509 zamiast tekstowego udostępnionego hasła/hasła.
  • Do aplikacji można przypisać bardziej restrykcyjne uprawnienia. Zazwyczaj te uprawnienia są ograniczone tylko do tego, co aplikacja musi zrobić, co jest nazywane zasadą najmniejszych uprawnień.
  • Poświadczenia i uprawnienia nie zmieniają się tak często dla aplikacji jak poświadczenia użytkownika. Na przykład w przypadku zmiany obowiązków użytkownika wymagania dotyczące haseł określają zmianę lub czas, w którym użytkownik opuszcza firmę.

Zacznij od utworzenia nowej rejestracji aplikacji w katalogu, która tworzy skojarzony obiekt jednostki usługi do reprezentowania tożsamości aplikacji w katalogu. Proces rejestracji różni się w zależności od katalogu wybranego dla Azure Stack Hub wystąpienia:

  • Azure Active Directory (Azure AD): Azure AD to wielodostępna, oparta na chmurze usługa do zarządzania katalogami i tożsamościami. Usługi Azure AD można używać z połączonym Azure Stack Hub wystąpieniem. W przykładach przedstawionych później zostanie Azure Portal rejestracji aplikacji usługi Azure AD.
  • Active Directory Federation Services (AD FS): AD FS uproszczoną, zabezpieczoną federację tożsamości i możliwości logowania jednokrotnego (SSO) w sieci Web. Można używać AD FS z połączonymi i odłączonymi Azure Stack Hub wystąpieniami. W przykładach przedstawionych później użyjemy Azure Stack Hub PowerShell do AD FS rejestracji aplikacji.

Po zarejestrowaniu aplikacji dowiesz się, jak przypisać ją do roli, ograniczając jej dostęp do zasobów.

Zarządzanie aplikacją usługi Azure AD

Jeśli wdrożono usługę Azure Stack Hub Azure AD jako usługę zarządzania tożsamościami, możesz tworzyć tożsamości dla aplikacji i zarządzać nimi, tak jak w przypadku platformy Azure. W tej sekcji pokazano, jak wykonać kroki przy użyciu Azure Portal. Przejrzyj uprawnienia wymagane do zarejestrowania aplikacji przed rozpoczęciem, aby upewnić się, że masz wystarczające uprawnienia do zarejestrowania aplikacji.

Tworzenie rejestracji aplikacji, która używa poświadczeń wpisu tajnego klienta

W tej sekcji zarejestrujesz aplikację w dzierżawie usługi Azure AD przy użyciu Azure Portal. W poniższym przykładzie należy określić poświadczenia tajne klienta, ale portal obsługuje również poświadczenia oparte na certyfikatach X509.

  1. Zaloguj się do witryny Azure Portal przy użyciu konta platformy Azure.

  2. Wybierz Azure Active Directory > Rejestracje aplikacji > nową rejestrację.

  3. Podaj nazwę aplikacji.

  4. Wybierz odpowiednie obsługiwane typy kont.

  5. W obszarze Redirect URI(Adres URI przekierowania) wybierz pozycję Web (Sieć Web) jako typ aplikacji i (opcjonalnie) określ wartość URI przekierowania, jeśli aplikacja tego wymaga.

  6. Po ustawieniu wartości wybierz pozycję Zarejestruj. Zostanie utworzona rejestracja aplikacji i zostanie wyświetlona strona Przegląd.

  7. Skopiuj identyfikator aplikacji do użycia w kodzie aplikacji. Ta wartość jest również nazywana identyfikatorem klienta.

  8. Aby wygenerować klucz tajny klienta, wybierz stronę Certyfikaty & wpisów tajnych. Wybierz pozycję Nowy wpis tajny klienta.

  9. Podaj opis dla tajnego i czas trwania wygaśnięcia.

  10. Gdy wszystko będzie gotowe, wybierz pozycję Dodaj.

  11. Zostanie wyświetlona wartość tajnego. Skopiuj i zapisz tę wartość w innej lokalizacji, ponieważ nie będzie można jej później pobrać. Do logowania należy podać klucz tajny z identyfikatorem aplikacji w aplikacji klienckiej.

    Zapisany klucz w wpisach tajnych klienta

Teraz przejdź do tematu Przypisywanie roli, aby dowiedzieć się, jak ustanowić kontrolę dostępu opartą na rolach dla tożsamości aplikacji.

<a name="manage-an-ad-fs-app">Zarządzanie aplikacją AD FS aplikacji

Jeśli wdrożono usługę Azure Stack Hub z AD FS jako usługą zarządzania tożsamościami, do zarządzania tożsamościami aplikacji należy użyć programu PowerShell. W poniższych przykładach pokazano zarówno certyfikat X509, jak i poświadczenie tajne klienta.

Skrypty muszą być uruchamiane w konsoli programu PowerShell z podwyższonym poziomem uprawnień ("Uruchom jako administrator"), co powoduje otwarcie kolejnej sesji dla maszyny wirtualnej, która hostuje uprzywilejowany punkt końcowy Azure Stack Hub wystąpienia. Po utworzeniu sesji uprzywilejowanego punktu końcowego do tworzenia rejestracji aplikacji i zarządzania nimi są używane dodatkowe polecenia cmdlet. Aby uzyskać więcej informacji na temat uprzywilejowanego punktu końcowego, zobacz Używanie uprzywilejowanego punktu końcowegow Azure Stack Hub .

Tworzenie rejestracji aplikacji, która używa poświadczeń certyfikatu

Podczas tworzenia poświadczeń certyfikatu muszą być spełnione następujące wymagania:

  • W środowisku produkcyjnym certyfikat musi być wystawiony przez wewnętrzny urząd certyfikacji lub publiczny urząd certyfikacji. W przypadku korzystania z urzędu publicznego należy uwzględnić ten urząd w bazowym obrazie systemu operacyjnego w ramach programu zaufanego głównego urzędu certyfikacji firmy Microsoft. Aby uzyskać pełną listę, zobacz List of Participants - Microsoft Trusted Root Program ( Lista uczestników — zaufany program główny firmy Microsoft). Przykład tworzenia certyfikatu testowego z podpisem własnym zostanie również przedstawiony później podczas aktualizowania poświadczeń certyfikatu.
  • Dostawca usług kryptograficznych musi być określony jako starszy dostawca kluczy usług kryptograficznych (CSP) firmy Microsoft.
  • Format certyfikatu musi być w pliku PFX, ponieważ wymagane są zarówno klucze publiczne, jak i prywatne. Windows używają plików pfx zawierających plik klucza publicznego (plik certyfikatu TLS/SSL) i skojarzony plik klucza prywatnego.
  • Twoja Azure Stack Hub musi mieć dostęp sieciowy do lokalizacji listy odwołania certyfikatów (CRL) urzędu certyfikacji opublikowanej w certyfikacie. Ta listy CRL musi być punktem końcowym HTTP.

Po masz certyfikat, użyj poniższego skryptu programu PowerShell, aby zarejestrować aplikację i zalogować się przy użyciu tożsamości aplikacji. Zastąp własne wartości następującymi symbolami zastępczymi:

Symbol zastępczy Opis Przykład
<PepVM> Nazwa maszyny wirtualnej uprzywilejowanego punktu końcowego w wystąpieniu Azure Stack Hub końcowego. "AzS-ERCS01"
<YourCertificateLocation> Lokalizacja certyfikatu X509 w lokalnym magazynie certyfikatów. "Cert:\CurrentUser\My\AB5A8A3533CC7AA2025BF05120117E06DE407B34"
<YourAppName> Opisowa nazwa rejestracji nowej aplikacji. "Moje narzędzie do zarządzania"
  1. Otwórz sesję Windows PowerShell z podwyższonym poziomem uprawnień i uruchom następujący skrypt.

    # Sign in to PowerShell interactively, using credentials that have access to the VM running the Privileged Endpoint (typically <domain>\cloudadmin)
    $Creds = Get-Credential
    
    # Create a PSSession to the Privileged Endpoint VM
    $Session = New-PSSession -ComputerName "<PepVm>" -ConfigurationName PrivilegedEndpoint -Credential $Creds -SessionOption (New-PSSessionOption -Culture en-US -UICulture en-US)
    
    # Use the Get-Item cmdlet to retrieve the certificate from the certificate store.
    # Alteratively, use Get-Certificate for a .cer file, or Get-PfxCertificate for a .pfx file.
    # If you don't want to use a managed certificate, you can produce a self signed cert for testing purposes: 
    # $Cert = New-SelfSignedCertificate -CertStoreLocation "cert:\CurrentUser\My" -Subject "CN=<YourAppName>" -KeySpec KeyExchange
    $Cert = Get-Item "<YourCertificateLocation>"
    
    # Use the privileged endpoint to create the new app registration
    $SpObject = Invoke-Command -Session $Session -ScriptBlock {New-GraphApplication -Name "<YourAppName>" -ClientCertificates $using:cert}
    $AzureStackInfo = Invoke-Command -Session $Session -ScriptBlock {Get-AzureStackStampInformation}
    $Session | Remove-PSSession
    
    # Using the stamp info for your Azure Stack Hub instance, populate the following variables:
    # - Az endpoint used for Azure Resource Manager operations 
    # - Audience for acquiring an OAuth token used to access Graph API 
    # - GUID of the directory tenant
    $ArmEndpoint = $AzureStackInfo.TenantExternalEndpoints.TenantResourceManager
    $GraphAudience = "https://graph." + $AzureStackInfo.ExternalDomainFQDN + "/"
    $TenantID = $AzureStackInfo.AADTenantID
    
    # Register and set an Az environment that targets your Azure Stack Hub instance
    Add-AzEnvironment -Name "AzureStackUser" -ArmEndpoint $ArmEndpoint
    
    # Sign in using the new service principal
    $SpSignin = Connect-AzAccount -Environment "AzureStackUser" `
    -ServicePrincipal `
    -CertificateThumbprint $SpObject.Thumbprint `
    -ApplicationId $SpObject.ClientId `
    -TenantId $TenantID
    
    # Output the service principal details
    $SpObject
    
    
  2. Po zakończeniu wykonywania skryptu zostaną wyświetlone informacje o rejestracji aplikacji. I ClientIDThumbprint uwierzytelniane, a następnie autoryzowane w celu uzyskania dostępu do zasobów zarządzanych przez Azure Resource Manager.

    ApplicationIdentifier : S-1-5-21-1512385356-3796245103-1243299919-1356
    ClientId              : 3c87e710-9f91-420b-b009-31fa9e430145
    Thumbprint            : 30202C11BE6864437B64CE36C8D988442082A0F1
    ApplicationName       : Azurestack-MyApp-c30febe7-1311-4fd8-9077-3d869db28342
    ClientSecret          :
    PSComputerName        : azs-ercs01
    RunspaceId            : a78c76bb-8cae-4db4-a45a-c1420613e01b
    

Zachowaj otwartą sesję konsoli programu PowerShell, ponieważ użyjemy jej z ApplicationIdentifier wartością w następnej sekcji.

Aktualizowanie poświadczeń certyfikatu

Teraz, po zarejestrowaniu aplikacji, w tej sekcji opisano, jak:

  1. Utwórz nowy certyfikat X509 z podpisem własnym do testowania.
  2. Zaktualizuj poświadczenia aplikacji, aktualizując jej właściwość Odcisk palca w celu dopasowania do nowego certyfikatu.

Zaktualizuj poświadczenia certyfikatu przy użyciu programu PowerShell, zastępując własne wartości następującymi symbolami zastępczymi:

Symbol zastępczy Opis Przykład
<PepVM> Nazwa maszyny wirtualnej uprzywilejowanego punktu końcowego w wystąpieniu Azure Stack Hub końcowego. "AzS-ERCS01"
<YourAppName> Opisowa nazwa rejestracji nowej aplikacji. "Moje narzędzie do zarządzania"
<YourCertificateLocation> Lokalizacja certyfikatu X509 w lokalnym magazynie certyfikatów. "Cert:\CurrentUser\My\AB5A8A3533CC7AA2025BF05120117E06DE407B34"
<AppIdentifier> Identyfikator przypisany do rejestracji aplikacji. "S-1-5-21-1512385356-3796245103-1243299919-1356"
  1. Przy użyciu sesji Windows PowerShell z podwyższonym poziomem uprawnień uruchom następujące polecenia cmdlet:

    # Create a PSSession to the PrivilegedEndpoint VM
    $Session = New-PSSession -ComputerName "<PepVM>" -ConfigurationName PrivilegedEndpoint -Credential $Creds -SessionOption (New-PSSessionOption -Culture en-US -UICulture en-US)
    
    # Create a self-signed certificate for testing purposes. 
    $NewCert = New-SelfSignedCertificate -CertStoreLocation "cert:\CurrentUser\My" -Subject "CN=<YourAppName>" -KeySpec KeyExchange
    # In production, use Get-Item to retrieve a managed certificate from the certificate store.
    # Alteratively, use Get-Certificate for a .cer file, or Get-PfxCertificate for a .pfx file.
    # $Cert = Get-Item "<YourCertificateLocation>"
    
    # Use the privileged endpoint to update the certificate thumbprint, used by <AppIdentifier>
    $SpObject = Invoke-Command -Session $Session -ScriptBlock {Set-GraphApplication -ApplicationIdentifier "<AppIdentifier>" -ClientCertificates $using:NewCert}
    $Session | Remove-PSSession
    
    # Output the updated service principal details
    $SpObject
    
  2. Po zakończeniu wykonywania skryptu zostaną wyświetlone zaktualizowane informacje o rejestracji aplikacji, w tym wartość odcisku palca dla nowego certyfikatu z podpisem własnym.

    ApplicationIdentifier : S-1-5-21-1512385356-3796245103-1243299919-1356
    ClientId              : 
    Thumbprint            : AF22EE716909041055A01FE6C6F5C5CDE78948E9
    ApplicationName       : Azurestack-MyApp-c30febe7-1311-4fd8-9077-3d869db28342
    ClientSecret          : 
    PSComputerName        : azs-ercs01
    RunspaceId            : a580f894-8f9b-40ee-aa10-77d4d142b4e5
    

Tworzenie rejestracji aplikacji, która używa poświadczeń wpisu tajnego klienta

Ostrzeżenie

Użycie tajnego certyfikatu klienta jest mniej bezpieczne niż użycie poświadczeń certyfikatu X509. Mechanizm uwierzytelniania jest nie tylko mniej bezpieczny, ale również zwykle wymaga osadzania tajnego w kodzie źródłowym aplikacji klienckiej. W związku z tym w przypadku aplikacji produkcyjnych zdecydowanie zaleca się użycie poświadczeń certyfikatu.

Teraz utworzysz kolejną rejestrację aplikacji, ale tym razem określ poświadczenia wpisu tajnego klienta. W przeciwieństwie do poświadczeń certyfikatu katalog ma możliwość generowania poświadczeń tajnych klienta. Zamiast określać klucz tajny klienta, użyj -GenerateClientSecret przełącznika , aby zażądać jego wygenerowania. Zastąp własne wartości następującymi symbolami zastępczymi:

Symbol zastępczy Opis Przykład
<PepVM> Nazwa maszyny wirtualnej uprzywilejowanego punktu końcowego w wystąpieniu Azure Stack Hub końcowego. "AzS-ERCS01"
<YourAppName> Opisowa nazwa rejestracji nowej aplikacji. "Moje narzędzie do zarządzania"
  1. Otwórz sesję Windows PowerShell z podwyższonym poziomem uprawnień i uruchom następujące polecenia cmdlet:

    # Sign in to PowerShell interactively, using credentials that have access to the VM running the Privileged Endpoint (typically <domain>\cloudadmin)
    $Creds = Get-Credential
    
    # Create a PSSession to the Privileged Endpoint VM
    $Session = New-PSSession -ComputerName "<PepVM>" -ConfigurationName PrivilegedEndpoint -Credential $Creds -SessionOption (New-PSSessionOption -Culture en-US -UICulture en-US)
    
    # Use the privileged endpoint to create the new app registration
    $SpObject = Invoke-Command -Session $Session -ScriptBlock {New-GraphApplication -Name "<YourAppName>" -GenerateClientSecret}
    $AzureStackInfo = Invoke-Command -Session $Session -ScriptBlock {Get-AzureStackStampInformation}
    $Session | Remove-PSSession
    
    # Using the stamp info for your Azure Stack Hub instance, populate the following variables:
    # - Az endpoint used for Azure Resource Manager operations 
    # - Audience for acquiring an OAuth token used to access Graph API 
    # - GUID of the directory tenant
    $ArmEndpoint = $AzureStackInfo.TenantExternalEndpoints.TenantResourceManager
    $GraphAudience = "https://graph." + $AzureStackInfo.ExternalDomainFQDN + "/"
    $TenantID = $AzureStackInfo.AADTenantID
    
    # Register and set an Az environment that targets your Azure Stack Hub instance
    Add-AzEnvironment -Name "AzureStackUser" -ArmEndpoint $ArmEndpoint
    
    # Sign in using the new service principal
    $securePassword = $SpObject.ClientSecret | ConvertTo-SecureString -AsPlainText -Force
    $credential = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList $SpObject.ClientId, $securePassword
    $SpSignin = Connect-AzAccount -Environment "AzureStackUser" -ServicePrincipal -Credential $credential -TenantId $TenantID
    
    # Output the service principal details
    $SpObject
    
  2. Po zakończeniu wykonywania skryptu zostaną wyświetlone informacje o rejestracji aplikacji. I ClientIDClientSecret uwierzytelniane, a następnie autoryzowane do dostępu do zasobów zarządzanych przez usługę Azure Resource Manager.

    ApplicationIdentifier : S-1-5-21-1634563105-1224503876-2692824315-2623
    ClientId              : 8e0ffd12-26c8-4178-a74b-f26bd28db601
    Thumbprint            : 
    ApplicationName       : Azurestack-YourApp-6967581b-497e-4f5a-87b5-0c8d01a9f146
    ClientSecret          : 6RUWLRoBw3EebBLgaWGiowCkoko5_j_ujIPjA8dS
    PSComputerName        : azs-ercs01
    RunspaceId            : 286daaa1-c9a6-4176-a1a8-03f543f90998
    

Zachowaj otwartą sesję konsoli programu PowerShell, ponieważ użyjemy jej z ApplicationIdentifier wartością w następnej sekcji.

Aktualizowanie poświadczeń tajnych klienta

Zaktualizuj poświadczenia tajnego klienta przy użyciu programu PowerShell, używając parametru ResetClientSecret, który natychmiast zmienia klucz tajny klienta. Zastąp własne wartości następującymi symbolami zastępczymi:

Symbol zastępczy Opis Przykład
<PepVM> Nazwa maszyny wirtualnej uprzywilejowanego punktu końcowego w wystąpieniu Azure Stack Hub końcowego. "AzS-ERCS01"
<AppIdentifier> Identyfikator przypisany do rejestracji aplikacji. "S-1-5-21-1634563105-1224503876-2692824315-2623"
  1. Przy użyciu sesji Windows PowerShell z podwyższonym poziomem uprawnień uruchom następujące polecenia cmdlet:

    # Create a PSSession to the PrivilegedEndpoint VM
    $Session = New-PSSession -ComputerName "<PepVM>" -ConfigurationName PrivilegedEndpoint -Credential $Creds -SessionOption (New-PSSessionOption -Culture en-US -UICulture en-US)
    
    # Use the privileged endpoint to update the client secret, used by <AppIdentifier>
    $SpObject = Invoke-Command -Session $Session -ScriptBlock {Set-GraphApplication -ApplicationIdentifier "<AppIdentifier>" -ResetClientSecret}
    $Session | Remove-PSSession
    
    # Output the updated service principal details
    $SpObject
    
  2. Po zakończeniu wykonywania skryptu zostaną wyświetlone zaktualizowane informacje o rejestracji aplikacji, w tym nowo wygenerowany klucz tajny klienta.

    ApplicationIdentifier : S-1-5-21-1634563105-1224503876-2692824315-2623
    ClientId              : 8e0ffd12-26c8-4178-a74b-f26bd28db601
    Thumbprint            : 
    ApplicationName       : Azurestack-YourApp-6967581b-497e-4f5a-87b5-0c8d01a9f146
    ClientSecret          : MKUNzeL6PwmlhWdHB59c25WDDZlJ1A6IWzwgv_Kn
    PSComputerName        : azs-ercs01
    RunspaceId            : 6ed9f903-f1be-44e3-9fef-e7e0e3f48564
    

Usuwanie rejestracji aplikacji

Teraz zobaczysz, jak usunąć rejestrację aplikacji z katalogu przy użyciu programu PowerShell.

Zastąp własne wartości następującymi symbolami zastępczymi:

Symbol zastępczy Opis Przykład
<PepVM> Nazwa maszyny wirtualnej uprzywilejowanego punktu końcowego w wystąpieniu Azure Stack Hub końcowego. "AzS-ERCS01"
<AppIdentifier> Identyfikator przypisany do rejestracji aplikacji. "S-1-5-21-1634563105-1224503876-2692824315-2623"
# Sign in to PowerShell interactively, using credentials that have access to the VM running the Privileged Endpoint (typically <domain>\cloudadmin)
$Creds = Get-Credential

# Create a PSSession to the PrivilegedEndpoint VM
$Session = New-PSSession -ComputerName "<PepVM>" -ConfigurationName PrivilegedEndpoint -Credential $Creds -SessionOption (New-PSSessionOption -Culture en-US -UICulture en-US)

# OPTIONAL: Use the privileged endpoint to get a list of applications registered in AD FS
$AppList = Invoke-Command -Session $Session -ScriptBlock {Get-GraphApplication}

# Use the privileged endpoint to remove application <AppIdentifier>
Invoke-Command -Session $Session -ScriptBlock {Remove-GraphApplication -ApplicationIdentifier "<AppIdentifier>"}

Podczas wywoływania polecenia cmdlet Remove-GraphApplication w uprzywilejowanym punkcie końcowym nie będą zwracane żadne dane wyjściowe, ale podczas wykonywania polecenia cmdlet zobaczysz dosłowne dane wyjściowe potwierdzenia w konsoli:

VERBOSE: Deleting graph application with identifier S-1-5-21-1634563105-1224503876-2692824315-2623.
VERBOSE: Remove-GraphApplication : BEGIN on AZS-ADFS01 on ADFSGraphEndpoint
VERBOSE: Application with identifier S-1-5-21-1634563105-1224503876-2692824315-2623 was deleted.
VERBOSE: Remove-GraphApplication : END on AZS-ADFS01 under ADFSGraphEndpoint configuration

Przypisywanie roli

Dostęp do zasobów platformy Azure przez użytkowników i aplikacje jest autoryzowany za pośrednictwem Role-Based Access Control (RBAC). Aby zezwolić aplikacji na dostęp do zasobów w ramach subskrypcji, musisz przypisać jej jednostkę usługi do roli dla określonego zasobu. Najpierw zdecyduj, która rola reprezentuje odpowiednie uprawnienia dla aplikacji. Aby dowiedzieć się więcej o dostępnych rolach, zobacz Wbudowane role dla zasobów platformy Azure.

Typ zasobu, który wybierzesz, określa również zakres dostępu dla aplikacji. Zakres dostępu można ustawić na poziomie subskrypcji, grupy zasobów lub zasobu. Uprawnienia są dziedziczone do niższych poziomów zakresu. Na przykład dodanie aplikacji do roli "Czytelnik" dla grupy zasobów oznacza, że może odczytywać grupę zasobów i wszystkie zasoby, które zawiera.

  1. Zaloguj się do odpowiedniego portalu na podstawie katalogu określonego podczas instalacji usługi Azure Stack Hub (na przykład Azure Portal dla usługi Azure AD lub portalu użytkowników usługi Azure Stack Hub dla AD FS). W tym przykładzie pokazujemy, że użytkownik zalogował się do Azure Stack Hub portalu użytkowników.

    Uwaga

    Aby dodać przypisania ról dla danego zasobu, konto użytkownika musi należeć do roli, która deklaruje Microsoft.Authorization/roleAssignments/write uprawnienie. Na przykład role wbudowane Właściciel lub Administrator dostępu użytkowników.

  2. Przejdź do zasobu, do który chcesz zezwolić aplikacji na dostęp. W tym przykładzie przypisz aplikację do roli w zakresie subskrypcji, wybierając pozycję Subskrypcje , a następnie określoną subskrypcję. Zamiast tego można wybrać grupę zasobów lub określony zasób, taki jak maszyna wirtualna.

    Wybieranie subskrypcji do przypisania

  3. Wybierz stronę Access Control (IAM), która jest uniwersalna dla wszystkich zasobów, które obsługują RBAC.

  4. Wybierz pozycję +Dodaj

  5. W obszarze Rola wybierz rolę, którą chcesz przypisać do aplikacji.

  6. W obszarze Wybierz wyszukaj aplikację przy użyciu pełnej lub częściowej nazwy aplikacji. Podczas rejestracji nazwa aplikacji jest generowana jako <YourAppName> - <ClientId> Azurestack-. Jeśli na przykład podczas tworzenia została użyta nazwa aplikacji App2 i ClientId 2bbe67d8-3fdb-4b62-87cf-cc41dd4344ff, pełna nazwa to Azurestack-App2-2bbe67d8-3fdb-4b62-87cf-cc41dd4344ff. Możesz wyszukać dokładny ciąg lub część, taką jak Azurestack lub Azurestack-App2.

  7. Po odnalezieniu aplikacji wybierz ją i będzie ona pokazywana w obszarze Wybrani członkowie.

  8. Wybierz pozycję Zapisz, aby zakończyć przypisywanie roli.

    Przypisywanie roli

  9. Po zakończeniu aplikacja zostanie wyświetlona na liście podmiotów zabezpieczeń przypisanych do bieżącego zakresu dla danej roli.

    Przypisana rola

Teraz, gdy aplikacja została nadana tożsamości i autoryzowana do uzyskiwania dostępu do zasobów, możesz włączyć skrypt lub kod, aby zalogować się i bezpiecznie uzyskać dostęp do Azure Stack Hub zasobów.

Następne kroki

Zarządzanie uprawnieniami użytkowników
Azure Active Directory Dokumentacji
Usługi Active Directory Federation Services