Créer accessPackageResourceRequest

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 accessPackageResourceRequest pour demander l’ajout d’une ressource à un catalogue de packages d’accès, la mise à jour d’une ressource ou la suppression d’une ressource d’un catalogue. Une ressource doit être incluse dans un catalogue de packages d’accès avant qu’un rôle de cette ressource puisse être ajouté à un package d’accès.

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

Requête HTTP

POST /identityGovernance/entitlementManagement/accessPackageResourceRequests

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 d’un objet accessPackageResourceRequest . Incluez la accessPackageResource relation avec un objet accessPackageResource dans le cadre de la requête.

Pour ajouter un groupe Microsoft Entra en tant que ressource à un catalogue, définissez catalogId sur l’ID du catalogue, requestTypeAdminAddsur et représentant accessPackageResource la ressource. La valeur de la propriété originSystem dans le accessPackageResource doit être AadGroup et la valeur de l’originId est l’identificateur du groupe. Si vous utilisez des autorisations déléguées, l’utilisateur qui demande l’ajout d’un groupe doit être propriétaire du groupe ou dans un rôle d’annuaire qui lui permet de modifier des groupes. Si vous utilisez des autorisations d’application, l’autorisation doit également être attribuée à l’application demandant d’ajouter le Group.ReadWrite.All groupe.

Pour ajouter une application Microsoft Entra en tant que ressource à un catalogue, définissez catalogId sur l’ID du catalogue, requestType sur AdminAddet accessPackageResource représentant la ressource. La valeur de la propriété originSystem dans doit accessPackageResource être AadApplication et la valeur de l’originId est l’identificateur du servicePrincipal. Si vous utilisez des autorisations déléguées, l’utilisateur qui demande à ajouter une application doit être propriétaire de l’application ou dans un rôle d’annuaire qui lui permet de modifier les attributions de rôles d’application.

Pour ajouter un site SharePoint Online en tant que ressource à un catalogue, définissez catalogId sur l’ID du catalogue, requestTypeAdminAddsur et accessPackageResource représentant la ressource. La valeur de la propriété originSystem dans le accessPackageResource doit être SharePointOnline et la valeur de originId est l’URI du site. Si vous utilisez des autorisations déléguées, l’utilisateur doit avoir le rôle Administrateur SharePoint. Si vous utilisez des autorisations d’application, l’application qui demande l’ajout du site doit également se voir attribuer l’autorisation Sites.FullControl.All . Pour affecter l’environnement de géolocalisation pour une ressource Sharepoint Online multigéographique, incluez la relation accessPackageResourceEnvironment dans l’objet accessPackageResource . Cette opération peut être effectuée de deux manières :

  • Utilisez @odata.bind l’annotation pour affecter le id de accessPackageResourceEnvironment à un accessPackageResourceEnvironment objet .
  • Spécifiez le originId paramètre de dans accessPackageResourceEnvironment un accessPackageResourceEnvironment objet .

Pour supprimer une ressource d’un catalogue, définissez catalogId sur l’ID du catalogue, requestTypeAdminRemovesur et sur l’objet accessPackageResource de ressource à supprimer. L’objet de ressource peut être récupéré à l’aide de list accessPackageResources.

Réponse

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

Exemples

Exemple 1 : Créer un accessPackageResourceRequest pour ajouter un site en tant que ressource

Demande

L’exemple suivant illustre une demande.

POST https://graph.microsoft.com/beta/identityGovernance/entitlementManagement/accessPackageResourceRequests
Content-type: application/json

{
  "catalogId":"26ac0c0a-08bc-4a7b-a313-839f58044ba5",
  "requestType": "AdminAdd",
  "justification": "",
  "accessPackageResource": {
     "displayName": "Sales",
     "description": "https://contoso.sharepoint.com/sites/Sales",
     "url": "https://contoso.sharepoint.com/sites/Sales",
     "resourceType": "SharePoint Online Site",
     "originId": "https://contoso.sharepoint.com/sites/Sales",
     "originSystem": "SharePointOnline"
  }
}

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

{
  "catalogId": "26ac0c0a-08bc-4a7b-a313-839f58044ba5",
  "id": "1fe272f0-d463-42aa-a9a8-b07ab50a1c4d",
  "isValidationOnly": false,
  "justification": "",
  "requestState": "Delivered",
  "requestStatus": "Fulfilled",
  "requestType": "AdminAdd"
}

Exemple 2 : Créer un accessPackageResourceRequest pour ajouter un site en tant que ressource et affecter un accessPackageResourceEnvironment à l’aide de @odata.bind

Demande

L’exemple suivant illustre une demande. Dans cet exemple, l’annotation @odata.bind est utilisée pour affecter le id de à accessPackageResourceEnvironment un accessPackageResourceEnvironment objet .

POST https://graph.microsoft.com/beta/identityGovernance/entitlementManagement/accessPackageResourceRequests
Content-type: application/json

{
    "catalogId": "de9315c1-272b-4905-924b-cc112ca180c7",
    "accessPackageResource": {
        "displayName": "Community Outreach",
        "description": "https://contoso.sharepoint.com/sites/CSR",
        "resourceType": "SharePoint Online Site",
        "originId": "https://contoso.sharepoint.com/sites/CSR",
        "originSystem": "SharePointOnline",
        "accessPackageResourceEnvironment@odata.bind": "accessPackageResourceEnvironments/615f2218-678f-471f-a60a-02c2f4f80c57"
    },
    "requestType": "AdminAdd"
}

Réponse

L’exemple suivant illustre la réponse.

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

