Atualize uma regra definida para uma política de gerenciamento de função. A regra pode ser um dos seguintes tipos derivados do objeto unifiedRoleManagementPolicyRule :
Para cenários delegados, o usuário conectado também deve receber pelo menos uma das seguintes funções Microsoft Entra:
Para operações de leitura: Leitor Global, Operador de Segurança, Leitor de Segurança, Administrador de Segurança ou Administrador de Funções Privilegiadas
Para operações de gravação: Administrador de funções privilegiadas
Para PIM para grupos
Tipo de permissão
Permissões (da com menos para a com mais privilégios)
Delegado (conta corporativa ou de estudante)
RoleManagementPolicy.ReadWrite.AzureADGroup
Delegado (conta pessoal da Microsoft)
Sem suporte.
Application
RoleManagementPolicy.ReadWrite.AzureADGroup
Solicitação HTTP
Para atualizar uma regra definida para uma política para Microsoft Entra funções ou grupos no PIM:
No corpo da solicitação, forneça apenas os valores das propriedades que devem ser atualizadas. As propriedades existentes que não estão incluídas no corpo da solicitação mantêm seus valores anteriores ou são recalculadas com base em alterações em outros valores de propriedade.
A tabela a seguir especifica as propriedades que podem ser atualizadas.
Propriedade
Tipo
Descrição
claimValue
Cadeia de caracteres
O valor da declaração de contexto de autenticação.
Pode ser atualizado para o tipo de regra unifiedRoleManagementPolicyAuthenticationContextRule .
enableedRules
String collection
A coleção de regras habilitadas para essa regra de política. Por exemplo, MultiFactorAuthentication, Ticketinge Justification.
Pode ser atualizado para o tipo de regra unifiedRoleManagementPolicyEnablementRule .
isDefaultRecipientsEnabled
Booliano
Indica se um destinatário padrão receberá o email de notificação.
Pode ser atualizado para o tipo de regra unifiedRoleManagementPolicyNotificationRule .
isEnabled
Booliano
Se essa regra está habilitada.
Pode ser atualizado para o tipo de regra unifiedRoleManagementPolicyAuthenticationContextRule .
isExpirationRequired
Booliano
Indica se a expiração é necessária ou se é uma atribuição ou elegibilidade permanentemente ativa.
Pode ser atualizado para o tipo de regra unifiedRoleManagementPolicyExpirationRule .
maximumDuration
Duração
A duração máxima permitida para elegibilidade ou atribuição que não é permanente. Necessário quando isExpirationRequired é true.
Pode ser atualizado para o tipo de regra unifiedRoleManagementPolicyExpirationRule .
Notificationlevel
Cadeia de caracteres
O nível de notificação. Os valores possíveis são None, Critical, All.
Pode ser atualizado para o tipo de regra unifiedRoleManagementPolicyNotificationRule .
notificationRecipients
Coleção String
A lista de destinatários do notificações por email.
Pode ser atualizado para o tipo de regra unifiedRoleManagementPolicyNotificationRule .
Notificationtype
Cadeia de caracteres
O tipo de notificação. Só Email há suporte.
Pode ser atualizado para o tipo de regra unifiedRoleManagementPolicyNotificationRule .
recipientType
Cadeia de caracteres
O tipo de destinatário da notificação. Os valores possíveis são Requestor, Approver, Admin. Pode ser atualizado para o tipo de regra unifiedRoleManagementPolicyNotificationRule .
Define detalhes do escopo que é direcionado pela regra de política de gerenciamento de função. Os detalhes podem incluir o tipo principal, o tipo de atribuição de função e as ações que afetam uma função.
Pode ser atualizado para todos os tipos de regra.
Nota: A @odata.type propriedade com um valor do tipo de regra específica deve ser incluída no corpo. Por exemplo, "@odata.type": "#microsoft.graph.unifiedRoleManagementPolicyApprovalRule".
Resposta
Se for bem-sucedido, esse método retornará um 200 OK código de resposta e um objeto unifiedRoleManagementPolicyRule no corpo da resposta.
Exemplos
Exemplo 1: atualizar uma regra definida para uma política no PIM para funções de Microsoft Entra
Solicitação
O exemplo a seguir atualiza uma regra de política de gerenciamento de função do tipo unifiedRoleManagementPolicyExpirationRule e com ID é Expiration_EndUser_Assignment.
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Models;
var requestBody = new UnifiedRoleManagementPolicyExpirationRule
{
OdataType = "#microsoft.graph.unifiedRoleManagementPolicyExpirationRule",
Id = "Expiration_EndUser_Assignment",
IsExpirationRequired = true,
MaximumDuration = TimeSpan.Parse("PT1H45M"),
Target = new UnifiedRoleManagementPolicyRuleTarget
{
OdataType = "microsoft.graph.unifiedRoleManagementPolicyRuleTarget",
Caller = "EndUser",
Operations = new List<UnifiedRoleManagementPolicyRuleTargetOperations?>
{
UnifiedRoleManagementPolicyRuleTargetOperations.All,
},
Level = "Assignment",
InheritableSettings = new List<string>
{
},
EnforcedSettings = new List<string>
{
},
},
};
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.Policies.RoleManagementPolicies["{unifiedRoleManagementPolicy-id}"].Rules["{unifiedRoleManagementPolicyRule-id}"].PatchAsync(requestBody);
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
UnifiedRoleManagementPolicyExpirationRule unifiedRoleManagementPolicyRule = new UnifiedRoleManagementPolicyExpirationRule();
unifiedRoleManagementPolicyRule.setOdataType("#microsoft.graph.unifiedRoleManagementPolicyExpirationRule");
unifiedRoleManagementPolicyRule.setId("Expiration_EndUser_Assignment");
unifiedRoleManagementPolicyRule.setIsExpirationRequired(true);
PeriodAndDuration maximumDuration = PeriodAndDuration.ofDuration(Duration.parse("PT1H45M"));
unifiedRoleManagementPolicyRule.setMaximumDuration(maximumDuration);
UnifiedRoleManagementPolicyRuleTarget target = new UnifiedRoleManagementPolicyRuleTarget();
target.setOdataType("microsoft.graph.unifiedRoleManagementPolicyRuleTarget");
target.setCaller("EndUser");
LinkedList<UnifiedRoleManagementPolicyRuleTargetOperations> operations = new LinkedList<UnifiedRoleManagementPolicyRuleTargetOperations>();
operations.add(UnifiedRoleManagementPolicyRuleTargetOperations.All);
target.setOperations(operations);
target.setLevel("Assignment");
LinkedList<String> inheritableSettings = new LinkedList<String>();
target.setInheritableSettings(inheritableSettings);
LinkedList<String> enforcedSettings = new LinkedList<String>();
target.setEnforcedSettings(enforcedSettings);
unifiedRoleManagementPolicyRule.setTarget(target);
UnifiedRoleManagementPolicyRule result = graphClient.policies().roleManagementPolicies().byUnifiedRoleManagementPolicyId("{unifiedRoleManagementPolicy-id}").rules().byUnifiedRoleManagementPolicyRuleId("{unifiedRoleManagementPolicyRule-id}").patch(unifiedRoleManagementPolicyRule);
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Models;
var requestBody = new UnifiedRoleManagementPolicyExpirationRule
{
OdataType = "#microsoft.graph.unifiedRoleManagementPolicyExpirationRule",
Id = "Expiration_EndUser_Assignment",
IsExpirationRequired = true,
MaximumDuration = TimeSpan.Parse("PT1H45M"),
Target = new UnifiedRoleManagementPolicyRuleTarget
{
Caller = "EndUser",
Operations = new List<UnifiedRoleManagementPolicyRuleTargetOperations?>
{
UnifiedRoleManagementPolicyRuleTargetOperations.All,
},
Level = "Assignment",
InheritableSettings = new List<string>
{
},
EnforcedSettings = new List<string>
{
},
},
};
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.Policies.RoleManagementPolicies["{unifiedRoleManagementPolicy-id}"].Rules["{unifiedRoleManagementPolicyRule-id}"].PatchAsync(requestBody);
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
UnifiedRoleManagementPolicyExpirationRule unifiedRoleManagementPolicyRule = new UnifiedRoleManagementPolicyExpirationRule();
unifiedRoleManagementPolicyRule.setOdataType("#microsoft.graph.unifiedRoleManagementPolicyExpirationRule");
unifiedRoleManagementPolicyRule.setId("Expiration_EndUser_Assignment");
unifiedRoleManagementPolicyRule.setIsExpirationRequired(true);
PeriodAndDuration maximumDuration = PeriodAndDuration.ofDuration(Duration.parse("PT1H45M"));
unifiedRoleManagementPolicyRule.setMaximumDuration(maximumDuration);
UnifiedRoleManagementPolicyRuleTarget target = new UnifiedRoleManagementPolicyRuleTarget();
target.setCaller("EndUser");
LinkedList<UnifiedRoleManagementPolicyRuleTargetOperations> operations = new LinkedList<UnifiedRoleManagementPolicyRuleTargetOperations>();
operations.add(UnifiedRoleManagementPolicyRuleTargetOperations.All);
target.setOperations(operations);
target.setLevel("Assignment");
LinkedList<String> inheritableSettings = new LinkedList<String>();
target.setInheritableSettings(inheritableSettings);
LinkedList<String> enforcedSettings = new LinkedList<String>();
target.setEnforcedSettings(enforcedSettings);
unifiedRoleManagementPolicyRule.setTarget(target);
UnifiedRoleManagementPolicyRule result = graphClient.policies().roleManagementPolicies().byUnifiedRoleManagementPolicyId("{unifiedRoleManagementPolicy-id}").rules().byUnifiedRoleManagementPolicyRuleId("{unifiedRoleManagementPolicyRule-id}").patch(unifiedRoleManagementPolicyRule);
Em breve: ao longo de 2024, vamos eliminar problemas do GitHub como o mecanismo de comentários para conteúdo e substituí-lo por um novo sistema de comentários. Para obter mais informações, consulte: https://aka.ms/ContentUserFeedback.