Поделиться через


Connect-AzAccount

Подключитесь к Azure с учетной записью, прошедшей проверку подлинности, для использования с командлетами из модулей Az PowerShell.

Синтаксис

Connect-AzAccount
       [-Environment <String>]
       [-Tenant <String>]
       [-AccountId <String>]
       [-Subscription <String>]
       [-AuthScope <String>]
       [-ContextName <String>]
       [-SkipContextPopulation]
       [-MaxContextPopulation <Int32>]
       [-UseDeviceAuthentication]
       [-Force]
       [-Scope <ContextModificationScope>]
       [-DefaultProfile <IAzureContextContainer>]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]
Connect-AzAccount
       [-Environment <String>]
       -Credential <PSCredential>
       [-ServicePrincipal]
       -Tenant <String>
       [-Subscription <String>]
       [-AuthScope <String>]
       [-ContextName <String>]
       [-SkipContextPopulation]
       [-MaxContextPopulation <Int32>]
       [-Force]
       [-Scope <ContextModificationScope>]
       [-DefaultProfile <IAzureContextContainer>]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]
Connect-AzAccount
       [-Environment <String>]
       -Credential <PSCredential>
       [-Tenant <String>]
       [-Subscription <String>]
       [-AuthScope <String>]
       [-ContextName <String>]
       [-SkipContextPopulation]
       [-MaxContextPopulation <Int32>]
       [-Force]
       [-Scope <ContextModificationScope>]
       [-DefaultProfile <IAzureContextContainer>]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]
Connect-AzAccount
       [-Environment <String>]
       -CertificateThumbprint <String>
       -ApplicationId <String>
       [-ServicePrincipal]
       -Tenant <String>
       [-Subscription <String>]
       [-AuthScope <String>]
       [-ContextName <String>]
       [-SkipContextPopulation]
       [-MaxContextPopulation <Int32>]
       [-Force]
       [-SendCertificateChain]
       [-Scope <ContextModificationScope>]
       [-DefaultProfile <IAzureContextContainer>]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]
Connect-AzAccount
       [-Environment <String>]
       -ApplicationId <String>
       [-ServicePrincipal]
       -Tenant <String>
       [-Subscription <String>]
       [-ContextName <String>]
       [-SkipContextPopulation]
       [-MaxContextPopulation <Int32>]
       [-Force]
       -FederatedToken <String>
       [-Scope <ContextModificationScope>]
       [-DefaultProfile <IAzureContextContainer>]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]
Connect-AzAccount
       [-Environment <String>]
       -ApplicationId <String>
       [-ServicePrincipal]
       -Tenant <String>
       [-Subscription <String>]
       [-ContextName <String>]
       [-SkipContextPopulation]
       [-MaxContextPopulation <Int32>]
       [-Force]
       [-SendCertificateChain]
       -CertificatePath <String>
       [-CertificatePassword <SecureString>]
       [-Scope <ContextModificationScope>]
       [-DefaultProfile <IAzureContextContainer>]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]
Connect-AzAccount
       [-Environment <String>]
       [-Tenant <String>]
       -AccessToken <String>
       [-GraphAccessToken <String>]
       [-MicrosoftGraphAccessToken <String>]
       [-KeyVaultAccessToken <String>]
       -AccountId <String>
       [-Subscription <String>]
       [-ContextName <String>]
       [-SkipValidation]
       [-SkipContextPopulation]
       [-MaxContextPopulation <Int32>]
       [-Force]
       [-Scope <ContextModificationScope>]
       [-DefaultProfile <IAzureContextContainer>]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]
Connect-AzAccount
       [-Environment <String>]
       [-Tenant <String>]
       [-AccountId <String>]
       [-Identity]
       [-Subscription <String>]
       [-AuthScope <String>]
       [-ContextName <String>]
       [-SkipContextPopulation]
       [-MaxContextPopulation <Int32>]
       [-Force]
       [-Scope <ContextModificationScope>]
       [-DefaultProfile <IAzureContextContainer>]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]

Описание

