Atualizar accessPackageAssignmentPolicy

Namespace: microsoft.graph

Atualize um objeto accessPackageAssignmentPolicy existente para alterar uma ou mais de suas propriedades, como o nome de exibição ou a descrição.

Essa API está disponível nas seguintes implantações de nuvem nacional.

Serviço global Governo dos EUA L4 US Government L5 (DOD) China operada pela 21Vianet
✅ ✅ ✅ ✅

Permissões

Escolha a(s) permissão(s) marcada(s) como menos privilegiada(s) para essa API. Use uma permissão ou permissões com privilégios mais altos somente se o aplicativo exigir. Para obter detalhes sobre permissões delegadas e de aplicativo, consulte Tipos de permissão. Para saber mais sobre essas permissões, consulte a referência de permissões.

Tipo de permissão Permissões menos privilegiadas Permissões com privilégios mais elevados
Delegado (conta corporativa ou de estudante) EntitlementManagement.ReadWrite.All Indisponível.
Delegado (conta pessoal da Microsoft) Sem suporte. Sem suporte.
Application EntitlementManagement.ReadWrite.All Indisponível.

Dica

Para acesso delegado usando contas corporativas ou de estudante, o usuário conectado deve receber uma função de administrador com permissões de função com suporte por meio de uma das seguintes opções:

  • Uma função no sistema de Gerenciamento de Direitos em que as funções menos privilegiadas são:
    • Gerenciador de pacotes de acesso. Essa é a opção menos privilegiada
    • Proprietário do catálogo
  • Funções do Microsoft Entra com mais privilégios com suporte para esta operação:
    • Administrador de Governança de Identidade

Em cenários somente de aplicativo, o aplicativo de chamada pode receber uma das funções com suporte anteriores em vez da permissão do EntitlementManagement.ReadWrite.All aplicativo. A função do gerenciador de pacotes de acesso é menos privilegiada do que a permissão do EntitlementManagement.ReadWrite.All aplicativo.

Para obter mais informações, consulte Delegação e funções no gerenciamento de direitos e como delegar governança de acesso para gerenciadores de pacotes de acesso no gerenciamento de direitos.

Solicitação HTTP

PUT /identityGovernance/entitlementManagement/assignmentPolicies/{accessPackageAssignmentPolicyId}

Cabeçalhos de solicitação

Nome Descrição
Autorização {token} de portador. Obrigatório. Saiba mais sobre autenticação e autorização.
Content-Type application/json. Obrigatório.

Corpo da solicitação

No corpo da solicitação, forneça uma representação JSON do objeto accessPackageAssignmentPolicy .

A tabela a seguir mostra as propriedades que são necessárias ao atualizar um accessPackageAssignmentPolicy.

Propriedade Tipo Descrição
accessPackage accessPackage Pacote de acesso que contém essa política. Somente a propriedade id é necessária.
displayName Cadeia de caracteres O nome de exibição da política. Obrigatório.
description Cadeia de caracteres A descrição da política. Obrigatório.
allowedTargetScope allowedTargetScope Quem tem permissão para solicitar o pacote de acesso por meio desta política. Os valores possíveis são notSpecified, specificDirectoryUsers, specificConnectedOrganizationUsers, specificDirectoryServicePrincipals, allMemberUsers, allDirectoryUsers, allDirectoryServicePrincipals, allConfiguredConnectedOrganizationUsers, allExternalUsers, unknownFutureValue. Obrigatório.
automaticRequestSettings accessPackageAutomaticRequestSettings Essa propriedade só está presente para uma política de atribuição automática; Se ausente, esta é uma política baseada em solicitação. Obrigatório.
specificAllowedTargets coleção subjectSet As entidades de segurança que podem receber acesso de um pacote de acesso por meio dessa política. Obrigatório.
Expiração expirationPattern A data de expiração para atribuições criadas nesta política. Obrigatório.
notificationSettings accessPackageNotificationSettings Representa as configurações para notificações por email para solicitações de um pacote de acesso.
requestorSettings accessPackageAssignmentRequestorSettings Fornece configurações adicionais para selecionar quem pode criar uma solicitação de uma atribuição de pacote de acesso por meio dessa política e o que eles podem incluir em sua solicitação. Obrigatório.
requestApprovalSettings accessPackageAssignmentApprovalSettings Especifica as configurações para aprovação de solicitações de uma atribuição de pacote de acesso por meio dessa política. Por exemplo, se a aprovação for necessária para novas solicitações. Obrigatório.
reviewSettings accessPackageAssignmentReviewSettings Configurações para revisões de acesso de atribuições por meio desta política. Obrigatório.
perguntas Coleção accessPackageQuestion Perguntas que são feitas ao solicitante. Obrigatório.

