Créer roleEligibilityScheduleRequests

Espace de noms: microsoft.graph

Importante

Les API sous la version /beta dans Microsoft Graph sont susceptibles d’être modifiées. L’utilisation de ces API dans des applications de production n’est pas prise en charge. Pour déterminer si une API est disponible dans v1.0, utilisez le sélecteur Version .

Créez un 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 .

Le tableau suivant présente les propriétés facultatives et requises lorsque vous créez unifiedRoleEligibilityScheduleRequest.

Propriété Type Description
action String Représente le type de l’opération sur l’attribution d’éligibilité de rôle. Les valeurs possibles sont les suivantes :
  • AdminAssign: pour que les administrateurs attribuent l’éligibilité aux rôles aux utilisateurs ou aux groupes.
  • AdminExtend: pour que les administrateurs étendent les attributions arrivant à expiration.
  • AdminUpdate: pour que les administrateurs modifient les attributions de rôles existantes.
  • AdminRenew: pour que les administrateurs renouvellent les affectations expirées.
  • AdminRemove: pour que les administrateurs suppriment des utilisateurs ou des groupes des rôles éligibles.
  • UserAdd: pour que les utilisateurs activent leurs affectations éligibles.
  • UserExtend: pour que les utilisateurs demandent d’étendre leurs affectations éligibles arrivant à expiration.
  • UserRemove: pour que les utilisateurs désactivent leurs affectations éligibles actives.
  • UserRenew: pour que les utilisateurs demandent de renouveler leurs affectations éligibles expirées.
appScopeId String Identificateur de l’étendue spécifique à l’application lorsque l’étendue d’affectation est spécifique à l’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 ou tous les utilisateurs.
directoryScopeId String 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.
isValidationOnly Boolean Valeur booléenne qui 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.
justification String Message fourni par les utilisateurs et les administrateurs lors de la création de la demande sur la raison pour laquelle elle est nécessaire. Facultatif lorsque l’action a la valeur AdminRemove.
principalId String Identificateur du principal auquel l’attribution est accordée. Par exemple, un utilisateur ou un groupe. Pour les groupes, ils doivent être assignables à des rôles, autrement dit, isAssignableToRole de la propriété de groupe définie sur true.
roleDefinitionId String Identificateur du unifiedRoleDefinition pour lequel l’affectation est destinée. Obligatoire. En lecture seule.
scheduleInfo requestSchedule Objet de planification de la demande d’attribution de rôle. Cette propriété n’est pas obligatoire lorsque l’action est AdminRemove.
ticketInfo ticketInfo Objet ticketInfo attaché à la demande d’attribution de rôle qui inclut les détails du numéro de ticket et du système de ticket. Facultatif.

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

Dans la requête suivante, l’administrateur crée une demande pour attribuer l’éligibilité d’un rôle identifié par fdd7a751-b60b-444a-984c-02652fe8fa1c à un principal identifié par id07706ff1-46c7-4847-ae33-3003830675a1. L’étendue de l’éligibilité est tous les objets d’annuaire dans le locataire jusqu’au 30 juin 2022 à minuit HEURE UTC.

Demande

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

{
  "action": "AdminAssign",
  "justification": "Assign User Admin eligibility to IT Helpdesk (User) group",
  "roleDefinitionId": "fdd7a751-b60b-444a-984c-02652fe8fa1c",
  "directoryScopeId": "/",
  "principalId": "07706ff1-46c7-4847-ae33-3003830675a1",
  "scheduleInfo": {
    "startDateTime": "2021-07-01T00:00:00Z",
    "expiration": {
      "endDateTime": "2022-06-30T00:00:00Z",
      "type": "AfterDateTime"
    }
  }
}

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/beta/$metadata#roleManagement/directory/roleEligibilityScheduleRequests/$entity",
    "id": "672c03bf-226a-42ec-a8b7-3bfab96064a1",
    "status": "Provisioned",
    "createdDateTime": "2021-07-26T18:08:03.1299669Z",
    "completedDateTime": "2021-07-26T18:08:06.2081758Z",
    "approvalId": null,
    "customData": null,
    "action": "AdminAssign",
    "principalId": "07706ff1-46c7-4847-ae33-3003830675a1",
    "roleDefinitionId": "fdd7a751-b60b-444a-984c-02652fe8fa1c",
    "directoryScopeId": "/",
    "appScopeId": null,
    "isValidationOnly": false,
    "targetScheduleId": "672c03bf-226a-42ec-a8b7-3bfab96064a1",
    "justification": "Assign User Admin eligibility to IT Helpdesk (User) group",
    "createdBy": {
        "application": null,
        "device": null,
        "user": {
            "displayName": null,
            "id": "fc9a2c2b-1ddc-486d-a211-5fe8ca77fa1f"
        }
    },
    "scheduleInfo": {
        "startDateTime": "2021-07-26T18:08:06.2081758Z",
        "recurrence": null,
        "expiration": {
            "type": "afterDateTime",
            "endDateTime": "2022-06-30T00: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 rôle identifié par fdd7a751-b60b-444a-984c-02652fe8fa1c à un principal identifié par id07706ff1-46c7-4847-ae33-3003830675a1.

Demande

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

{
    "action": "AdminRemove",
    "justification": "Assign User Admin eligibility to IT Helpdesk (User) group",
    "roleDefinitionId": "fdd7a751-b60b-444a-984c-02652fe8fa1c",
    "directoryScopeId": "/",
    "principalId": "07706ff1-46c7-4847-ae33-3003830675a1",
    "scheduleInfo": {
        "startDateTime": "2021-07-26T18:08:06.2081758Z",
        "expiration": {
            "endDateTime": "2022-06-30T00:00:00Z",
            "type": "AfterDateTime"
        }
    }
}

Réponse

L’exemple suivant illustre la réponse. La demande retourne un objet de réponse qui affiche la status des modifications d’affectation précédemment éligibles sous la forme 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/beta/$metadata#roleManagement/directory/roleEligibilityScheduleRequests/$entity",
    "id": "7f88a144-f9a9-4f8c-9623-39c321ae93c2",
    "status": "Revoked",
    "createdDateTime": "2021-08-06T17:59:12.4263499Z",
    "completedDateTime": null,
    "approvalId": null,
    "customData": null,
    "action": "AdminRemove",
    "principalId": "07706ff1-46c7-4847-ae33-3003830675a1",
    "roleDefinitionId": "fdd7a751-b60b-444a-984c-02652fe8fa1c",
    "directoryScopeId": "/",
    "appScopeId": null,
    "isValidationOnly": false,
    "targetScheduleId": null,
    "justification": "Assign User Admin eligibility to IT Helpdesk (User) group",
    "createdBy": {
        "application": null,
        "device": null,
        "user": {
            "displayName": null,
            "id": "fc9a2c2b-1ddc-486d-a211-5fe8ca77fa1f"
        }
    },
    "scheduleInfo": {
        "startDateTime": "2021-07-26T18:08:06.2081758Z",
        "recurrence": null,
        "expiration": {
            "type": "afterDateTime",
            "endDateTime": "2022-06-30T00:00:00Z",
            "duration": null
        }
    },
    "ticketInfo": {
        "ticketNumber": null,
        "ticketSystem": null
    }
}