Tipo de recurso permission

Namespace: microsoft.graph

O recurso Permission fornece informações sobre uma permissão de compartilhamento concedida a um recurso DriveItem.

As permissões de partilha têm muitos formulários diferentes. O recurso de permissão representa esses diferentes formulários por meio de facetas no recurso.

OneDrive for Business e as bibliotecas de documentos do SharePoint não devolvem a propriedade herdadaFrom. grantedTo e grantedToIdentities são preteridos no futuro e a resposta será migrada para grantedToV2 e grantedToIdentitiesV2 , respetivamente, em nomes de propriedade adequados.

Representação JSON

A representação JSON seguinte mostra o tipo de recurso.


{
  "id": "string (identifier)",
  "grantedTo": {"@odata.type": "microsoft.graph.identitySet"},
  "grantedToIdentities": [{"@odata.type": "microsoft.graph.identitySet"}],
  "grantedToV2": {"@odata.type": "microsoft.graph.sharePointIdentitySet"},
  "grantedToIdentitiesV2": [{"@odata.type": "microsoft.graph.sharePointIdentitySet"}],
  "inheritedFrom": {"@odata.type": "microsoft.graph.itemReference"},
  "invitation": {"@odata.type": "microsoft.graph.sharingInvitation"},
  "link": {"@odata.type": "microsoft.graph.sharingLink"},
  "roles": ["string"],
  "shareId": "string",
  "expirationDateTime": "string (timestamp)",
  "hasPassword": "boolean"
}

Propriedades

Propriedade Tipo Descrição
expirationDateTime DateTimeOffset Um formato yyyy-MM-ddTHH:mm:ssZ de DateTimeOffset indica o tempo de expiração da permissão. DateTime.MinValue indica que não existe nenhuma expiração definida para esta permissão. Opcional.
id String O identificador exclusivo da permissão entre todas as permissões no item. Somente leitura.
hasPassword Boolean Indica se a senha está definida para essa permissão. Essa propriedade só aparece na resposta. Opcional. Somente leitura. Somente para o OneDrive Pessoal..
grantedTo (preterido) IdentitySet Para permissões de tipo de usuário, os detalhes dos usuários e aplicativos para essa permissão. Somente leitura.
grantedToIdentities (preterido) Coleção(IdentitySet) Para permissões de tipo, os detalhes dos usuários aos quais a permissão foi concedida. Somente leitura.
grantedToIdentitiesV2 Coleção(SharePointIdentitySet) Para permissões de tipo de link, os detalhes dos usuários aos quais a permissão foi concedida. Somente leitura.
grantedToV2 SharePointIdentitySet Para permissões de tipo de usuário, os detalhes dos usuários e aplicativos para essa permissão. Somente leitura.
inheritedFrom ItemReference Fornece uma referência ao predecessor da permissão atual, se for herdada de um predecessor. Somente leitura.
invitation SharingInvitation Detalhes de um convite de compartilhamento associado para esta permissão. Somente leitura.
link SharingLink Fornece os detalhes da ligação da permissão atual, se for uma permissão de tipo de ligação. Somente leitura.
funções Coleção de Cadeias de Caracteres O tipo de permissão, por exemplo, read. Veja abaixo a lista completa de funções. Somente leitura.
shareId String Um token exclusivo que pode ser usado para acessar esse item compartilhado por meio da API Shares. Somente leitura.

O recurso permission usa facetas para fornecer informações sobre o tipo de permissão representado pelo recurso.

Permissões com uma faceta link representam links de compartilhamento criados no item. Os links de compartilhamento contêm um token exclusivo que fornece acesso ao item para qualquer pessoa com o link.

As permissões com uma faceta de convite representam permissões adicionadas ao convidar utilizadores ou grupos específicos para terem acesso ao ficheiro.

Valores de propriedades Roles

Valor Descrição
leitura Oferece a capacidade de ler os metadados e o conteúdo do item.
gravação Oferece a capacidade de ler e modificar os metadados e o conteúdo do item.
proprietário Para o Microsoft Office SharePoint Online e o OneDrive for Business, este representa o papel do proprietário.

O tipo de permissões mais comum é partilhar ligações. Esses links fornecem uma URL exclusiva que inclui o recurso que está sendo compartilhado e um token de autenticação que fornece acesso ao recurso. Os usuários não precisam entrar para acessar o conteúdo compartilhado com um link de compartilhamento. Os usuários podem compartilhar um link que concede acesso somente leitura ou acesso de gravação ao conteúdo.

Um link de exibição oferece acesso somente leitura a um item.

{
  "id": "1",
  "roles": ["read"],
  "link": {
    "type": "view",
    "webUrl": "https://onedrive.live.com/redir?resid=5D33DD65C6932946!70859&authkey=!AL7N1QAfSWcjNU8&ithint=folder%2cgif",
    "application": { "id": "1234", "displayName": "Sample Application" }
  },
  "shareId": "!LKj1lkdlals90j1nlkascl",
  "expirationDateTime": "0001-01-01T00:00:00Z"
}