Командлет Connect-AzAccount подключается к Azure с учетной записью, прошедшей проверку подлинности, для использования с командлетами из модулей Az PowerShell. Эту учетную запись с проверкой подлинности можно использовать только с запросами Azure Resource Manager. Чтобы добавить проверенную учетную запись для использования с управлением службами, используйте Add-AzureAccount командлет из модуля Azure PowerShell. Если контекст для текущего пользователя не найден, список контекста пользователя заполняется контекстом для каждой из первых 25 подписок. Список контекстов, созданных для пользователя, можно найти, выполнив команду Get-AzContext -ListAvailable. Чтобы пропустить эту популяцию контекста, укажите параметр переключателя SkipContextPopulation . После выполнения этого командлета можно отключиться от учетной записи Azure с помощью Disconnect-AzAccount.

Примеры

Пример 1. Подключение к учетной записи Azure

В этом примере выполняется подключение к учетной записи Azure. Необходимо указать учетную запись Майкрософт или учетные данные идентификатора организации. Если для учетных данных включена многофакторная проверка подлинности, необходимо войти в систему с помощью интерактивного параметра или использовать проверку подлинности субъекта-службы.

Connect-AzAccount

Please select the account you want to login with.

Retrieving subscriptions for the selection...
[Tenant and subscription selection]

No      Subscription name                       Subscription ID                             Tenant domain name        
----    ------------------------------------    ----------------------------------------    --------------------------
[1]     Subscription1                           xxxx-xxxx-xxxx-xxxx                         xxxxxxxxx.xxxxxxxxxxx.com
[2]     Subscription2                           xxxx-xxxx-xxxx-xxxx                         xxxxxxxxx.xxxxxxxxxxx.com
...
[9]     Subscription9                           xxxx-xxxx-xxxx-xxxx                         xxxxxxxxx.xxxxxxxxxxx.com

Select a tenant and subscription: 1 <requires user's input here>

Subscription name                       Tenant domain name
------------------------------------    --------------------------
Subscription1                           xxxxxxxxx.xxxxxxxxxxx.com

[Announcements]
Share your feedback regarding your experience with `Connect-AzAccount` at: https://aka.ms/azloginfeedback

If you encounter any problem, please open an issue at: https://aka.ms/azpsissue

SubscriptionName     Tenant
-----------------    ------
Subscription1        xxxxxxxxx.xxxxxxxxxxx.com

Пример 2. Подключение к Azure с помощью учетных данных идентификатора организации

Этот сценарий работает только в том случае, если пользователь не включает многофакторную проверку подлинности. Первая командная строка для учетных данных пользователя и сохраняет их в переменной $Credential . Вторая команда подключается к учетной записи Azure с помощью учетных данных, хранящихся в $Credential. Эта учетная запись проходит проверку подлинности в Azure с помощью учетных данных идентификатора организации.

$Credential = Get-Credential
Connect-AzAccount -Credential $Credential

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

Пример 3. Подключение к Azure с помощью учетной записи субъекта-службы

Эта команда сохраняет учетные данные субъекта-службы в переменной $Credential . Затем он подключается к указанному клиенту Azure с помощью учетных данных субъекта-службы, хранящихся в переменной $Credential . Параметр коммутатора ServicePrincipal указывает, что учетная запись проходит проверку подлинности в качестве субъекта-службы.

$SecurePassword = Read-Host -Prompt 'Enter a Password' -AsSecureString
$TenantId = 'yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyy'
$ApplicationId = 'zzzzzzzz-zzzz-zzzz-zzzz-zzzzzzzz'
$Credential = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList $ApplicationId, $SecurePassword
Connect-AzAccount -ServicePrincipal -TenantId $TenantId -Credential $Credential

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

Пример 4. Использование интерактивного входа для подключения к конкретному клиенту и подписке

Этот пример подключается к учетной записи Azure с указанным клиентом и подпиской.

Connect-AzAccount -Tenant 'xxxx-xxxx-xxxx-xxxx' -SubscriptionId 'yyyy-yyyy-yyyy-yyyy'

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

Пример 5. Подключение с помощью управляемого удостоверения службы

В этом примере подключается с помощью управляемого удостоверения управляемой службы (MSI) назначаемой системой среды узла. Например, вы войдите в Azure из виртуальной машины с назначенным MSI.

Connect-AzAccount -Identity
Set-AzContext -Subscription Subscription1

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

