Créer accessPackageResourceRequest

Espace de noms: microsoft.graph

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.

  • Pour ajouter un groupe Microsoft Entra en tant que ressource à un catalogue, définissez requestType sur adminAddet un resource représentant la ressource. La valeur de la propriété originSystem dans le resource doit être AadGroup et la valeur de l’originId est l’identificateur du groupe.
  • Pour ajouter une application Microsoft Entra en tant que ressource à un catalogue, définissez requestType sur adminAddet un resource représentant la ressource. La valeur de la propriété originSystem dans doit resource être AadApplication et la valeur de l’originId est l’identificateur du servicePrincipal.
  • Pour ajouter un site SharePoint Online en tant que ressource à un catalogue, définissez requestType sur adminAddet un resource représentant la ressource. La valeur de la propriété originSystem dans le resource doit être SharePointOnline et la valeur de originId est l’URI du site.
  • Pour supprimer une ressource d’un catalogue, définissez requestType sur adminRemoveet sur resource pour contenir le id de l’objet de ressource à supprimer. L’objet de ressource peut être récupéré à l’aide de ressources de liste.

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.
  • Pour ajouter un groupe Microsoft Entra en tant que ressource à un catalogue :
    • 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 :
    • 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.
    • Si vous utilisez des autorisations d’application, l’application qui demande l’ajout de servicePrincipal doit également se voir attribuer l’autorisation Application.ReadWrite.All .
  • Pour ajouter un site SharePoint Online en tant que ressource à un catalogue :
    • Si vous utilisez des autorisations déléguées, l’utilisateur qui souhaite ajouter le site doit avoir un rôle qui lui permet de modifier les rôles de site SharePoint, comme le rôle Administrateur SharePoint .
    • Si vous utilisez des autorisations d’application, l’autorisation doit également être attribuée à l’application Sites.FullControl.All .

Requête HTTP

POST /identityGovernance/entitlementManagement/resourceRequests

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 resource relation avec un objet accessPackageResource dans le cadre de la requête et un catalog objet contenant son id.

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 groupe en tant que ressource

Demande

L’exemple suivant illustre une demande.

POST https://graph.microsoft.com/v1.0/identityGovernance/entitlementManagement/resourceRequests
Content-type: application/json

{
  "requestType": "adminAdd",
  "resource": {
    "displayName": "Test group",
    "originId": "8ab659d0-3839-427d-8c54-5ae92f0b3e2e",
    "originSystem": "AadGroup"
  },
  "catalog": {
    "id": "beedadfe-01d5-4025-910b-84abb9369997"
  }
}

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": "acc2294e-f37f-42d3-981d-4e83847ed0ce",
  "requestType": "adminAdd",
  "state": "delivered"
}

Exemple 2 : Créer un accessPackageResourceRequest pour ajouter une application en tant que ressource

Demande

L’exemple suivant illustre une demande.

POST https://graph.microsoft.com/v1.0/identityGovernance/entitlementManagement/resourceRequests
Content-type: application/json

{
  "requestType": "adminAdd",
  "resource": {
    "originId": "e81d7f57-0840-45e1-894b-f505c1bdcc1f",
    "originSystem": "AadApplication"
  },
  "catalog": {
    "id": "beedadfe-01d5-4025-910b-84abb9369997"
  }
}

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": "acc2294e-f37f-42d3-981d-4e83847ed0ce",
  "requestType": "adminAdd",
  "state": "delivered"
}

Exemple 3 : Créer un accessPackageResourceRequest pour ajouter un site SharePoint Online en tant que ressource

Demande

L’exemple suivant illustre une demande.

POST https://graph.microsoft.com/v1.0/identityGovernance/entitlementManagement/resourceRequests
Content-type: application/json

{
  "requestType": "adminAdd",
  "resource": {
    "originId": "https://microsoft.sharepoint.com/sites/Example",
    "originSystem": "SharePointOnline"
  },
  "catalog": {
    "id": "beedadfe-01d5-4025-910b-84abb9369997"
  }
}

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": "acc2294e-f37f-42d3-981d-4e83847ed0ce",
  "requestType": "adminAdd",
  "state": "delivered"
}

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

Demande

L’exemple suivant illustre une demande.

POST https://graph.microsoft.com/v1.0/identityGovernance/entitlementManagement/resourceRequests
Content-type: application/json

{
  "requestType": "adminRemove",
  "resource": {
    "id": "1d0bb962-5bb0-4b16-a488-fda7a788b9ec"
  },
  "catalog": {
    "id": "beedadfe-01d5-4025-910b-84abb9369997"
  }
}

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": "acc2294e-f37f-42d3-981d-4e83847ed0ce",
  "requestType": "adminRemove",
  "state": "delivered"
}

Exemple 5 : Créer un accessPackageResourceRequest pour mettre à jour une application en tant que ressource avec des attributs

L’exemple suivant montre une demande de mise à jour d’une ressource dans un catalogue, pour une application qui a déjà été ajoutée en tant que ressource, avec deux attributs.

Demande

L’exemple suivant illustre une demande.

POST https://graph.microsoft.com/v1.0/identityGovernance/entitlementManagement/resourceRequests
Content-type: application/json

{
  "requestType": "adminUpdate",
  "resource": {
    "originId": "e81d7f57-0840-45e1-894b-f505c1bdcc1f",
    "originSystem": "AadApplication",
    "attributes": [
      {
        "destination": {
          "@odata.type": "microsoft.graph.accessPackageUserDirectoryAttributeStore"
        },
        "name": "officeLocation",
        "source": {
          "@odata.type": "#microsoft.graph.accessPackageResourceAttributeQuestion",
          "question": {
            "@odata.type": "#microsoft.graph.accessPackageTextInputQuestion",
            "sequence": 1,
            "isRequired": true,
            "isAnswerEditable": true,
            "text": "What office do you work at?",
            "isSingleLineQuestion": true,
            "regexPattern": "[a-zA-Z]+[a-zA-Z\\s]*"
          }
        }
      },
      {
        "destination": {
          "@odata.type": "microsoft.graph.accessPackageUserDirectoryAttributeStore"
        },
        "name": "extension_e409fedc08ab4807a9eb53ebc0d6cc9f_Expense_CostCenter",
        "source": {
          "@odata.type": "#microsoft.graph.accessPackageResourceAttributeQuestion",
          "question": {
            "@odata.type": "#microsoft.graph.accessPackageTextInputQuestion",
            "isRequired": false,
            "text": "What is your cost center number?",
            "sequence": 0,
            "isSingleLineQuestion": true,
            "regexPattern": "[0-9]*"
          }
        }
      }
    ]
  },
  "catalog": {
    "id": "beedadfe-01d5-4025-910b-84abb9369997"
  }
}

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": "acc2294e-f37f-42d3-981d-4e83847ed0ce",
  "requestType": "adminAdd",
  "state": "delivered"
}