Create roleAssignmentScheduleRequests

Espace de noms: microsoft.graph

Dans PIM, effectuez les opérations suivantes via l’objet unifiedRoleAssignmentScheduleRequest :

  • Demander des attributions de rôles actifs et persistants pour un principal, avec ou sans dates d’expiration.
  • Activer, désactiver, étendre ou renouveler une attribution de rôle éligible pour un principal.

Pour appeler cette API afin de mettre à jour, de renouveler et d’étendre des affectations pour vous-même, vous devez avoir appliqué l’authentification multifacteur (MFA) et exécuter la requête dans une session dans laquelle elles ont été contestées pour l’authentification multifacteur. Consultez Activer l’authentification multifacteur par utilisateur Microsoft Entra pour sécuriser les événements de connexion.

Cette API est disponible dans les déploiements de cloud national suivants.

Service global Gouvernement des États-Unis L4 Us Government L5 (DOD) Chine gérée par 21Vianet

Autorisations

Choisissez l’autorisation ou les autorisations marquées comme moins privilégiées pour cette API. Utilisez une autorisation ou des autorisations privilégiées plus élevées uniquement si votre application en a besoin. Pour plus d’informations sur les autorisations déléguées et d’application, consultez Types d’autorisations. Pour en savoir plus sur ces autorisations, consultez les informations de référence sur les autorisations.

Type d’autorisation Autorisations avec privilèges minimum Autorisations privilégiées plus élevées
Déléguée (compte professionnel ou scolaire) RoleAssignmentSchedule.ReadWrite.Directory RoleAssignmentSchedule.Remove.Directory, RoleEligibilitySchedule.Remove.Directory, RoleManagement.ReadWrite.Directory
Déléguée (compte Microsoft personnel) Non prise en charge. Non prise en charge.
Application RoleManagement.ReadWrite.Directory RoleAssignmentSchedule.Remove.Directory, RoleEligibilitySchedule.Remove.Directory

Pour les scénarios délégués, l’utilisateur connecté doit également se voir attribuer au moins l’un des rôles Microsoft Entra suivants :

  • Pour les opérations de lecture : Lecteur général, Opérateur de sécurité, Lecteur de sécurité, Administrateur de la sécurité ou Administrateur de rôle privilégié
  • Pour les opérations d’écriture : Administrateur de rôle privilégié

Requête HTTP

POST /roleManagement/directory/roleAssignmentScheduleRequests

En-têtes de demande

Nom Description
Autorisation Porteur {token}. Obligatoire. En savoir plus sur l’authentification et l’autorisation.
Content-Type application/json. Obligatoire.

Corps de la demande

Dans le corps de la demande, fournissez une représentation JSON de l’objet unifiedRoleAssignmentScheduleRequest .

Vous pouvez spécifier les propriétés suivantes lors de la création d’un unifiedRoleAssignmentScheduleRequest.

Propriété Type Description
action unifiedRoleScheduleRequestActions Représente le type de l’opération sur la demande d’attribution de rôle. Les valeurs possibles sont adminAssign, adminUpdate, adminRemove, selfActivate, selfDeactivate, adminExtend, adminRenew, selfExtend, selfRenew, unknownFutureValue.
  • adminAssign: pour que les administrateurs attribuent des rôles à des utilisateurs ou des groupes.
  • adminRemove: pour que les administrateurs suppriment des utilisateurs ou des groupes des rôles.
  • adminUpdate: pour que les administrateurs modifient les attributions de rôles existantes.
  • adminExtend: pour que les administrateurs étendent les attributions arrivant à expiration.
  • adminRenew: pour que les administrateurs renouvellent les affectations expirées.
  • selfActivate: pour que les utilisateurs activent leurs affectations.
  • selfDeactivate: pour que les utilisateurs désactivent leurs affectations actives.
  • selfExtend: pour que les utilisateurs demandent d’étendre leurs affectations arrivant à expiration.
  • selfRenew: pour que les utilisateurs demandent de renouveler leurs affectations expirées.