Пример 6. Подключение с помощью имени входа управляемого удостоверения службы и ClientId

Этот пример подключается с помощью управляемого удостоверения службы myUserAssignedIdentity. В примере добавляется удостоверение, назначаемое пользователем, для виртуальной машины, а затем устанавливается подключение с использованием ClientId этого удостоверения. Дополнительные сведения см. в статье Настройка управляемых удостоверений для ресурсов Azure на виртуальной машине Azure.

$identity = Get-AzUserAssignedIdentity -ResourceGroupName 'myResourceGroup' -Name 'myUserAssignedIdentity'
Get-AzVM -ResourceGroupName contoso -Name testvm | Update-AzVM -IdentityType UserAssigned -IdentityId $identity.Id
Connect-AzAccount -Identity -AccountId $identity.ClientId # Run on the virtual machine

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

Пример 7. Подключение с помощью сертификатов

В этом примере выполняется подключение к учетной записи Azure с помощью проверки подлинности субъекта-службы на основе сертификатов. Субъект-служба, используемый для проверки подлинности, должен быть создан с указанным сертификатом. Дополнительные сведения о создании самозаверяющих сертификатов и назначении им разрешений см. в статье "Использование Azure PowerShell для создания субъекта-службы с сертификатом"

$Thumbprint = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'
$TenantId = 'yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyy'
$ApplicationId = '00000000-0000-0000-0000-00000000'
Connect-AzAccount -CertificateThumbprint $Thumbprint -ApplicationId $ApplicationId -Tenant $TenantId -ServicePrincipal

Account                      SubscriptionName TenantId                        Environment
-------                      ---------------- --------                        -----------
xxxxxxxx-xxxx-xxxx-xxxxxxxxx Subscription1    yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyy AzureCloud

Account          : xxxxxxxx-xxxx-xxxx-xxxxxxxx
SubscriptionName : MyTestSubscription
SubscriptionId   : zzzzzzzz-zzzz-zzzz-zzzz-zzzzzzzz
TenantId         : yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyy
Environment      : AzureCloud

Пример 8. Подключение к AuthScope

AuthScope используется для поддержки сценария, в котором ресурсы плоскости данных имеют расширенную проверку подлинности, чем ресурсы ARM, например, для хранения требуется MFA, но ARM не поддерживает. После указания AuthScope, например storage, Connect-AzAccount сначала войдет в систему с областью https://storage.azure.com/хранения, а затем автоматически требует маркера для ARM.

Connect-AzAccount -AuthScope Storage

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

Пример 9. Подключение с помощью файла сертификата

В этом примере выполняется подключение к учетной записи Azure с помощью проверки подлинности субъекта-службы на основе сертификатов. Файл сертификата, указанный в CertficatePathфайле, должен содержать как сертификат, так и закрытый ключ в качестве входных данных.

$SecurePassword = ConvertTo-SecureString -String "Password123!" -AsPlainText -Force
$TenantId = 'yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyy'
$ApplicationId = 'zzzzzzzz-zzzz-zzzz-zzzz-zzzzzzzz'
Connect-AzAccount -ServicePrincipal -ApplicationId $ApplicationId -TenantId $TenantId -CertificatePath './certificatefortest.pfx' -CertificatePassword $securePassword

Account                     SubscriptionName TenantId                        Environment
-------                     ---------------- --------                        -----------
xxxxxxxx-xxxx-xxxx-xxxxxxxx Subscription1    yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyy AzureCloud

Пример 10. Интерактивное подключение с помощью WAM

В этом примере показано, как включить конфигурацию WAM (диспетчер веб-учетных записей) и использовать ее для подключения к Azure.

Update-AzConfig -EnableLoginByWam $true
Connect-AzAccount

Account                     SubscriptionName TenantId                        Environment
-------                     ---------------- --------                        -----------
xxxxxxxx-xxxx-xxxx-xxxxxxxx Subscription1    yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyy AzureCloud

Параметры

-AccessToken

Указывает маркер доступа.

Внимание

Маркеры доступа — это тип учетных данных. Необходимо принять соответствующие меры предосторожности, чтобы обеспечить их конфиденциальность. Маркеры доступа также время ожидания и могут препятствовать выполнению длительных задач.