Um link de edição fornece acesso de leitura e gravação a um item.

{
  "id": "2",
  "roles": ["write"],
  "link": {
    "type": "edit",
    "webUrl": "https://onedrive.live.com/redir?resid=5D33DD65C6932946!70859&authkey=!AL7N1QAfSWcjNU8&ithint=folder%2cgif",
    "application": { "id": "1234", "displayName": "Sample Application" }
  },
  "shareId": "!LKj1lkdlals90j1nlkascl",
  "expirationDateTime": "0001-01-01T00:00:00Z"
}

Este link fornece acesso de leitura e gravação para as pessoas específicas na coleção grantedToIdentities.

{
  "id": "3",
  "grantedToIdentities": [
    {
       "user": {
        "id": "35fij1974gb8832",
        "displayName": "Misty Suarez"
      }
    },
    {
       "user": {
        "id": "9397721fh4hgh73",
        "displayName": "Judith Clemons"
      }
    }
  ],
  "grantedToIdentitiesV2": [
    {
       "user": {
        "id": "35fij1974gb8832",
        "displayName": "Misty Suarez"
      },
      "siteUser": {
        "id": "1",
        "displayName": "Misty Suarez",
        "loginName": "Misty Suarez"
      }
    },
    {
       "user": {
        "id": "9397721fh4hgh73",
        "displayName": "Judith Clemons"
      },
      "siteUser": {
        "id": "2",
        "displayName": "Judith Clemons",
        "loginName": "Judith Clemons"
      }
    }
  ],
  "roles": ["write"],
  "link": {
    "webUrl": "https://contoso.sharepoint.com/:w:/t/design/a577ghg9hgh737613bmbjf839026561fmzhsr85ng9f3hjck2t5s",
    "application": { "id": "1234", "displayName": "Sample Application" }
  },
  "shareId": "!LKj1lkdlals90j1nlkascl",
  "expirationDateTime": "0001-01-01T00:00:00Z"
}

Esta ligação não concede privilégios adicionais ao utilizador.

{
  "id": "00000000-0000-0000-0000-000000000000",
  "roles": ["read"],
  "link": {
    "scope": "existingAccess",
    "type": "view",
    "webUrl": "https://contoso.sharepoint.com/:w:/t/design/Shared%20Documents/SampleDoc.docx?d=w12345",
  },
  "expirationDateTime": "0001-01-01T00:00:00Z"
}

Convite de compartilhamento

Além de criar links de compartilhamento, um usuário pode ser convidado pelo endereço de email. Neste cenário, a permissão cria um convite que é enviado para o e-mail do utilizador.

Convite para um endereço de email

Se a permissão tiver sido enviada através de um endereço de e-mail para um destinatário que não tenha uma conta correspondente, a propriedade grantedTo poderá não ser definida até que o convite seja resgatado, o que ocorre na primeira vez que um utilizador seleciona a ligação e inicia sessão.

{
  "id": "1",
  "roles": ["write"],
  "invitation": {
    "email": "jd@contoso.com",
    "signInRequired": true
  },
  "shareId": "FWxc1lasfdbEAGM5fI7B67aB5ZMPDMmQ11U",
  "expirationDateTime": "0001-01-01T00:00:00Z"
}

Depois que o convite de compartilhamento tiver sido resgatado por um usuário, a propriedade grantedTo conterá as informações sobre a conta que resgatou as permissões:

{
  "id": "1",
  "roles": ["write"],
  "grantedTo": {
    "user": {
      "id": "5D33DD65C6932946",
      "displayName": "Robin Danielsen"
    }
  },
  "grantedToV2": {
    "user": {
      "id": "5D33DD65C6932946",
      "displayName": "Robin Danielsen"
    },
    "siteUser": {
      "id": "1",
      "displayName": "Robin Danielsen",
      "loginName": "Robin Danielsen"
    }
  },
  "invitation": {
    "email": "rd@contoso.com",
    "signInRequired": true
  },
  "shareId": "FWxc1lasfdbEAGM5fI7B67aB5ZMPDMmQ11U",
  "expirationDateTime": "0001-01-01T00:00:00Z"
}

Métodos

Método Caminho REST
Listar permissões GET /drive/items/{item-id}/permissions
Obter permissão GET /drive/items/{item-id}/permissions/{id}
Adicionar permissões POST /drive/items/{item-id}/invite
Atualizar permissão PATCH /drive/items/{item-id}/permissions/{id}
Excluir permissão DELETE /drive/items/{item-id}/permissions/{id}
Conceder acesso à ligação de partilha POST /shares/{encoded-sharing-url}/permission/grant