Criar accessPackageResourceRequest

Namespace: microsoft.graph

Importante

As APIs na versão /beta no Microsoft Graph estão sujeitas a alterações. Não há suporte para o uso dessas APIs em aplicativos de produção. Para determinar se uma API está disponível na v1.0, use o seletor de versão.

Crie um novo objeto accessPackageResourceRequest para solicitar a adição de um recurso a um catálogo de pacotes de acesso ou a remoção de um recurso de um catálogo. Um recurso deve ser incluído em um catálogo de pacotes de acesso antes que a função desse recurso possa ser adicionada a um pacote de acesso.

Permissões

Uma das seguintes permissões é obrigatória para chamar esta API. Para saber mais, incluindo como escolher permissões, confira Permissões.

Tipo de permissão Permissões (da com menos para a com mais privilégios)
Delegado (conta corporativa ou de estudante) EntitlementManagement.ReadWrite.All
Delegado (conta pessoal da Microsoft) Sem suporte.
Aplicativo EntitlementManagement.ReadWrite.All

Solicitação HTTP

POST /identityGovernance/entitlementManagement/accessPackageResourceRequests

Cabeçalhos de solicitação

Nome Descrição
Autorização {token} de portador. Obrigatório.
Content-Type application/json. Obrigatório.

Corpo da solicitação

No corpo da solicitação, fornece uma representação JSON de um objeto accessPackageResourceRequest . Inclua a accessPackageResource relação com um objeto accessPackageResource como parte da solicitação.

Para adicionar um grupo do Azure AD como um recurso a um catálogo, de definir a catalogId como da ID do catálogo, requestType AdminAddcomo e accessPackageResource representando o recurso. O valor da propriedade originSystem dentro do accessPackageResource deve ser AadGroup e o valor da originId é o identificador do grupo. Se estiver usando permissões delegadas, o usuário que solicitar adicionar um grupo deverá ser um proprietário do grupo ou em uma função de diretório que permita modificar grupos. Se estiver usando permissões de aplicativo, o aplicativo solicitando adicionar o grupo também deverá ter a Group.ReadWrite.All permissão atribuída.

Para adicionar um aplicativo do Azure AD como um recurso a um catálogo, de definir a catalogId como da ID do catálogo, requestType AdminAddcomo e accessPackageResource representando o recurso. O valor da propriedade originSystem accessPackageResource dentro do deve ser AadApplication e o valor da originId é o identificador do servicePrincipal. Se estiver usando permissões delegadas, o usuário que solicitar adicionar um aplicativo deverá ser proprietário do aplicativo ou em uma função de diretório que permita modificar atribuições de função de aplicativo.

Para adicionar um site SharePoint Online como um recurso a um catálogo, de definir a catalogId como da ID do catálogo, requestType AdminAddcomo e accessPackageResource representando o recurso. O valor da propriedade originSystem dentro do accessPackageResource deve ser SharePointOnline e o valor do originId é o URI do site. Se estiver usando permissões delegadas, o usuário deverá estar na função SharePoint Administrador. Se estiver usando permissões de aplicativo, o aplicativo solicitando adicionar o site também deverá ter a Sites.FullControl.All permissão atribuída. Para atribuir o ambiente de localização geográfica a um recurso do Sharepoint Online multilocação geográfica, inclua a relação accessPackageResourceEnvironment no accessPackageResource objeto. Isso pode ser feito de duas maneiras:

  • Use @odata.bind anotação para atribuir o id do a accessPackageResourceEnvironment um accessPackageResourceEnvironment objeto.
  • Especifique originId o parâmetro do accessPackageResourceEnvironment em um accessPackageResourceEnvironment objeto.

Para remover um recurso de um catálogo, de definir a catalogId como da ID do catálogo, requestType AdminRemovecomo , accessPackageResource e o objeto de recurso a ser removido. O objeto resource pode ser recuperado usando list accessPackageResources.

Resposta

Se tiver êxito, este método retornará um 201 Created código de resposta e um novo objeto accessPackageResourceRequest no corpo da resposta.

Exemplos

Exemplo 1: Criar um accessPackageResourceRequest para adicionar um site como um recurso

Solicitação

Este é um exemplo de solicitação.

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

Resposta

Este é um exemplo de resposta.

Observação: o objeto de resposta mostrado aqui pode ser encurtado para legibilidade.

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

Exemplo 2: criar um accessPackageResourceRequest para adicionar um site como um recurso e atribuir um accessPackageResourceEnvironment usando @odata.bind

Solicitação

Este é um exemplo de solicitação. Neste exemplo, a @odata.bind anotação é usada para atribuir o id do a accessPackageResourceEnvironment um accessPackageResourceEnvironment objeto.

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

Resposta

Este é um exemplo de resposta.

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
}

Exemplo 3: criar um accessPackageResourceRequest para adicionar um site como um recurso e atribuir um accessPackageResourceEnvironment usando originId

Solicitação

Este é um exemplo de solicitação. Neste exemplo, os parâmetros de um accessPackageResourceEnvironment são especificados em um accessPackageResourceEnvironment objeto.

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

Resposta

Este é um exemplo de resposta.

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
}

Exemplo 4: Criar um accessPackageResourceRequest para adicionar um grupo como um recurso

Solicitação

Este é um exemplo de solicitação.

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

Resposta

Este é um exemplo de resposta.

Observação: o objeto de resposta mostrado aqui pode ser encurtado para legibilidade.

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

Exemplo 5: Criar um accessPackageResourceRequest para remover um recurso

Solicitação

Este é um exemplo de solicitação.

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

Resposta

Este é um exemplo de resposta.

Observação: o objeto de resposta mostrado aqui pode ser encurtado para legibilidade.

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

Exemplo 6: Criar um accessPackageResourceRequest para adicionar um aplicativo

Solicitação

A seguir, um exemplo da solicitação para adicionar um aplicativo a um catálogo, incluindo a especificação de um atributo necessário desse aplicativo.

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

Resposta

Este é um exemplo de resposta.

Observação: o objeto de resposta mostrado aqui pode ser encurtado para legibilidade.

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

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