Udostępnij za pośrednictwem


Connect-AzureRmAccount

Nawiąż połączenie z platformą Azure przy użyciu uwierzytelnionego konta do użycia z żądaniami poleceń cmdlet usługi Azure Resource Manager.

Ostrzeżenie

Moduł AzureRM PowerShell jest oficjalnie przestarzały od 29 lutego 2024 r. Zaleca się migrowanie użytkowników z modułu AzureRM do modułu Az programu PowerShell w celu zapewnienia ciągłej obsługi i aktualizacji.

Mimo że moduł AzureRM może nadal działać, nie jest już utrzymywany ani obsługiwany, umieszczając wszelkie dalsze zastosowania według uznania i ryzyka użytkownika. Zapoznaj się z naszymi zasobami migracji, aby uzyskać wskazówki dotyczące przejścia do modułu Az.

Składnia

Connect-AzureRmAccount
       [-Environment <String>]
       [[-Credential] <PSCredential>]
       [-TenantId <String>]
       [-Subscription <String>]
       [-ContextName <String>]
       [-SkipContextPopulation]
       [-Force]
       [-Scope <ContextModificationScope>]
       [-DefaultProfile <IAzureContextContainer>]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]
Connect-AzureRmAccount
       [-Environment <String>]
       [-Credential] <PSCredential>
       [-ServicePrincipal]
       -TenantId <String>
       [-Subscription <String>]
       [-ContextName <String>]
       [-SkipContextPopulation]
       [-Force]
       [-Scope <ContextModificationScope>]
       [-DefaultProfile <IAzureContextContainer>]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]
Connect-AzureRmAccount
       [-Environment <String>]
       -CertificateThumbprint <String>
       -ApplicationId <String>
       [-ServicePrincipal]
       -TenantId <String>
       [-Subscription <String>]
       [-ContextName <String>]
       [-SkipContextPopulation]
       [-Force]
       [-Scope <ContextModificationScope>]
       [-DefaultProfile <IAzureContextContainer>]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]
Connect-AzureRmAccount
       [-Environment <String>]
       [-TenantId <String>]
       -AccessToken <String>
       [-GraphAccessToken <String>]
       [-KeyVaultAccessToken <String>]
       -AccountId <String>
       [-Subscription <String>]
       [-ContextName <String>]
       [-SkipValidation]
       [-SkipContextPopulation]
       [-Force]
       [-Scope <ContextModificationScope>]
       [-DefaultProfile <IAzureContextContainer>]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]
Connect-AzureRmAccount
       [-Environment <String>]
       [-TenantId <String>]
       [-AccountId <String>]
       [-Identity]
       [-ManagedServicePort <Int32>]
       [-ManagedServiceHostName <String>]
       [-ManagedServiceSecret <SecureString>]
       [-Subscription <String>]
       [-ContextName <String>]
       [-SkipContextPopulation]
       [-Force]
       [-Scope <ContextModificationScope>]
       [-DefaultProfile <IAzureContextContainer>]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]

Opis

Polecenie cmdlet Connect-AzureRmAccount łączy się z platformą Azure przy użyciu uwierzytelnionego konta do użycia z żądaniami poleceń cmdlet usługi Azure Resource Manager. To uwierzytelnione konto można używać tylko w przypadku poleceń cmdlet usługi Azure Resource Manager. Aby dodać uwierzytelnione konto do użycia z poleceniami cmdlet zarządzania usługami, użyj polecenia cmdlet Add-AzureAccount lub Import-AzurePublishSettingsFile. Jeśli nie zostanie znaleziony kontekst dla bieżącego użytkownika, to polecenie wypełni listę kontekstową użytkownika kontekstem dla każdej z subskrypcji (pierwszych 25). Listę kontekstów utworzonych dla użytkownika można znaleźć, uruchamiając polecenie "Get-AzureRmContext -ListAvailable". Aby pominąć tę populację kontekstu, możesz uruchomić to polecenie za pomocą parametru przełącznika "-SkipContextPopulation". Po wykonaniu tego polecenia cmdlet możesz odłączyć się od konta platformy Azure przy użyciu polecenia Disconnect-AzureRmAccount.

Przykłady

Przykład 1. Używanie logowania interakcyjnego do nawiązywania połączenia z kontem platformy Azure

PS C:\> Connect-AzureRmAccount

Account                SubscriptionName TenantId                Environment
-------                ---------------- --------                -----------
azureuser@contoso.com  Subscription1    xxxx-xxxx-xxxx-xxxx     AzureCloud