Resposta

Se for bem-sucedido, esse método retornará um código de 200 OK resposta e um objeto accessPackageAssignmentPolicy atualizado no corpo da resposta.

Exemplos

Exemplo 1: Atualizar os detalhes de uma política

Solicitação

O exemplo a seguir mostra uma solicitação.

PUT https://graph.microsoft.com/v1.0/identityGovernance/entitlementManagement/assignmentPolicies/87e1c7f7-c7f7-87e1-f7c7-e187f7c7e187
Content-Type: application/json

{
  "id":"87e1c7f7-c7f7-87e1-f7c7-e187f7c7e187",
  "displayName": "All Users",
  "description": "All users can request for access to the directory.",
  "allowedTargetScope": "allDirectoryUsers",
  "automaticRequestSettings": null,
  "specificAllowedTargets": [],
  "expiration": {
      "type": "noExpiration"
  },
  "requestorSettings": {
      "enableTargetsToSelfAddAccess": true,
      "enableTargetsToSelfUpdateAccess": false,
      "enableTargetsToSelfRemoveAccess": true,
      "allowCustomAssignmentSchedule": false,
      "enableOnBehalfRequestorsToAddAccess": false,
      "enableOnBehalfRequestorsToUpdateAccess": false,
      "enableOnBehalfRequestorsToRemoveAccess": false,
      "onBehalfRequestors": []
  },
  "requestApprovalSettings": {
      "isApprovalRequiredForAdd": true,
      "isApprovalRequiredForUpdate": false,
      "stages": [
          {
              "durationBeforeAutomaticDenial": "P2D",
              "isApproverJustificationRequired": false,
              "isEscalationEnabled": false,
              "durationBeforeEscalation": "PT0S",
              "primaryApprovers": [
                  {
                      "@odata.type": "#microsoft.graph.requestorManager",
                      "managerLevel": 1
                  }
              ],
              "fallbackPrimaryApprovers": [
                  {
                      "@odata.type": "#microsoft.graph.singleUser",
                      "userId": "e6bf4d7d-6824-4dd0-809d-5bf42d4817c2",
                      "description": "user"
                  }
              ],
              "escalationApprovers": [],
              "fallbackEscalationApprovers": []
          }
      ]
  },
  "accessPackage": {
        "id": "49d2c59b-0a81-463d-a8ec-ddad3935d8a0"
  }
}

Resposta

O exemplo a seguir mostra a resposta.

Observação: o objeto de resposta mostrado aqui pode ser encurtado para legibilidade.

HTTP/1.1 200 OK
Content-Type: application/json

{
  "id": "87e1c7f7-c7f7-87e1-f7c7-e187f7c7e187",
  "displayName": "All Users",
  "description": "All users can request for access to the directory."
}

Exemplo 2: remover customExtensionStageSettings de uma política

Para remover a coleção de customExtensionStageSettings e seus objetos de extensão de fluxo de trabalho personalizados associados de uma política, atribua uma coleção vazia ao objeto customExtensionStageSettings .

Solicitação

O exemplo a seguir mostra uma solicitação.

PUT https://graph.microsoft.com/v1.0/identityGovernance/entitlementManagement/assignmentPolicies/4540a08f-8ab5-43f6-a923-015275799197
Content-Type: application/json