Тип:String
Position:Named
значение по умолчанию:None
Обязательно:True
Accept pipeline input:False
Accept wildcard characters:False

-AccountId

Идентификатор учетной записи/ идентификатор пользователя или имя пользователя для входа с помощью параметра Default (UserWithSubscriptionId); Идентификатор учетной записи для маркера доступа в наборе параметров AccessToken ; Идентификатор учетной записи для управляемой службы в наборе параметров ManagedService . Может быть идентификатором ресурса управляемой службы или соответствующим идентификатором клиента. Чтобы использовать назначенное системой удостоверение, оставьте это поле пустым.

Тип:String
Position:Named
значение по умолчанию:None
Обязательно:True
Accept pipeline input:False
Accept wildcard characters:False

-ApplicationId

Идентификатор приложения субъекта-службы.

Тип:String
Position:Named
значение по умолчанию:None
Обязательно:True
Accept pipeline input:False
Accept wildcard characters:False

-AuthScope

Необязательная область OAuth для входа, поддерживаемые предварительно определенные значения: AadGraph, AnalysisServices, аттестация, пакетная служба, DataLake, KeyVault, OperationsInsights, Storage, Synapse. Он также поддерживает идентификатор ресурса, например https://storage.azure.com/.

Тип:String
Aliases:AuthScopeTypeName
Position:Named
значение по умолчанию:None
Обязательно:False
Accept pipeline input:False
Accept wildcard characters:False

-CertificatePassword

Пароль, необходимый для доступа к файлу сертификата pkcs#12.

Тип:SecureString
Position:Named
значение по умолчанию:None
Обязательно:False
Accept pipeline input:False
Accept wildcard characters:False

-CertificatePath

Путь к файлу сертификата в формате pkcs#12.

Тип:String
Position:Named
значение по умолчанию:None
Обязательно:True
Accept pipeline input:False
Accept wildcard characters:False

-CertificateThumbprint

Хэш сертификата или отпечаток.

Тип:String
Position:Named
значение по умолчанию:None
Обязательно:True
Accept pipeline input:False
Accept wildcard characters:False

-Confirm

Запрос подтверждения перед выполнением командлета.

Тип:SwitchParameter
Aliases:cf
Position:Named
значение по умолчанию:False
Обязательно:False
Accept pipeline input:False
Accept wildcard characters:False

-ContextName

Имя контекста Azure по умолчанию для этого имени входа. Дополнительные сведения о контекстах Azure см. в разделе "Объекты контекста Azure PowerShell".

Тип:String
Position:Named
значение по умолчанию:None
Обязательно:False
Accept pipeline input:False
Accept wildcard characters:False

-Credential

Указывает объект PSCredential . Дополнительные сведения о объекте PSCredential введите Get-Help Get-Credential. Объект PSCredential предоставляет идентификатор пользователя и пароль для учетных данных идентификатора организации или идентификатор приложения и секрет для учетных данных субъекта-службы.

Тип:PSCredential
Position:Named
значение по умолчанию:None
Обязательно:True
Accept pipeline input:False
Accept wildcard characters:False

-DefaultProfile

Учетные данные, учетная запись, клиент и подписка, используемые для взаимодействия с Azure.

Тип:IAzureContextContainer
Aliases:AzContext, AzureRmContext, AzureCredential
Position:Named
значение по умолчанию:None
Обязательно:False
Accept pipeline input:False
Accept wildcard characters:False

-Environment

Среда, содержащая учетную запись Azure.

Тип:String
Aliases:EnvironmentName
Position:Named
значение по умолчанию:None
Обязательно:False
Accept pipeline input:False
Accept wildcard characters:False

-FederatedToken

Указывает маркер, предоставленный другим поставщиком удостоверений. Издатель и субъект в этом токене должны быть сначала настроены для доверия с помощью ApplicationId.

Внимание

Федеративные маркеры — это тип учетных данных. Необходимо принять соответствующие меры предосторожности, чтобы обеспечить их конфиденциальность. Федеративные маркеры также время ожидания и могут препятствовать выполнению длительных задач.