Customdata Chaîne Champ de texte libre pour définir toutes les données personnalisées pour la demande. Optional.
principalId Chaîne Identificateur du principal auquel l’attribution a été accordée. Obligatoire.
roleDefinitionId Chaîne Identificateur de l’objet unifiedRoleDefinition affecté. Obligatoire.
directoryScopeId Chaîne Identificateur de l’objet directory représentant l’étendue de l’affectation. L’étendue d’une affectation détermine l’ensemble des ressources pour lesquelles l’accès au principal a été accordé. Les étendues de répertoire sont des étendues partagées stockées dans le répertoire et comprises par plusieurs applications. Utilisez / pour l’étendue à l’échelle du locataire. Utilisez appScopeId pour limiter l’étendue à une application uniquement. directoryScopeId ou appScopeId est requis.
appScopeId Chaîne Identificateur de l’étendue spécifique à l’application lorsque l’affectation est étendue à une application. L’étendue d’une affectation détermine l’ensemble des ressources pour lesquelles l’accès au principal a été accordé. Les étendues d’application sont des étendues définies et comprises par cette application uniquement. Utilisez / pour les étendues d’application à l’échelle du locataire. Utilisez directoryScopeId pour limiter l’étendue à des objets d’annuaire particuliers, par exemple des unités administratives. directoryScopeId ou appScopeId est requis.
Justification Chaîne Message fourni par les utilisateurs et les administrateurs lorsqu’ils créent l’objet unifiedRoleAssignmentScheduleRequest .

Facultatif pour selfDeactivate les actions et adminRemove ; peut être facultatif ou requis pour d’autres types d’actions en fonction des règles de la stratégie liée au rôle Microsoft Entra. Pour plus d’informations, consultez Règles dans PIM.
scheduleInfo requestSchedule Période de la demande d’attribution de rôle. Les planifications périodiques ne sont actuellement pas prises en charge. Obligatoire.
ticketInfo ticketInfo Détails du ticket lié à la demande d’attribution de rôle, y compris les détails du numéro de ticket et du système de ticket.

Facultatif pour selfDeactivate les actions et adminRemove ; peut être facultatif ou requis pour d’autres types d’actions en fonction des règles de la stratégie liée au rôle Microsoft Entra. Pour plus d’informations, consultez Règles dans PIM.

Réponse

Si elle réussit, cette méthode renvoie un 201 Created code de réponse et un objet unifiedRoleAssignmentScheduleRequest dans le corps de la réponse.

Exemples

Exemple 1 : Administration l’attribution d’un rôle d’annuaire à un principal

Dans la requête suivante, l’administrateur crée une demande pour attribuer un rôle identifié par fdd7a751-b60b-444a-984c-02652fe8fa1c à un principal identifié par l’ID 071cc716-8147-4397-a5ba-b2105951cc0b. L’étendue de leur rôle est tous les objets d’annuaire dans le locataire et l’attribution est permanente.

Demande

POST https://graph.microsoft.com/v1.0/roleManagement/directory/roleAssignmentScheduleRequests
Content-Type: application/json

{
    "action": "adminAssign",
    "justification": "Assign Groups Admin to IT Helpdesk group",
    "roleDefinitionId": "fdd7a751-b60b-444a-984c-02652fe8fa1c",
    "directoryScopeId": "/",
    "principalId": "071cc716-8147-4397-a5ba-b2105951cc0b",
    "scheduleInfo": {
        "startDateTime": "2022-04-10T00:00:00Z",
        "expiration": {
            "type": "NoExpiration"
        }
    }
}

Réponse

Remarque : l’objet de réponse affiché ci-après peut être raccourci pour plus de lisibilité.

HTTP/1.1 201 Created
Content-Type: application/json