To polecenie łączy się z kontem platformy Azure. Aby uruchomić polecenia cmdlet usługi Azure Resource Manager przy użyciu tego konta, musisz podać poświadczenia konta Microsoft lub identyfikatora organizacyjnego w wierszu polecenia. Jeśli dla poświadczeń jest włączone uwierzytelnianie wieloskładnikowe, musisz zalogować się przy użyciu opcji interakcyjnej lub użyć uwierzytelniania jednostki usługi.

Przykład 2. Nawiązywanie połączenia z kontem platformy Azure przy użyciu poświadczeń identyfikatora organizacyjnego

PS C:\> $Credential = Get-Credential
PS C:\> Connect-AzureRmAccount -Credential $Credential

Account                SubscriptionName TenantId                Environment
-------                ---------------- --------                -----------
azureuser@contoso.com  Subscription1    xxxx-xxxx-xxxx-xxxx     AzureCloud

Pierwsze polecenie wyświetli monit o poświadczenia użytkownika (nazwa użytkownika i hasło), a następnie zapisze je w zmiennej $Credential. Drugie polecenie łączy się z kontem platformy Azure przy użyciu poświadczeń przechowywanych w $Credential. To konto uwierzytelnia się w usłudze Azure Resource Manager przy użyciu poświadczeń identyfikatora organizacyjnego. Nie można użyć uwierzytelniania wieloskładnikowego ani poświadczeń konta Microsoft do uruchamiania poleceń cmdlet usługi Azure Resource Manager przy użyciu tego konta.

Przykład 3. Nawiązywanie połączenia z kontem jednostki usługi platformy Azure

PS C:\> $Credential = Get-Credential

PS C:\> Connect-AzureRmAccount -Credential $Credential -Tenant "xxxx-xxxx-xxxx-xxxx" -ServicePrincipal
Account                SubscriptionName TenantId                Environment
-------                ---------------- --------                -----------
xxxx-xxxx-xxxx-xxxx    Subscription1    xxxx-xxxx-xxxx-xxxx     AzureCloud

Pierwsze polecenie pobiera poświadczenia jednostki usługi (identyfikator aplikacji i klucz tajny jednostki usługi), a następnie zapisuje je w zmiennej $Credential. Drugie polecenie nawiązuje połączenie z platformą Azure przy użyciu poświadczeń jednostki usługi przechowywanych w $Credential dla określonej dzierżawy. Parametr przełącznika ServicePrincipal wskazuje, że konto uwierzytelnia się jako jednostka usługi.

Przykład 4. Używanie logowania interakcyjnego do nawiązywania połączenia z kontem dla określonej dzierżawy i subskrypcji

PS C:\> Connect-AzureRmAccount -Tenant "xxxx-xxxx-xxxx-xxxx" -SubscriptionId "yyyy-yyyy-yyyy-yyyy"
Account                SubscriptionName TenantId                Environment
-------                ---------------- --------                -----------
azureuser@contoso.com  Subscription1    xxxx-xxxx-xxxx-xxxx     AzureCloud

To polecenie łączy się z kontem platformy Azure i skonfigurowano program AzureRM PowerShell do uruchamiania poleceń cmdlet dla określonej dzierżawy i subskrypcji domyślnie.

Przykład 5. Dodawanie konta przy użyciu identyfikatora logowania tożsamości usługi zarządzanej

PS C:\> Connect-AzureRmAccount -MSI

Account                SubscriptionName TenantId                Environment
-------                ---------------- --------                -----------
MSI@50342              Subscription1    xxxx-xxxx-xxxx-xxxx     AzureCloud

To polecenie łączy się przy użyciu tożsamości usługi zarządzanej środowiska hosta (na przykład w przypadku wykonania na maszynie wirtualnej z przypisaną tożsamością usługi zarządzanej, umożliwi to zalogowanie się przy użyciu tej przypisanej tożsamości)

Przykład 6. Dodawanie konta przy użyciu certyfikatów

# For more information on creating a self-signed certificate
# and giving it proper permissions, please see the following:
# https://docs.microsoft.com/en-us/azure/active-directory/develop/howto-authenticate-service-principal-powershell
PS C:\> $Thumbprint = "0SZTNJ34TCCMUJ5MJZGR8XQD3S0RVHJBA33Z8ZXV"
PS C:\> $TenantId = "00001111-aaaa-2222-bbbb-3333cccc4444"
PS C:\> $ApplicationId = "00001111-aaaa-2222-bbbb-3333cccc4444"
PS C:\> Connect-AzureRmAccount -CertificateThumbprint $Thumbprint -ApplicationId $ApplicationId -Tenant $TenantId -ServicePrincipal

