Connect-AzureAD

Nawiązuje połączenie z uwierzytelnionymi kontami, aby używać żądań poleceń cmdlet usługi Active Directory.

Składnia

Connect-AzureAD
       [-AzureEnvironmentName <EnvironmentName>]
       [-TenantId <String>]
       [-Credential <PSCredential>]
       [-AccountId <String>]
       [-LogLevel <LogLevel>]
       [-LogFilePath <String>]
       [-InformationAction <ActionPreference>]
       [-InformationVariable <String>]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]
Connect-AzureAD
       [-AzureEnvironmentName <EnvironmentName>]
       -TenantId <String>
       -CertificateThumbprint <String>
       -ApplicationId <String>
       [-LogLevel <LogLevel>]
       [-LogFilePath <String>]
       [-InformationAction <ActionPreference>]
       [-InformationVariable <String>]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]
Connect-AzureAD
       [-AzureEnvironmentName <EnvironmentName>]
       [-TenantId <String>]
       -AadAccessToken <String>
       [-MsAccessToken <String>]
       -AccountId <String>
       [-LogLevel <LogLevel>]
       [-LogFilePath <String>]
       [-InformationAction <ActionPreference>]
       [-InformationVariable <String>]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]

Opis

Polecenie cmdlet Connect-AzureAD łączy uwierzytelnione konto do użycia dla żądań poleceń cmdlet usługi Azure Active Directory.

To uwierzytelnione konto można używać tylko z poleceniami cmdlet usługi Azure Active Directory.

Przykłady

Przykład 1. Łączenie sesji programu PowerShell z dzierżawą

PS C:\> Connect-AzureAD -Confirm

To polecenie łączy bieżącą sesję programu PowerShell z dzierżawą usługi Azure Active Directory. Polecenie wyświetla monit o nazwę użytkownika i hasło dzierżawy, z którą chcesz nawiązać połączenie. Parametr Potwierdzanie monituje o potwierdzenie.

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. Łączenie sesji przy użyciu zmiennej

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

Pierwsze polecenie pobiera poświadczenia użytkownika, a następnie przechowuje je w zmiennej $Credential.

Drugie polecenie łączy bieżącą sesję programu PowerShell przy użyciu poświadczeń w $Credential.

To konto uwierzytelnia się w usłudze Azure Active Directory 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 Active Directory przy użyciu tego konta.

Przykład 3. Łączenie sesji jako jednostki usługi

# Login to Azure AD PowerShell With Admin Account
Connect-AzureAD 

# Create the self signed cert
$currentDate = Get-Date
$endDate = $currentDate.AddYears(1)
$notAfter = $endDate.AddYears(1)
$pwd = "<password>"
$thumb = (New-SelfSignedCertificate -CertStoreLocation cert:\localmachine\my -DnsName com.foo.bar -KeyExportPolicy Exportable -Provider "Microsoft Enhanced RSA and AES Cryptographic Provider" -NotAfter $notAfter).Thumbprint
$pwd = ConvertTo-SecureString -String $pwd -Force -AsPlainText
Export-PfxCertificate -cert "cert:\localmachine\my\$thumb" -FilePath c:\temp\examplecert.pfx -Password $pwd

# Load the certificate
$cert = New-Object System.Security.Cryptography.X509Certificates.X509Certificate("C:\temp\examplecert.pfx", $pwd)
$keyValue = [System.Convert]::ToBase64String($cert.GetRawCertData())


# Create the Azure Active Directory Application
$application = New-AzureADApplication -DisplayName "test123" -IdentifierUris "https://test123"
New-AzureADApplicationKeyCredential -ObjectId $application.ObjectId -CustomKeyIdentifier "Test123" -StartDate $currentDate -EndDate $endDate -Type AsymmetricX509Cert -Usage Verify -Value $keyValue

# Create the Service Principal and connect it to the Application
$sp=New-AzureADServicePrincipal -AppId $application.AppId

# Give the Service Principal Reader access to the current tenant (Get-AzureADDirectoryRole)
Add-AzureADDirectoryRoleMember -ObjectId 5997d714-c3b5-4d5b-9973-ec2f38fd49d5 -RefObjectId $sp.ObjectId

# Get Tenant Detail
$tenant=Get-AzureADTenantDetail
# Now you can login to Azure PowerShell with your Service Principal and Certificate
Connect-AzureAD -TenantId $tenant.ObjectId -ApplicationId  $sp.AppId -CertificateThumbprint $thumb

To polecenie uwierzytelnia użytkownika w usłudze Azure Active Directory jako jednostkę usługi.

Parametry

-AadAccessToken

Określa token dostępu usługi Azure Active Directory Graph.

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-AccountId

Określa identyfikator konta. Podczas uwierzytelniania przy użyciu tokenu dostępu użytkownika należy określić nazwę UPN użytkownika.

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-ApplicationId

Określa identyfikator aplikacji jednostki usługi.

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-AzureEnvironmentName

Określa nazwę środowiska platformy Azure. Dopuszczalne wartości dla tego parametru to:

  • AzureCloud
  • AzureChinaCloud
  • AzureUSGovernment
  • AzureGermanyCloud

Wartość domyślna to AzureCloud.

Type:EnvironmentName
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-CertificateThumbprint

Określa odcisk palca certyfikatu cyfrowego klucza publicznego X.509 konta użytkownika, który ma uprawnienia do wykonania tej akcji.

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-Confirm

Monituje o potwierdzenie przed uruchomieniem polecenia cmdlet.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Credential

Określa obiekt PSCredential. Aby uzyskać więcej informacji na temat obiektu PSCredential, wpisz Get-Help Get-Credential.

Obiekt PSCredential udostępnia identyfikator użytkownika i hasło dla poświadczeń identyfikatora organizacyjnego.

Type:PSCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-InformationAction

Określa, jak to polecenie cmdlet reaguje na zdarzenie informacyjne. Dopuszczalne wartości dla tego parametru to:

  • Kontynuuj
  • Zignoruj
  • Zapytać
  • SilentlyContinue
  • Stop
  • Wstrzymanie
Type:ActionPreference
Aliases:infa
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-InformationVariable

Określa zmienną, w której ma być przechowywany komunikat zdarzenia informacji.

Type:String
Aliases:iv
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-LogFilePath

Ścieżka, w której jest zapisywany plik dziennika dla tej sesji programu PowerShell. Podaj tutaj wartość, jeśli musisz odejść od domyślnej lokalizacji pliku dziennika programu PowerShell.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-LogLevel

Określa poziom dziennika. Wartości accdeptable dla tego parametru to:

  • Info
  • Błąd
  • Ostrzeżenie
  • Brak

Wartość domyślna to Informacje.

Type:LogLevel
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-MsAccessToken

Określa token dostępu programu Microsoft Graph.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-TenantId

Określa identyfikator dzierżawy.

Jeśli nie określisz tego parametru, konto zostanie uwierzytelnione w dzierżawie głównej.

Należy określić parametr TenantId, aby uwierzytelnić się jako jednostka usługi lub podczas korzystania z konta Microsoft.

Type:String
Aliases:Domain, TenantDomain
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-WhatIf

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

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False