{
    "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#roleManagement/directory/roleAssignmentScheduleRequests/$entity",
    "id": "95c690fb-3eb3-4942-a03f-4524aed6f31e",
    "status": "Provisioned",
    "createdDateTime": "2022-04-11T11:50:03.9014347Z",
    "completedDateTime": "2022-04-11T11:50:05.9999343Z",
    "approvalId": null,
    "customData": null,
    "action": "adminAssign",
    "principalId": "071cc716-8147-4397-a5ba-b2105951cc0b",
    "roleDefinitionId": "fdd7a751-b60b-444a-984c-02652fe8fa1c",
    "directoryScopeId": "/",
    "appScopeId": null,
    "isValidationOnly": false,
    "targetScheduleId": "95c690fb-3eb3-4942-a03f-4524aed6f31e",
    "justification": "Assign Groups Admin to IT Helpdesk group",
    "createdBy": {
        "application": null,
        "device": null,
        "user": {
            "displayName": null,
            "id": "3fbd929d-8c56-4462-851e-0eb9a7b3a2a5"
        }
    },
    "scheduleInfo": {
        "startDateTime": "2022-04-11T11:50:05.9999343Z",
        "recurrence": null,
        "expiration": {
            "type": "noExpiration",
            "endDateTime": null,
            "duration": null
        }
    },
    "ticketInfo": {
        "ticketNumber": null,
        "ticketSystem": null
    }
}

Exemple 2 : Utilisateur activant son rôle éligible

Demande

Dans la requête suivante, un utilisateur identifié par principalId071cc716-8147-4397-a5ba-b2105951cc0b active son propre rôle éligible sur un rôle Microsoft Entra identifié par l’ID 8424c6f0-a189-499e-bbd0-26c1753c96d4. L’étendue de leur rôle est tous les objets d’annuaire dans le locataire et l’attribution est de cinq heures. Pour exécuter cette requête, l’utilisateur appelant doit avoir appliqué l’authentification multifacteur (MFA) et exécuter la requête dans une session dans laquelle il a été contesté pour l’authentification multifacteur.

Pour récupérer les détails de ses demandes d’éligibilité et identifier l’éligibilité à activer, l’utilisateur appelle l’API unifiedRoleEligibilitySchedule : filterByCurrentUser .

POST https://graph.microsoft.com/v1.0/roleManagement/directory/roleAssignmentScheduleRequests/
Content-Type: application/json

{
    "action": "selfActivate",
    "principalId": "071cc716-8147-4397-a5ba-b2105951cc0b",
    "roleDefinitionId": "8424c6f0-a189-499e-bbd0-26c1753c96d4",
    "directoryScopeId": "/",
    "justification": "I need access to the Attribute Administrator role to manage attributes to be assigned to restricted AUs",
    "scheduleInfo": {
        "startDateTime": "2022-04-14T00:00:00.000Z",
        "expiration": {
            "type": "AfterDuration",
            "duration": "PT5H"
        }
    },
    "ticketInfo": {
        "ticketNumber": "CONTOSO:Normal-67890",
        "ticketSystem": "MS Project"
    }
}

Réponse

L’exemple suivant illustre la réponse.

Remarque : l’objet de réponse affiché ci-après peut être raccourci pour plus de lisibilité.

HTTP/1.1 201 Created
Content-Type: application/json

{
    "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#roleManagement/directory/roleAssignmentScheduleRequests/$entity",
    "id": "911bab8a-6912-4de2-9dc0-2648ede7dd6d",
    "status": "Granted",
    "createdDateTime": "2022-04-13T08:52:32.6485851Z",
    "completedDateTime": "2022-04-14T00:00:00Z",
    "approvalId": null,
    "customData": null,
    "action": "selfActivate",
    "principalId": "071cc716-8147-4397-a5ba-b2105951cc0b",
    "roleDefinitionId": "8424c6f0-a189-499e-bbd0-26c1753c96d4",
    "directoryScopeId": "/",
    "appScopeId": null,
    "isValidationOnly": false,
    "targetScheduleId": "911bab8a-6912-4de2-9dc0-2648ede7dd6d",
    "justification": "I need access to the Attribute Administrator role to manage attributes to be assigned to restricted AUs",
    "createdBy": {
        "application": null,
        "device": null,
        "user": {
            "displayName": null,
            "id": "071cc716-8147-4397-a5ba-b2105951cc0b"
        }
    },
    "scheduleInfo": {
        "startDateTime": "2022-04-14T00:00:00Z",
        "recurrence": null,
        "expiration": {
            "type": "afterDuration",
            "endDateTime": null,
            "duration": "PT5H"
        }
    },
    "ticketInfo": {
        "ticketNumber": "CONTOSO:Normal-67890",
        "ticketSystem": "MS Project"
    }
}