Тип:String
Aliases:ClientAssertion
Position:Named
значение по умолчанию:None
Обязательно:True
Accept pipeline input:False
Accept wildcard characters:False

-Force

Перезапись существующего контекста с тем же именем без запроса.

Тип:SwitchParameter
Position:Named
значение по умолчанию:None
Обязательно:False
Accept pipeline input:False
Accept wildcard characters:False

-GraphAccessToken

AccessToken для службы Graph.

Тип:String
Position:Named
значение по умолчанию:None
Обязательно:False
Accept pipeline input:False
Accept wildcard characters:False

-Identity

Войдите с помощью управляемого удостоверения службы.

Тип:SwitchParameter
Aliases:MSI, ManagedService
Position:Named
значение по умолчанию:None
Обязательно:True
Accept pipeline input:False
Accept wildcard characters:False

-KeyVaultAccessToken

AccessToken для службы KeyVault.

Тип:String
Position:Named
значение по умолчанию:None
Обязательно:False
Accept pipeline input:False
Accept wildcard characters:False

-MaxContextPopulation

Максимальное число подписки для заполнения контекстов после входа. Значение по умолчанию — 25. Чтобы заполнить все подписки контекстами, задайте значение -1.

Тип:Int32
Position:Named
значение по умолчанию:None
Обязательно:False
Accept pipeline input:False
Accept wildcard characters:False

-MicrosoftGraphAccessToken

Маркер доступа к Microsoft Graph

Тип:String
Position:Named
значение по умолчанию:None
Обязательно:False
Accept pipeline input:False
Accept wildcard characters:False

-Scope

Определяет область изменений контекста, например, применяются ли изменения только к текущему процессу или ко всем сеансам, запущенным этим пользователем.

Тип:ContextModificationScope
допустимые значения:Process, CurrentUser
Position:Named
значение по умолчанию:None
Обязательно:False
Accept pipeline input:False
Accept wildcard characters:False

-SendCertificateChain

Указывает, следует ли отправлять утверждение x5c (открытый ключ сертификата) в stS для обеспечения простой отката сертификатов в Azure AD.

Тип:SwitchParameter
Position:Named
значение по умолчанию:None
Обязательно:False
Accept pipeline input:False
Accept wildcard characters:False

-ServicePrincipal

Указывает, что эта учетная запись проходит проверку подлинности, предоставляя учетные данные субъекта-службы.

Тип:SwitchParameter
Position:Named
значение по умолчанию:None
Обязательно:True
Accept pipeline input:False
Accept wildcard characters:False

-SkipContextPopulation

Пропускает заполнение контекста, если контексты не найдены.

Тип:SwitchParameter
Position:Named
значение по умолчанию:None
Обязательно:False
Accept pipeline input:False
Accept wildcard characters:False

-SkipValidation

Пропустить проверку маркера доступа.

Тип:SwitchParameter
Position:Named
значение по умолчанию:None
Обязательно:False
Accept pipeline input:False
Accept wildcard characters:False

-Subscription

Имя или идентификатор подписки.

Тип:String
Aliases:SubscriptionName, SubscriptionId
Position:Named
значение по умолчанию:None
Обязательно:False
Accept pipeline input:True
Accept wildcard characters:False

-Tenant

Необязательное имя клиента или идентификатор.

Примечание.

Из-за ограничений текущего API необходимо использовать идентификатор клиента вместо имени клиента при подключении с учетной записью "бизнес—бизнес" (B2B).

Тип:String
Aliases:Domain, TenantId
Position:Named
значение по умолчанию:None
Обязательно:True
Accept pipeline input:False
Accept wildcard characters:False

-UseDeviceAuthentication

Используйте проверку подлинности кода устройства вместо элемента управления браузером.

Тип:SwitchParameter
Aliases:DeviceCode, DeviceAuth, Device
Position:Named
значение по умолчанию:None
Обязательно:False
Accept pipeline input:False
Accept wildcard characters:False

-WhatIf

Показывает, что произойдет при запуске командлета. Командлет не выполняется.

Тип:SwitchParameter
Aliases:wi
Position:Named
значение по умолчанию:False
Обязательно:False
Accept pipeline input:False
Accept wildcard characters:False

Входные данные

String

Выходные данные

PSAzureProfile