Partager via


Create roleEligibilityScheduleRequest

Espace de noms: microsoft.graph

Dans PIM, demandez l’éligibilité à un rôle pour un principal via l’objet unifiedRoleEligibilityScheduleRequest . Cette opération permet aux administrateurs et aux utilisateurs éligibles d’ajouter, de révoquer ou d’étendre des affectations éligibles.

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) RoleEligibilitySchedule.ReadWrite.Directory RoleManagement.ReadWrite.Directory
Déléguée (compte Microsoft personnel) Non prise en charge. Non prise en charge.
Application RoleEligibilitySchedule.ReadWrite.Directory RoleManagement.ReadWrite.Directory

Importante

Dans les scénarios délégués avec des comptes professionnels ou scolaires, l’utilisateur connecté doit se voir attribuer un rôle Microsoft Entra pris en charge ou un rôle personnalisé avec une autorisation de rôle prise en charge. Les rôles les moins privilégiés suivants sont pris en charge pour cette opération.

  • 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/roleEligibilityScheduleRequests

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 unifiedRoleEligibilityScheduleRequest .

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

Propriété Type Description
action unifiedRoleScheduleRequestActions Représente le type d’opération sur la demande d’éligibilité au rôle. Les valeurs possibles sont , adminAssign, adminUpdate, adminRemoveselfActivate, , selfDeactivateadminExtend, adminRenew, selfExtend, , selfRenew. unknownFutureValue
  • adminAssign: pour que les administrateurs attribuent des rôles éligibles aux principaux.
  • adminRemove: pour que les administrateurs suppriment les rôles éligibles des principaux.
  • adminUpdate: pour que les administrateurs modifient les éligibilités aux rôles existants.
  • adminExtend: pour que les administrateurs étendent les éligibilités aux rôles arrivant à expiration.
  • adminRenew: pour que les administrateurs renouvellent les éligibilités 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.
appScopeId String Identificateur de l’étendue spécifique à l’application lorsque l’éligibilité au rôle est limitée à une application. L’étendue de l’éligibilité d’un rôle détermine l’ensemble des ressources auxquelles le principal est éligible. 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.
directoryScopeId String Identificateur de l’objet directory représentant l’étendue de l’éligibilité au rôle. L’étendue d’un rôle éligible détermine l’ensemble des ressources pour lesquelles le principal a reçu l’accès. 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.
isValidationOnly Boolean Détermine si l’appel est une validation ou un appel réel. Définissez cette propriété uniquement si vous souhaitez case activée si une activation est soumise à des règles supplémentaires telles que l’authentification multifacteur avant d’envoyer réellement la demande. Optional.
justification String Message fourni par les utilisateurs et les administrateurs quand ils créent l’objet unifiedRoleEligibilityScheduleRequest .

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.
principalId String Identificateur du principal auquel l’éligibilité au rôle a été accordée. Obligatoire.
roleDefinitionId String Identificateur de l’objet unifiedRoleDefinition affecté au principal. Obligatoire.
scheduleInfo requestSchedule Période d’éligibilité au rôle. Facultatif lorsque l’action a la valeur adminRemove. La période d’éligibilité dépend des paramètres du rôle Microsoft Entra.
ticketInfo ticketInfo Détails du ticket lié à la demande d’éligibilité au 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 unifiedRoleEligibilityScheduleRequest dans le corps de la réponse.

Exemples

Exemple 1 : Administration pour attribuer une demande de planification d’éligibilité de rôle

Demande

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

{
    "action": "adminAssign",
    "justification": "Assign Attribute Assignment Admin eligibility to restricted user",
    "roleDefinitionId": "8424c6f0-a189-499e-bbd0-26c1753c96d4",
    "directoryScopeId": "/",
    "principalId": "071cc716-8147-4397-a5ba-b2105951cc0b",
    "scheduleInfo": {
        "startDateTime": "2022-04-10T00:00:00Z",
        "expiration": {
            "type": "afterDateTime",
            "endDateTime": "2024-04-10T00:00:00Z"
        }
    }
}

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/roleEligibilityScheduleRequests/$entity",
    "id": "50877283-9d40-433c-bab8-7986dc10458a",
    "status": "Provisioned",
    "createdDateTime": "2022-04-12T09:05:39.7594064Z",
    "completedDateTime": "2022-04-12T09:05:41.8532931Z",
    "approvalId": null,
    "customData": null,
    "action": "adminAssign",
    "principalId": "071cc716-8147-4397-a5ba-b2105951cc0b",
    "roleDefinitionId": "8424c6f0-a189-499e-bbd0-26c1753c96d4",
    "directoryScopeId": "/",
    "appScopeId": null,
    "isValidationOnly": false,
    "targetScheduleId": "50877283-9d40-433c-bab8-7986dc10458a",
    "justification": "Assign Attribute Assignment Admin eligibility to restricted user",
    "createdBy": {
        "application": null,
        "device": null,
        "user": {
            "displayName": null,
            "id": "3fbd929d-8c56-4462-851e-0eb9a7b3a2a5"
        }
    },
    "scheduleInfo": {
        "startDateTime": "2022-04-12T09:05:41.8532931Z",
        "recurrence": null,
        "expiration": {
            "type": "afterDateTime",
            "endDateTime": "2024-04-10T00:00:00Z",
            "duration": null
        }
    },
    "ticketInfo": {
        "ticketNumber": null,
        "ticketSystem": null
    }
}

Exemple 2 : Administration pour supprimer une demande de planification d’éligibilité de rôle existante

Dans la requête suivante, l’administrateur crée une demande pour révoquer l’éligibilité d’un principal avec l’ID 071cc716-8147-4397-a5ba-b2105951cc0b à un rôle avec l’ID 8424c6f0-a189-499e-bbd0-26c1753c96d4.

Demande

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

{
    "action": "adminRemove",
    "roleDefinitionId": "8424c6f0-a189-499e-bbd0-26c1753c96d4",
    "directoryScopeId": "/",
    "principalId": "071cc716-8147-4397-a5ba-b2105951cc0b"
}

Réponse

L’exemple suivant illustre la réponse. L’objet response indique que l’éligibilité d’un rôle précédent pour un principal est Revoked. Le principal ne verra plus son rôle précédemment éligible.

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/roleEligibilityScheduleRequests/$entity",
    "id": "f341269e-c926-41fa-a905-cef3b01b2a67",
    "status": "Revoked",
    "createdDateTime": "2022-04-12T09:12:15.6859992Z",
    "completedDateTime": null,
    "approvalId": null,
    "customData": null,
    "action": "adminRemove",
    "principalId": "071cc716-8147-4397-a5ba-b2105951cc0b",
    "roleDefinitionId": "8424c6f0-a189-499e-bbd0-26c1753c96d4",
    "directoryScopeId": "/",
    "appScopeId": null,
    "isValidationOnly": false,
    "targetScheduleId": null,
    "justification": null,
    "scheduleInfo": null,
    "createdBy": {
        "application": null,
        "device": null,
        "user": {
            "displayName": null,
            "id": "3fbd929d-8c56-4462-851e-0eb9a7b3a2a5"
        }
    },
    "ticketInfo": {
        "ticketNumber": null,
        "ticketSystem": null
    }
}