Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Program Open PowerShell obsługuje kilka metod uwierzytelniania zabezpieczeń i zarządzania nimi. Podczas pisania skryptów automatyzacji zalecane jest użycie tokenu dostępu z niezbędnymi uprawnieniami. Możliwie największe ograniczenie uprawnień logowania w danym przypadku użycia pomaga w zabezpieczeniu zasobów platformy Azure.
Logowanie interakcyjne
Aby zalogować się interaktywnie, użyj polecenia cmdlet Connect-SecMgmtAccount .
Connect-SecMgmtAccount
Po uruchomieniu tego polecenia cmdlet zostanie otwarta przeglądarka, w której będzie można uwierzytelnić się. Jeśli system używany do nawiązywania połączenia nie jest przeglądarką, zostanie podany kod. Aby przeprowadzić uwierzytelnianie, skopiuj ten kod i wklej go w https://microsoft.com/devicelogin przeglądarce.
Ważne
Autoryzacja poświadczeń nazwy użytkownika/hasła została usunięta w obszarze Zabezpieczenia i zarządzanie Otwórz program PowerShell ze względu na wymagania dotyczące zabezpieczeń partnera. Jeśli używasz autoryzacji poświadczeń do celów automatyzacji, zamiast tego zaimplementuj model bezpiecznej aplikacji , aby umożliwić uwierzytelnianie przy użyciu tokenu dostępu wygenerowanego przy użyciu tokenu odświeżania.
Logowanie za pomocą jednostki usługi
Jednostki usługi to nieinterakcyjne konta platformy Azure. Podobnie jak w przypadku innych kont użytkownika, ich uprawnieniami zarządza się za pomocą usługi Azure Active Directory. Udzielając jednostce usługi tylko potrzebnych uprawnień, możesz zapewnić bezpieczeństwo skryptom automatyzacji.
Aby zalogować się przy użyciu jednostki usługi, podaj argument -ServicePrincipal
w poleceniu cmdlet Connect-SecMgmtAccount
. Będziesz również potrzebować identyfikatora aplikacji jednostki usługi, poświadczeń logowania i identyfikatora dzierżawy skojarzonego z jednostką usługi. Sposób logowania za pomocą jednostki usługi zależy od tego, czy jest on skonfigurowany do uwierzytelniania opartego na hasłach, czy opartego na certyfikatach.
Uwierzytelnianie oparte na certyfikacie
Uwierzytelnianie oparte na certyfikatach wymaga, aby program Security and Management Open PowerShell mógł pobierać informacje z lokalnego magazynu certyfikatów na podstawie odcisku palca certyfikatu.
Connect-SecMgmtAccount -CertificateThumbprint '<thumbprint>' -ServicePrincipal -TenantId 'xxxx-xxxx-xxxx-xxxx'
W programie PowerShell 5.1 zarządzanie magazynem certyfikatów i jego badanie może odbywać się za pomocą modułu infrastruktury PKI. Dla programu PowerShell Core w wersji 6.x i późniejszych proces jest bardziej skomplikowany. Poniższe skrypty pokazują, jak zaimportować istniejący certyfikat do magazynu certyfikatów dostępnego w programie PowerShell.
Importowanie certyfikatu w programie PowerShell 5.1
# Import a PFX
$credentials = Get-Credential -Message "Provide PFX private key password"
Import-PfxCertificate -FilePath <path to certificate> -Password $credentials.Password -CertStoreLocation cert:\CurrentUser\My
Importowanie certyfikatu w programie PowerShell Core w wersji 6.x lub nowszej
# Import a PFX
$storeName = [System.Security.Cryptography.X509Certificates.StoreName]::My
$storeLocation = [System.Security.Cryptography.X509Certificates.StoreLocation]::CurrentUser
$store = [System.Security.Cryptography.X509Certificates.X509Store]::new($storeName, $storeLocation)
$certPath = <path to certificate>
$credentials = Get-Credential -Message "Provide PFX private key password"
$flag = [System.Security.Cryptography.X509Certificates.X509KeyStorageFlags]::Exportable
$certificate = [System.Security.Cryptography.X509Certificates.X509Certificate2]::new($certPath, $credentials.Password, $flag)
$store.Open([System.Security.Cryptography.X509Certificates.OpenFlags]::ReadWrite)
$store.Add($Certificate)
$store.Close()
Logowanie się do innej chmury
Usługi w chmurze firmy Microsoft oferują środowiska zgodne z regionalnymi przepisami dotyczącymi obsługi danych. W przypadku kont w chmurze regionalnej określ środowisko po zalogowaniu się, używając argumentu -Environment
. Jeśli na przykład Twoje konto znajduje się w chmurze w Chinach:
Connect-SecMgmtAccount -Environment AzureChinaCloud
Następujące polecenie pozwala uzyskać listę dostępnych środowisk:
Get-PartnerEnvironment | Select-Object Name