{
    "id": "5540a08f-8ab5-43f6-a923-015275799197",
    "displayName": "policy with access package custom workflow extension",
    "description": "Run specified access package custom workflow extension at different stages.",
    "accessPackageId": "ba5807c7-2aa9-4c8a-907e-4a17ee587500",
    "expiration": {
        "type": "afterDuration",
        "duration": "P365D"
    },
    "requestApprovalSettings": null,
    "requestorSettings": {
        "acceptRequests": true,
        "scopeType": "AllExistingDirectorySubjects",
        "allowedRequestors": []
    },
    "accessReviewSettings": null,
    "customExtensionStageSettings": []
}

Resposta

O exemplo a seguir mostra a resposta.

Observação: o objeto de resposta mostrado aqui pode ser encurtado para legibilidade.

HTTP/1.1 200 OK
Content-Type: application/json

{
    "id": "4540a08f-8ab5-43f6-a923-015275799197",
    "displayName": "policy with access package custom workflow extension",
    "description": "Run specified access package custom workflow extension at different stages.",
    "accessPackageId": "ba5807c7-2aa9-4c8a-907e-4a17ee587500",
    "expiration": {
        "type": "afterDuration",
        "duration": "P365D"
    },
    "requestApprovalSettings": null,
    "requestorSettings": {
        "acceptRequests": true,
        "scopeType": "AllExistingDirectorySubjects",
        "allowedRequestors": []
    },
    "accessReviewSettings": null
}

Exemplo 3: Atualizar o customExtensionStageSettings de uma política

O exemplo a seguir mostra como atualizar uma política para incluir uma extensão personalizada.

Solicitação

O exemplo a seguir mostra uma solicitação.

PUT https://graph.microsoft.com/v1.0/identityGovernance/entitlementManagement/assignmentPolicies/f9afd2e3-7486-40df-9c35-aa2ae108c495
Content-Type: application/json

{
    "displayName": "API Created policy with updated customExtensionStageSettings",
    "description": "policy with updated customExtensionStageSettings",
    "allowedTargetScope": "notSpecified",
    "specificAllowedTargets": [],
    "expiration": {
        "endDateTime": null,
        "duration": null,
        "type": "noExpiration"
    },
    "requestorSettings": {
        "enableTargetsToSelfAddAccess": false,
        "enableTargetsToSelfUpdateAccess": false,
        "enableTargetsToSelfRemoveAccess": false,
        "allowCustomAssignmentSchedule": true,
        "enableOnBehalfRequestorsToAddAccess": false,
        "enableOnBehalfRequestorsToUpdateAccess": false,
        "enableOnBehalfRequestorsToRemoveAccess": false,
        "onBehalfRequestors": []
    },
    "requestApprovalSettings": {
        "isApprovalRequiredForAdd": false,
        "isApprovalRequiredForUpdate": false,
        "stages": []
    },
    "accessPackage": {
        "id": "f9afd2e3-7486-40df-9c35-aa2ae108c495"
    },
    "customExtensionStageSettings": [
        {
            "stage": "assignmentRequestCreated",
            "customExtension": {
                "@odata.type": "#microsoft.graph.accessPackageAssignmentRequestWorkflowExtension",
                "id": "bebe7873-1f0d-4db9-b6c3-01f7ebfe8476"
            }
        }
    ]
}

Resposta

O exemplo a seguir mostra a resposta.

Observação: o objeto de resposta mostrado aqui pode ser encurtado para legibilidade.

HTTP/1.1 200 OK
Content-Type: application/json

{
    "id": "4540a08f-8ab5-43f6-a923-015275799197",
    "displayName": "API Created policy with updated customExtensionStageSettings",
    "description": "policy with updated customExtensionStageSettings",
    "accessPackageId": "f9afd2e3-7486-40df-9c35-aa2ae108c495",
    "expiration": {
        "type": "afterDuration",
        "duration": "P365D"
    },
    "requestApprovalSettings": null,
    "requestorSettings": {
        "acceptRequests": true,
        "scopeType": "AllExistingDirectorySubjects",
        "allowedRequestors": []
    },
    "accessReviewSettings": null,
    "customExtensionStageSettings": [
        {
            "stage": "assignmentRequestCreated",
            "customExtension": {
                "@odata.type": "#microsoft.graph.accessPackageAssignmentRequestWorkflowExtension",
                "id": "bebe7873-1f0d-4db9-b6c3-01f7ebfe8476"
            }
        }
    ]
}