Creación de accessPackageResourceRequest

Espacio de nombres: microsoft.graph

Cree un nuevo objeto accessPackageResourceRequest para solicitar la adición de un recurso a un catálogo de paquetes de acceso, la actualización de un recurso o la eliminación de un recurso de un catálogo. Un recurso debe incluirse en un catálogo de paquetes de acceso para poder agregar un rol de ese recurso a un paquete de acceso.

  • Para agregar un grupo de Microsoft Entra como un recurso a un catálogo, establezca requestTypeadminAdden y un resource objeto que represente el recurso. El valor de la propiedad originSystem dentro de resource debe ser AadGroup y el valor de originId es el identificador del grupo.
  • Para agregar una aplicación Microsoft Entra como un recurso a un catálogo, establezca requestTypeadminAdden y un resource objeto que represente el recurso. El valor de la propiedad originSystem dentro de resource debe ser AadApplication y el valor de originId es el identificador de servicePrincipal.
  • Para agregar un sitio de SharePoint Online como recurso a un catálogo, establezca requestTypeadminAdden y un resource elemento que represente el recurso. El valor de la propiedad originSystem dentro de resource debe ser SharePointOnline y el valor de originId es el URI del sitio.
  • Para quitar un recurso de un catálogo, establezca requestTypeadminRemoveen y el resource objeto para que contenga el id objeto de recurso que se va a quitar. El objeto de recurso se puede recuperar mediante recursos de lista.

Esta API está disponible en las siguientes implementaciones nacionales de nube.

Servicio global Gobierno de EE. UU. L4 Us Government L5 (DOD) China operada por 21Vianet

Permissions

Elija el permiso o los permisos marcados como con privilegios mínimos para esta API. Use un permiso o permisos con privilegios superiores solo si la aplicación lo requiere. Para obtener más información sobre los permisos delegados y de aplicación, consulte Tipos de permisos. Para obtener más información sobre estos permisos, consulte la referencia de permisos.

Tipo de permiso Permisos con privilegios mínimos Permisos con privilegios más altos
Delegado (cuenta profesional o educativa) EntitlementManagement.ReadWrite.All No disponible.
Delegado (cuenta personal de Microsoft) No admitida. No admitida.
Aplicación EntitlementManagement.ReadWrite.All No disponible.
  • Para agregar un grupo de Microsoft Entra como recurso a un catálogo:
    • Si usa permisos delegados, el usuario que solicita agregar un grupo debe ser propietario del grupo o en un rol de directorio que le permita modificar grupos.
    • Si usa permisos de aplicación, también se debe asignar el permiso a la aplicación que solicita agregar el Group.ReadWrite.All grupo.
  • Para agregar una aplicación Microsoft Entra como recurso a un catálogo:
    • Si usa permisos delegados, el usuario que solicita agregar una aplicación debe ser propietario de la aplicación o en un rol de directorio que le permita modificar las asignaciones de roles de aplicación.
    • Si usa permisos de aplicación, a la aplicación que solicita agregar servicePrincipal también se le debe asignar el permiso Application.ReadWrite.All .
  • Para agregar un sitio de SharePoint Online como recurso a un catálogo:
    • Si usa permisos delegados, el usuario que quiere agregar el sitio debe tener un rol que le permita modificar los roles de sitio de SharePoint, como el rol Administrador de SharePoint .
    • Si usa permisos de aplicación, también se debe asignar el permiso a la Sites.FullControl.All aplicación.

Solicitud HTTP

POST /identityGovernance/entitlementManagement/resourceRequests

Encabezados de solicitud

Nombre Descripción
Authorization {token} de portador. Obligatorio. Obtenga más información sobre la autenticación y la autorización.
Content-Type application/json. Obligatorio.

Cuerpo de la solicitud

En el cuerpo de la solicitud, proporcione una representación JSON de un objeto accessPackageResourceRequest . Incluya la resource relación con un objeto accessPackageResource como parte de la solicitud y un catalog objeto que contenga su id.

Si se ejecuta correctamente, este método devuelve un 201 Created código de respuesta y un nuevo objeto accessPackageResourceRequest en el cuerpo de la respuesta.

Ejemplos

Ejemplo 1: Creación de un accessPackageResourceRequest para agregar un grupo como recurso

Solicitud

En el ejemplo siguiente se muestra la solicitud.

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"
  }
}

Respuesta

En el ejemplo siguiente se muestra la respuesta.

Nota: Se puede acortar el objeto de respuesta que se muestra aquí para mejorar la legibilidad.

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

{
  "id": "acc2294e-f37f-42d3-981d-4e83847ed0ce",
  "requestType": "adminAdd",
  "state": "delivered"
}

Ejemplo 2: Creación de un accessPackageResourceRequest para agregar una aplicación como recurso

Solicitud

En el ejemplo siguiente se muestra la solicitud.

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"
  }
}

Respuesta

En el ejemplo siguiente se muestra la respuesta.

Nota: Se puede acortar el objeto de respuesta que se muestra aquí para mejorar la legibilidad.

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

{
  "id": "acc2294e-f37f-42d3-981d-4e83847ed0ce",
  "requestType": "adminAdd",
  "state": "delivered"
}

Ejemplo 3: Crear un accessPackageResourceRequest para agregar un sitio de SharePoint Online como recurso

Solicitud

En el ejemplo siguiente se muestra la solicitud.

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"
  }
}

Respuesta

En el ejemplo siguiente se muestra la respuesta.

Nota: Se puede acortar el objeto de respuesta que se muestra aquí para mejorar la legibilidad.

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

{
  "id": "acc2294e-f37f-42d3-981d-4e83847ed0ce",
  "requestType": "adminAdd",
  "state": "delivered"
}

Ejemplo 4: Creación de un accessPackageResourceRequest para quitar un recurso

Solicitud

En el ejemplo siguiente se muestra la solicitud.

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"
  }
}

Respuesta

En el ejemplo siguiente se muestra la respuesta.

Nota: Se puede acortar el objeto de respuesta que se muestra aquí para mejorar la legibilidad.

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

{
  "id": "acc2294e-f37f-42d3-981d-4e83847ed0ce",
  "requestType": "adminRemove",
  "state": "delivered"
}

Ejemplo 5: Creación de un accessPackageResourceRequest para actualizar una aplicación como un recurso con atributos

En el ejemplo siguiente se muestra una solicitud para actualizar un recurso en un catálogo, para una aplicación que ya se agregó como recurso, con dos atributos.

Solicitud

En el ejemplo siguiente se muestra la solicitud.

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"
  }
}

Respuesta

En el ejemplo siguiente se muestra la respuesta.

Nota: Se puede acortar el objeto de respuesta que se muestra aquí para mejorar la legibilidad.

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

{
  "id": "acc2294e-f37f-42d3-981d-4e83847ed0ce",
  "requestType": "adminAdd",
  "state": "delivered"
}