{
    "@odata.context": "https://graph.microsoft.com/beta/$metadata#identityGovernance/entitlementManagement/accessPackageResourceRequests/$entity",
    "catalogId": "de9315c1-272b-4905-924b-cc112ca180c7",
    "executeImmediately": false,
    "id": "d3f800d5-0dd6-47f3-9e90-ef562c7551dc",
    "requestType": "AdminAdd",
    "requestState": "Delivered",
    "requestStatus": "Fulfilled",
    "isValidationOnly": false,
    "expirationDateTime": null,
    "justification": null
}

Exemple 3 : Créer un accessPackageResourceRequest pour ajouter un site en tant que ressource et affecter un accessPackageResourceEnvironment à l’aide de originId

Demande

L’exemple suivant illustre une demande. Dans cet exemple, les paramètres d’un accessPackageResourceEnvironment sont spécifiés dans un accessPackageResourceEnvironment objet .

POST https://graph.microsoft.com/beta/identityGovernance/entitlementManagement/accessPackageResourceRequests
Content-type: application/json

{
    "catalogId": "de9315c1-272b-4905-924b-cc112ca180c7",
    "accessPackageResource": {
        "displayName": "Community Outreach",
        "description": "https://contoso.sharepoint.com/sites/CSR",
        "resourceType": "SharePoint Online Site",
        "originId": "https://contoso.sharepoint.com/sites/CSR",
        "originSystem": "SharePointOnline",
        "accessPackageResourceEnvironment": {
            "originId": "https://contoso-admin.sharepoint.com/"
        }
    },
    "requestType": "AdminAdd"
}

Réponse

L’exemple suivant illustre la réponse.

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

{
    "@odata.context": "https://graph.microsoft.com/beta/$metadata#identityGovernance/entitlementManagement/accessPackageResourceRequests/$entity",
    "catalogId": "de9315c1-272b-4905-924b-cc112ca180c7",
    "executeImmediately": false,
    "id": "eadf3fbb-668c-4c3a-8d84-7c8bd73dc3e4",
    "requestType": "AdminAdd",
    "requestState": "Delivered",
    "requestStatus": "Fulfilled",
    "isValidationOnly": false,
    "expirationDateTime": null,
    "justification": null
}

Exemple 4 : Créer un accessPackageResourceRequest pour ajouter un groupe en tant que ressource

Demande

L’exemple suivant illustre une demande.

POST https://graph.microsoft.com/beta/identityGovernance/entitlementManagement/accessPackageResourceRequests
Content-type: application/json

{

  "catalogId":"beedadfe-01d5-4025-910b-84abb9369997",
  "requestType": "AdminAdd",
  "accessPackageResource": {
     "originId": "c6294667-7348-4f5a-be73-9d2c65f574f3",
     "originSystem": "AadGroup"
  }
}

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

{
  "catalogId": "beedadfe-01d5-4025-910b-84abb9369997",
  "id": "acc2294e-f37f-42d3-981d-4e83847ed0ce",
  "requestType": "AdminAdd",
  "requestState": "Delivered",
  "requestStatus": "Fulfilled"
}

Exemple 5 : Créer un accessPackageResourceRequest pour supprimer une ressource

Demande

L’exemple suivant illustre une demande.

POST https://graph.microsoft.com/beta/identityGovernance/entitlementManagement/accessPackageResourceRequests
Content-type: application/json

{
  "catalogId": "beedadfe-01d5-4025-910b-84abb9369997",
  "requestType": "AdminRemove",
  "accessPackageResource": {
    "id": "354078e5-dbce-4894-8af4-0ab274d41662"
  }
}

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

{
  "catalogId": "beedadfe-01d5-4025-910b-84abb9369997",
  "id": "65c3340d-defb-49a9-8930-63841fda0e68",
  "requestType": "AdminRemove",
  "requestState": "Delivered",
  "requestStatus": "Fulfilled"
}

Exemple 6 : Créer un accessPackageResourceRequest pour ajouter une application

Demande

L’exemple suivant montre une demande d’ajout d’une application à un catalogue, y compris la spécification d’un attribut requis de cette application.

POST https://graph.microsoft.com/beta/identityGovernance/entitlementManagement/accessPackageResourceRequests
Content-type: application/json

{
  "catalogId": "26ac0c0a-08bc-4a7b-a313-839f58044ba5",
  "requestType": "AdminAdd",
  "justification": "",
  "accessPackageResource": {
      "displayName": "Faculty cafeteria ordering",
      "description": "Example application",
      "url": "https://myapps.microsoft.com/example.com/signin/Faculty%20cafeteria%20ordering/f1e3b407-942d-4934-9a3f-cef1975cb988/",
      "resourceType": "Application",
      "originId": "2f1099a6-d4fc-4cc9-a0ef-ddd3f1bf0b7e",
      "originSystem": "AadApplication",
      "attributes": [
        {
          "attributeName": "extension_2b676109c7c74ae2b41549205f1947ed_personalTitle",
          "isEditable": true,
          "isPersistedOnAssignmentRemoval": true,
          "attributeSource": {
              "@odata.type": "#microsoft.graph.accessPackageResourceAttributeQuestion",
              "question": {
                  "@odata.type": "#microsoft.graph.accessPackageTextInputQuestion",
                  "isRequired": false,
                  "sequence": 0,
                  "isSingleLineQuestion": true,
                  "text": {
                      "defaultText": "Title",
                      "localizedTexts": []
                  }
              }
          },
          "attributeDestination": {
              "@odata.type": "#microsoft.graph.accessPackageUserDirectoryAttributeStore"
          }
        }
      ]
  }
}

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

{
  "id": "f0e632ed-afd2-41d3-8d6e-ccefda457e5e",
  "requestType": "AdminAdd",
  "requestState": "Delivered",
  "requestStatus": "Fulfilled"
}