New-EntraAgentUserForAgentId
Cria um novo usuário do agente usando uma identidade de agente.
Sintaxe
Default (Default)
New-EntraAgentUserForAgentId
-DisplayName <String>
[-UserPrincipalName <String>]
[-MailNickname <String>]
[-AgentIdentityId <String>]
[<CommonParameters>]
Description
O New-EntraAgentUserForAgentId cmdlet cria um novo Usuário do Agente postando no ponto de extremidade Microsoft Graph usuários usando uma ID de Identidade do Agente como o pai da identidade. O mailNickname é derivado do prefixo UserPrincipalName por padrão, mas pode ser substituído pelo -MailNickname parâmetro ou interativamente. Se -UserPrincipalName não for fornecido, o cmdlet procurará o domínio padrão do locatário e solicitará interativamente com um UPN sugerido.
Exemplos
Exemplo 1: criar um usuário do agente com todos os parâmetros
Connect-Entra -Scopes 'AgentIdentityBlueprint.Create', 'AgentIdentityBlueprintPrincipal.Create', 'AgentIdentity.Create.All', 'AgentIdentityBlueprint.UpdateAuthProperties.All', 'AgentIdUser.ReadWrite.All'
New-EntraAgentIdentityBlueprint -DisplayName "My Blueprint" -SponsorUserIds @("admin@contoso.com")
New-EntraAgentIDForAgentIdentityBlueprint -DisplayName "My Agent Identity" -SponsorUserIds @("user1@contoso.com")
New-EntraAgentUserForAgentId -DisplayName "Agent Identity 26192008" -UserPrincipalName "AgentIdentity26192008@contoso.onmicrosoft.com"
Este exemplo cria um Usuário do Agente com o nome de exibição e o nome de entidade de usuário especificados, usando a Identidade do Agente criada na sessão atual.
Exemplo 2: Criar um usuário do agente com prompts
Connect-Entra -Scopes 'AgentIdentityBlueprint.Create', 'AgentIdentityBlueprintPrincipal.Create', 'AgentIdentity.Create.All', 'AgentIdentityBlueprint.UpdateAuthProperties.All', 'AgentIdUser.ReadWrite.All'
# Assumes Agent Identity Blueprint and Agent Identity are already created
New-EntraAgentUserForAgentId -DisplayName "HR Agent User"
Este exemplo cria um usuário do agente. O cmdlet solicitará o nome da entidade de segurança do usuário se não for fornecido.
Exemplo 3: Criar vários usuários de agente para a mesma identidade do agente
Connect-Entra -Scopes 'AgentIdentityBlueprint.Create', 'AgentIdentityBlueprintPrincipal.Create', 'AgentIdentity.Create.All', 'AgentIdentityBlueprint.UpdateAuthProperties.All', 'AgentIdUser.ReadWrite.All'
New-EntraAgentIdentityBlueprint -DisplayName "Finance Blueprint" -SponsorUserIds @("finance-admin@contoso.com")
New-EntraAgentIDForAgentIdentityBlueprint -DisplayName "Finance Agent" -SponsorUserIds @("finance-user@contoso.com")
# Create first Agent User
New-EntraAgentUserForAgentId -DisplayName "Finance Agent User 1" -UserPrincipalName "financeagent1@contoso.onmicrosoft.com"
# Create second Agent User for the same Agent Identity
New-EntraAgentUserForAgentId -DisplayName "Finance Agent User 2" -UserPrincipalName "financeagent2@contoso.onmicrosoft.com"
Este exemplo cria vários usuários de agente associados à mesma Identidade do Agente.
Exemplo 4: Criar um usuário do agente com id de identidade de agente explícita
Connect-Entra -Scopes 'AgentIdentityBlueprint.Create', 'AgentIdentityBlueprintPrincipal.Create', 'AgentIdentity.Create.All', 'AgentIdentityBlueprint.UpdateAuthProperties.All', 'AgentIdUser.ReadWrite.All'
$agentIdentity = New-EntraAgentIDForAgentIdentityBlueprint -DisplayName "My Agent Identity"
New-EntraAgentUserForAgentId -DisplayName "Agent User" -UserPrincipalName "agentuser@contoso.onmicrosoft.com" -AgentIdentityId $agentIdentity.id
Este exemplo cria um Usuário do Agente fornecendo explicitamente a ID de Identidade do Agente, que é útil ao chamar de escopos ou scripts de módulo diferentes.
Parâmetros
-AgentIdentityId
A ID de Identidade do Agente a ser associada a esse usuário. Se não for fornecido, o cmdlet usará o valor armazenado de New-EntraAgentIDForAgentIdentityBlueprint. Use esse parâmetro ao chamar de escopos de módulo diferentes ou quando você quiser especificar explicitamente a Identidade do Agente.
Propriedades do parâmetro
| Tipo: | System.String |
| Valor padrão: | None |
| Dá suporte a curingas: | False |
| DontShow: | False |
Conjuntos de parâmetros
(All)
| Cargo: | Named |
| Obrigatório: | False |
| Valor do pipeline: | False |
| Valor do pipeline pelo nome da propriedade: | False |
| Valor dos argumentos restantes: | False |
-DisplayName
O nome de exibição do Usuário do Agente.
Propriedades do parâmetro
| Tipo: | System.String |
| Valor padrão: | None |
| Dá suporte a curingas: | False |
| DontShow: | False |
Conjuntos de parâmetros
(All)
| Cargo: | Named |
| Obrigatório: | True |
| Valor do pipeline: | False |
| Valor do pipeline pelo nome da propriedade: | False |
| Valor dos argumentos restantes: | False |
-MailNickname
O apelido de email (alias) para o Usuário do Agente. Se não for fornecido, ele será derivado do prefixo UserPrincipalName (a parte antes do símbolo @) e o usuário será solicitado a confirmá-lo ou substituí-lo.
Propriedades do parâmetro
| Tipo: | System.String |
| Valor padrão: | None |
| Dá suporte a curingas: | False |
| DontShow: | False |
Conjuntos de parâmetros
(All)
| Cargo: | Named |
| Obrigatório: | False |
| Valor do pipeline: | False |
| Valor do pipeline pelo nome da propriedade: | False |
| Valor dos argumentos restantes: | False |
-UserPrincipalName
O nome da entidade de usuário (email) para o Usuário do Agente (por exemplo, username@domain.onmicrosoft.com). Deve ser um formato de endereço de email válido. Se não for fornecido, o cmdlet pesquisa o domínio padrão do locatário e solicita interativamente com um UPN sugerido derivado do nome de exibição.
Propriedades do parâmetro
| Tipo: | System.String |
| Valor padrão: | None |
| Dá suporte a curingas: | False |
| DontShow: | False |
Conjuntos de parâmetros
(All)
| Cargo: | Named |
| Obrigatório: | False |
| Valor do pipeline: | False |
| Valor do pipeline pelo nome da propriedade: | False |
| Valor dos argumentos restantes: | False |
CommonParameters
Este cmdlet suporta os parâmetros comuns: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction e -WarningVariable. Para obter mais informações, consulte about_CommonParameters.
Entradas
None
Saídas
System.Object
Retorna o objeto Agent User da resposta do Microsoft API do Graph com as seguintes propriedades:
-
@odata.type —
microsoft.graph.agentUser - id — o identificador exclusivo do usuário do agente criado.
- displayName — O nome de exibição do Usuário do Agente.
- userPrincipalName — o nome principal do usuário do agente.
- mailNickname — O apelido de email (alias) do usuário do agente.
-
accountEnabled – Se a conta está habilitada (sempre
true). - identityParentId — A ID da identidade do agente pai.
Propriedades adicionais da resposta API do Graph também podem ser incluídas.
Observações
Esse cmdlet requer a seguinte permissão de Microsoft Graph:
AgentIdUser.ReadWrite.All
A ID de Identidade do Agente pode ser fornecida por meio do -AgentIdentityId parâmetro ou é recuperada automaticamente da variável $global:EntraCurrentAgentIdentityId global definida por New-EntraAgentIDForAgentIdentityBlueprint. A variável global é usada porque esse cmdlet está em um módulo diferente (Microsoft.Entra.Users) do que os cmdlets de blueprint (Microsoft.Entra.Applications).
O cmdlet armazena a ID $script:CurrentAgentUserId de Usuário do Agente criada para uso por cmdlets subsequentes.
O cmdlet inclui lógica de repetição (até 10 tentativas com esperas de 10 segundos) para lidar com atrasos de propagação.
Quando -UserPrincipalName não for fornecido, o cmdlet:
- Consulta o domínio padrão do locatário por meio da API da organização
- Sugere um UPN concatenando as palavras de nome de exibição como um prefixo com o domínio do locatário
- Valida o UPN em relação a um padrão regex e solicita novamente se inválido
O -UserPrincipalName parâmetro valida a entrada em relação ao padrão ^[#a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$.