Compartilhar via


Criar accessPackageResourceRequest

Namespace: microsoft.graph

Crie um novo objeto accessPackageResourceRequest para solicitar a adição de um recurso a um catálogo de pacotes de acesso, atualização de um recurso 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 uma função desse recurso possa ser adicionada a um pacote de acesso.

  • Para adicionar um grupo de Microsoft Entra como um recurso a um catálogo, defina o requestType como adminAdde um resource que representa o recurso. O valor da propriedade originSystem dentro do resource deve ser AadGroup e o valor da originId é o identificador do grupo.
  • Para adicionar um aplicativo Microsoft Entra como um recurso a um catálogo, defina o requestType como adminAdde um resource que representa o recurso. O valor da propriedade originSystem dentro do resource deve ser AadApplication e o valor da originId é o identificador do servicePrincipal.
  • Para adicionar um site do SharePoint Online como um recurso a um catálogo, defina o requestType como adminAdd, e um resource que representa o recurso. O valor da propriedade originSystem dentro do resource deve ser SharePointOnline e o valor da originId é o URI do site.
  • Para remover um recurso de um catálogo, defina o requestType como adminRemove, e o resource para conter o id do objeto de recurso a ser removido. O objeto de recurso pode ser recuperado usando recursos de lista.

Essa API está disponível nas seguintes implantações nacionais de nuvem.

Serviço global Governo dos EUA L4 GOVERNO DOS EUA L5 (DOD) China operada pela 21Vianet

Permissões

Escolha a permissão ou as permissões marcadas como menos privilegiadas para essa API. Use uma permissão ou permissões privilegiadas mais altas somente se o aplicativo exigir. Para obter detalhes sobre permissões delegadas e de aplicativo, consulte Tipos de permissão. Para saber mais sobre essas permissões, consulte a referência de permissões.

Tipo de permissão Permissões menos privilegiadas Permissões privilegiadas mais altas
Delegado (conta corporativa ou de estudante) EntitlementManagement.ReadWrite.All Indisponível.
Delegado (conta pessoal da Microsoft) Sem suporte. Sem suporte.
Application EntitlementManagement.ReadWrite.All Indisponível.
  • Para adicionar um grupo de Microsoft Entra como um recurso a um catálogo:
    • Se estiver usando permissões delegadas, o usuário que solicita adicionar um grupo deverá ser proprietário do grupo ou em uma função de diretório que permita que eles modifiquem grupos.
    • Se usar permissões de aplicativo, o aplicativo que solicita adicionar o grupo também deverá receber a Group.ReadWrite.All permissão.
  • Para adicionar um aplicativo Microsoft Entra como um recurso a um catálogo:
    • Se estiver usando permissões delegadas, o usuário que solicita 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.
    • Se usar permissões de aplicativo, o aplicativo que solicita adicionar o servicePrincipal também deverá receber a permissão Application.ReadWrite.All .
  • Para adicionar um site do SharePoint Online como um recurso a um catálogo:
    • Se estiver usando permissões delegadas, o usuário que deseja adicionar o site deverá estar em uma função que permita modificar as funções do site do SharePoint, como a função administrador do SharePoint .
    • Se estiver usando permissões de aplicativo, o aplicativo também deverá receber a Sites.FullControl.All permissão.

Solicitação HTTP

POST /identityGovernance/entitlementManagement/resourceRequests

Cabeçalhos de solicitação

Nome Descrição
Autorização {token} de portador. Obrigatório. Saiba mais sobre autenticação e autorização.
Content-Type application/json. Obrigatório.

Corpo da solicitação

No corpo da solicitação, forneça uma representação JSON de um objeto accessPackageResourceRequest . Inclua a resource relação com um objeto accessPackageResource como parte da solicitação e um catalog objeto que contém seu id.

Se for bem-sucedido, esse 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 grupo como um recurso

Solicitação

O exemplo a seguir mostra uma solicitação.

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

Resposta

O exemplo a seguir mostra a resposta.

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

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

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

Exemplo 2: criar um accessPackageResourceRequest para adicionar um aplicativo como um recurso

Solicitação

O exemplo a seguir mostra uma solicitação.

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

Resposta

O exemplo a seguir mostra a resposta.

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

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

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

Exemplo 3: criar um accessPackageResourceRequest para adicionar um site do SharePoint Online como um recurso

Solicitação

O exemplo a seguir mostra uma solicitação.

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

Resposta

O exemplo a seguir mostra a resposta.

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

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

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

Exemplo 4: criar um accessPackageResourceRequest para remover um recurso

Solicitação

O exemplo a seguir mostra uma solicitação.

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

Resposta

O exemplo a seguir mostra a resposta.

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

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

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

Exemplo 5: criar um accessPackageResourceRequest para atualizar um aplicativo como um recurso com atributos

O exemplo a seguir mostra uma solicitação para atualizar um recurso em um catálogo, para um aplicativo que já foi adicionado como um recurso, com dois atributos.

Solicitação

O exemplo a seguir mostra uma solicitação.

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

Resposta

O exemplo a seguir mostra a resposta.

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

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

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