Account             SubscriptionName TenantId            Environment
-------             ---------------- --------            -----------
xxxx-xxxx-xxxx-xxxx Subscription1    xxxx-xxxx-xxxx-xxxx AzureCloud

Account          : 00001111-aaaa-2222-bbbb-3333cccc4444
SubscriptionName : MyTestSubscription
SubscriptionId   : 85f0f653-1f86-4d2c-a9f1-042efc00085c
TenantId         : 00001111-aaaa-2222-bbbb-3333cccc4444
Environment      : AzureCloud

To polecenie łączy się z kontem platformy Azure przy użyciu uwierzytelniania jednostki usługi opartej na certyfikatach. Jednostka usługi używana do uwierzytelniania powinna zostać utworzona przy użyciu danego certyfikatu.

Parametry

-AccessToken

Określa token dostępu.

Typ:String
Position:Named
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-AccountId

Identyfikator konta dla tokenu dostępu

Typ:String
Position:Named
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-ApplicationId

SPN

Typ:String
Position:Named
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-CertificateThumbprint

Skrót certyfikatu (odcisk palca)

Typ:String
Position:Named
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-Confirm

Monituje o potwierdzenie przed uruchomieniem polecenia cmdlet.

Typ:SwitchParameter
Aliasy:cf
Position:Named
Domyślna wartość:False
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-ContextName

Nazwa domyślnego kontekstu z tego identyfikatora logowania. Po zalogowaniu będzie można wybrać ten kontekst według tej nazwy.

Typ:String
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-Credential

Określa obiekt PSCredential. Aby uzyskać więcej informacji na temat obiektu PSCredential, wpisz Get-Help Get-Credential. Obiekt PSCredential zawiera identyfikator użytkownika i hasło dla poświadczeń identyfikatora organizacyjnego lub identyfikator aplikacji i wpis tajny dla poświadczeń jednostki usługi.

Typ:PSCredential
Position:0
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-DefaultProfile

Poświadczenia, konto, dzierżawa i subskrypcja używane do komunikacji z platformą Azure.

Typ:IAzureContextContainer
Aliasy:AzureRmContext, AzureCredential
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-Environment

Środowisko zawierające konto do zalogowania

Typ:String
Aliasy:EnvironmentName
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-Force

Zastąp istniejący kontekst tą samą nazwą, jeśli istnieje.

Typ:SwitchParameter
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-GraphAccessToken

AccessToken dla usługi Graph

Typ:String
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-Identity

Zaloguj się przy użyciu tożsamości usługi zarządzanej w bieżącym środowisku.

Typ:SwitchParameter
Aliasy:MSI, ManagedService
Position:Named
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-KeyVaultAccessToken

AccessToken dla usługi KeyVault

Typ:String
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-ManagedServiceHostName

Nazwa hosta logowania usługi zarządzanej

Typ:String
Position:Named
Domyślna wartość:localhost
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-ManagedServicePort

Numer portu logowania usługi zarządzanej

Typ:Int32
Position:Named
Domyślna wartość:50342
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-ManagedServiceSecret

Wpis tajny używany w przypadku niektórych rodzajów logowania usługi zarządzanej.

Typ:SecureString
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-Scope

Określa na przykład zakres zmian kontekstu, czy zmiany mają zastosowanie tylko do bieżącego procesu, czy do wszystkich sesji uruchomionych przez tego użytkownika.

Typ:ContextModificationScope
Dopuszczalne wartości:Process, CurrentUser
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-ServicePrincipal

Wskazuje, że to konto jest uwierzytelniane przez podanie poświadczeń jednostki usługi.

Typ:SwitchParameter
Position:Named
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-SkipContextPopulation

Pomija populację kontekstu, jeśli nie znaleziono kontekstów.

Typ:SwitchParameter
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-SkipValidation

Pomiń walidację tokenu dostępu

Typ:SwitchParameter
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-Subscription

Nazwa lub identyfikator subskrypcji

Typ:String
Aliasy:SubscriptionName, SubscriptionId
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-TenantId

Opcjonalna nazwa domeny lub identyfikator dzierżawy. Nazwa domeny nie będzie działać we wszystkich sytuacjach logowania. W przypadku logowania Dostawca rozwiązań w chmurze (CSP) wymagany jest identyfikator dzierżawy.

Typ:String
Aliasy:Domain
Position:Named
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-WhatIf

Pokazuje, co się stanie po uruchomieniu polecenia cmdlet. Polecenie cmdlet nie zostało uruchomione.

Typ:SwitchParameter
Aliasy:wi
Position:Named
Domyślna wartość:False
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

Dane wejściowe

String

Parametry: Subskrypcja (ByValue)

Dane wyjściowe

PSAzureProfile