Âmbitos de permissões | Conceitos da Graph API
Aplica-se a: Graph API | Azure Active Directory (AD)
A Graph API expõe âmbitos de permissões de OAuth 2.0 utilizados para controlar o acesso que uma aplicação tem aos dados de diretório de cliente. Como um programador, configurar a aplicação com os âmbitos de permissões adequados para o acesso que requer. Normalmente, fazê-lo através do portal do Azure. Durante o início de sessão, os utilizadores ou administradores recebem uma oportunidade de consentimento para permitir o acesso de aplicação para os seus dados de diretório com os âmbitos de permissões que configurou. Por este motivo, deve escolher âmbitos de permissões que fornecem o menor nível de privilégio necessário para a sua aplicação. Para obter mais detalhes sobre como configurar permissões para a sua aplicação e do processo de consentimento, consulte integrar aplicações com o Azure Active Directory.
Importante
Recomendamos vivamente que utilize Microsoft Graph em vez do AD Graph API do Azure para aceder aos recursos do Azure Active Directory. A nossa esforços de desenvolvimento são agora concentrated no Microsoft Graph e estão a ser planeados sem melhoramentos adicionais para AD Graph API do Azure. Existem um número muito limitado de cenários para o qual AD Graph API do Azure ainda poderá ser apropriado; Para obter mais informações, consulte o Microsoft Graph ou o Azure AD Graph blogue no Dev Center do Office.
Conceitos de âmbito de permissão
Âmbitos de delegado de aplicação só vs.
Âmbitos de permissões podem ser só de aplicação ou delegado. Âmbitos de só de aplicação (também conhecido como funções de aplicação) conceder a aplicação o completo conjunto de privilégios oferecidos pelo âmbito. Os âmbitos só de aplicação são normalmente utilizados por aplicações que são executados como um serviço sem um utilizador com sessão iniciada que está a ser presente. São âmbitos de permissões delegada para aplicações que um utilizador inicia sessão. Estes âmbitos delegar privilégios do utilizador com sessão iniciada para a aplicação, permitindo que a aplicação agir como o utilizador com sessão iniciada. Os privilégios reais concedidos à aplicação serão concedidos a combinação com menos privilégios (a interseção) privilégios ao âmbito e as possessed pelo utilizador com sessão iniciada. Por exemplo, se o âmbito de permissões concede delegados privilégios para escrever todos os objetos de diretório, mas o utilizador com sessão iniciada não tem privilégios apenas para atualizar o seu próprio perfil de utilizador, a aplicação só conseguirão escrever a sessão iniciada no perfil de utilizador, mas não existem outros objetos.
Perfis completos e básicos para utilizadores e grupos
O perfil de total (ou perfil) de um utilizador ou um grupo inclui todas de propriedades declarado a entidade. Porque o perfil pode conter informações confidenciais do ou informações de identificação pessoal (PII), vários âmbitos restringir o acesso da aplicação para um conjunto limitado de conhecido como um perfil básico de propriedades. Para os utilizadores, o perfil básico inclui as seguintes propriedades: apresentar o nome, o nome próprio e apelido, fotografias e endereço de e-mail. Para os grupos, o perfil básico contém apenas o nome a apresentar.
Detalhes de âmbito de permissão
A tabela seguinte lista os âmbitos de permissões da Graph API e explica o acesso concedido por cada.
- O âmbito coluna apresenta o nome do âmbito. Os nomes de âmbito demorar resource.operation.constraint formulário; Por exemplo, Group.ReadWrite.All. Se a restrição é "Tudo", o âmbito concede a aplicação a capacidade de efetuar a operação (ReadWrite) em todos os recursos especificados (agrupar) no diretório; caso contrário, o âmbito só permite que a operação no perfil do utilizador com sessão iniciada. Âmbitos podem conceder privilégios limitados para a operação especificada, consulte o Descrição coluna para obter mais detalhes.
- O permissão coluna mostra como o âmbito é apresentado no portal do Azure.
- O Descrição coluna descreve o conjunto completo de privilégios concedida pelo âmbito. Para âmbitos delegados, o acesso real concedido à aplicação será a combinação de (intersecção) com menos privilégios de acesso concedido ao âmbito e os privilégios do utilizador com sessão iniciada.
Âmbito | Permissão | Descrição | Tipo de âmbito | Necessita de consentimento de administrador |
---|---|---|---|---|
User.Read | Ativar início de sessão e ler o perfil de utilizador | Permite que os utilizadores iniciam sessão aplicação e permite que a aplicação leia o perfil completo do utilizador com sessão iniciada. O perfil completo inclui todas as propriedades de declarado a utilizador entidade. User.Read permite que a aplicação leia as seguintes informações básicas da empresa do utilizador com sessão iniciada (através de TenantDetail objeto): ID do inquilino, nome a apresentar do inquilino e domínios verificados. A aplicação não é possível ler as propriedades de navegação, tais como o Gestor de ou relatórios diretos. A aplicação não é possível ler a palavra-passe do utilizador. | delegado | Não |
User.ReadBasic.All | Leia perfis básicas de todos os utilizadores | Permite que a aplicação leia o perfil básico de todos os utilizadores na organização em nome do utilizador com sessão iniciada. As seguintes propriedades é constituída por um perfil de utilizador básico: apresentar o nome, o nome próprio e apelido, fotografias e endereço de e-mail. Para ler os grupos que um utilizador é membro de, a aplicação também irá necessitar de Group.Read.All ou Group.ReadWrite.All. | delegado | Não |
User.Read.All | Leia perfis completos de todos os utilizadores | Mesmo que User.ReadBasic.All, exceto que permite que a aplicação leia o perfil completo de todos os utilizadores na organização e ao ler as propriedades de navegação, como o gestor e relatórios diretos. O perfil completo inclui todas as propriedades de declarado a utilizador entidade. Para ler os grupos que um utilizador é membro de, a aplicação também irá necessitar de Group.Read.All ou Group.ReadWrite.All. A aplicação não é possível ler as de palavras-passe dos utilizadores. | delegado | Sim |
Group.Read.All | Ler todos os grupos (pré-visualização) | Permite que a aplicação leia o perfil básico de todos os grupos na organização em nome do utilizador com sessão iniciada. A aplicação também é possível ler o perfil básico dos grupos de um grupo é um membro do. O perfil básico para um grupo inclui apenas o nome de apresentação do grupo. Para ler as informações de perfil de membros de um grupo, a aplicação também irá necessitar de User.ReadBasic ou User.Read.All. | delegado | Sim |
Group.ReadWrite.All | Ler e escrever todos os grupos (pré-visualização) | Permite que a aplicação leia o perfil completo de todos os grupos da organização, bem como criar e atualizar a grupos em nome do utilizador com sessão iniciada. A aplicação também é possível ler o perfil completo dos grupos de um grupo é um membro do. O perfil completo inclui todas as propriedades de declarado a grupo entidade. Para ler os perfis da ou membros de um grupo de atualização, a aplicação também irá necessitar de User.ReadBasic ou User.Read.All. | delegado | Sim |
Device.ReadWrite.All | Ler e escrever todos os dispositivos | Permite que a aplicação ler e escrever todas as propriedades do dispositivo sem um utilizador com sessão iniciada. Não permite a criação do dispositivo, a eliminação do dispositivo ou atualização dispositivo alternativo de identificadores de segurança. | só de aplicação | Sim |
Directory.Read.All | Ler dados do diretório | Permite que a aplicação de ler todos os dados no diretório da organização, tais como utilizadores, grupos e aplicações e as respetivas propriedades de navegação associado. Tenha em atenção: os utilizadores podem autorizar aplicações que requerem esta permissão, se a aplicação está registada no inquilino da sua própria organização. | só de aplicação, delegado | Sim |
Directory.ReadWrite.All | Ler e escrever dados de diretório | Permite que a aplicação leia todos os dados no diretório da organização. Permite que a aplicação criar e atualizar utilizadores e grupos e Atualize as respetivas propriedades de navegação, mas proíbe a eliminação de utilizador ou grupo. Também permite que a aplicação definir extensões de esquema em aplicações. Para obter uma lista detalhada de privilégios, consulte Directory.ReadWrite.All privilégios detalhe abaixo. | só de aplicação, delegado | Sim |
Directory.AccessAsUser.All | Acesso ao diretório como o utilizador com sessão iniciada | Permite que a aplicação o acesso a dados mesmo no diretório da organização como o utilizador com sessão iniciada. Tenha em atenção: uma aplicação cliente nativa pode ter o utilizador consentimento para esta permissão, no entanto, uma aplicação web requer consentimento de administrador. | delegado | Sim |
Tenha em atenção: por predefinição, quando criar uma aplicação no portal do Azure, Azure AD atribui-um âmbito de delegado permissão de User.Read.
Detalhe de privilégios Directory.ReadWrite.All
O âmbito de permissão Directory.ReadWrite.All concede os seguintes privilégios:
- Leitura total de todos os objetos de diretório (declaradas propriedades e as propriedades de navegação)
- Criar e atualizar utilizadores
- Desative e ative os utilizadores (mas não o administrador da empresa)
- Definir o id de utilizador de segurança alternativo (mas não os administradores de)
- Criar e grupos de atualização
- Gerir membros do grupo
- Proprietário do grupo de atualização
- Gerir as atribuições de licenças
- Definir as extensões de esquema em aplicações
- Permite que a palavra-passe para ser definido durante a criação de um utilizador.
- Tenha em atenção: não existem direitos para repor palavras-passe do utilizador
- Tenha em atenção: direitos de leitura de palavras-passe do utilizador
- Tenha em atenção: não existem direitos para eliminar entidades (incluindo utilizadores ou grupos)
- Tenha em atenção: exclui especificamente criar ou atualizar para entidades não enumeradas acima. Isto inclui: aplicação Oauth2PermissionGrant, AppRoleAssignment, dispositivo, ServicePrincipal, TenantDetail, domínios, etc.
Cenários de âmbito de permissão
A tabela seguinte mostra os âmbitos de permissão necessários para uma aplicação para ser capazes de efetuar operações específicas. Tenha em atenção que, em alguns casos a capacidade da aplicação para efetuar algumas operações no inventários irão depender se o âmbito de permissão é só de aplicação ou delegado e, no caso de âmbitos de permissões delegadas, num privilégios de utilizador com sessão iniciada.
Cenário | Acesso necessário | Âmbito de permissão necessário |
---|---|---|
Início de sessão e mostrar um mosaico com o nome e a fotografia em miniatura do utilizador. | Ler completa perfil do utilizador com sessão iniciada. Leia informações básicas da empresa. |
User.Read |
Seleccionador de pessoas básico. | Ler perfil básicas de todos os utilizadores em nome do utilizador com sessão iniciada. | User.ReadBasic.All |
Seleccionador de pessoas com perfil completo. | Mesmo como acima, mas o acesso ao perfil completo de utilizadores em nome do utilizador com sessão iniciada. | User.Read.All |
Org navegador de gráfico. | Leia o perfil completa de todos os utilizadores, os seus gestores e relatórios diretos em nome do utilizador com sessão iniciada. | User.Read.All |
Seleccionador de pessoas que inclui os grupos de controlo de acesso à sua aplicação. Visualizador de grupo e a associação. |
Ler perfil básicas de todos os utilizadores e grupos em nome do utilizador com sessão iniciada. Perfis de utilizador básico para utilizadores manager e relatórios diretos de leitura. Leia o perfil básico de associações a grupos dos utilizadores. Leia o perfil básico dos grupos associações de grupo. Perfil básico dos membros dos grupos de leitura |
User.ReadBasic.All e Group.Read.All |
Mostra o perfil de utilizador com sessão iniciada e do utilizador Gestor de, relatórios diretos e as associações de grupo. | Utilize me operações de leitura: O perfil completo do utilizador com sessão iniciada. O perfil completo com sessão iniciada do utilizador Gestor de e relatórios diretos. O perfil básico dos grupos de que o utilizador com sessão iniciada é membro. Tenha em atenção: A combinação dos dois âmbitos concede acesso mais do que são indicados aqui para me operações. |
User.Read.All e Group.Read.All |
Serviço de gestão de grupo que permite aos utilizadores criar e gerir grupos. | Leia o perfil completa de todos os utilizadores e grupos em nome do utilizador com sessão iniciada. Leia perfis completos para o gestor e relatórios diretos dos utilizadores. Leia o perfil completo de associações a grupos dos utilizadores. Leia o perfil completo dos grupos associações de grupo. Perfil completo dos membros dos grupos de leitura. Criar e atualizar os grupos e as respetivas propriedades de navegação (os membros). |
User.Read.All e Group.ReadWrite.All |
Ler todos os objetos de diretório (incluindo as propriedades de navegação). | Directory.Read.All | |
Ler todos os objetos de diretório (incluindo as propriedades de navegação). Criar e atualizar objetos de utilizador e grupo. Eliminação nenhum utilizador ou grupo. Tenha em atenção: nem todos os privilégios concedidos estão listados aqui. |
Directory.ReadWrite.All | |
Agir como o utilizador com sessão iniciada. | Leitura e escrita de objetos de diretório (incluindo as propriedades de navegação) em nome do utilizador com sessão iniciada. | Directory.AccessAsUser.All |
Acesso de predefinida para administradores, utilizadores e os utilizadores convidados
A tabela seguinte lista o predefinição o acesso aos administradores (globais), os utilizadores e os utilizadores convidados no diretório. O acesso de predefinido pode ser mais aumentado ou restrito com base nas configurações para o diretório de e/ou de associação a um utilizador numa ou mais funções de diretório. Para obter mais informações sobre como configurar o acesso de utilizadores e os utilizadores convidados aos dados de diretório, consulte criar ou editar utilizadores no Azure AD. Para obter mais informações sobre o acesso associado a várias funções de diretório, consulte atribuir funções de administrador no Azure AD.
Tipo de utilizador | Acesso |
---|---|
Administrador global | Ler todos os objetos de diretório. Criar, atualizar e eliminar todos os objetos de diretório |
Função do | Ler todos os objetos de diretório. Crie aplicações e principais de serviço associado. Atualize o respetivo perfil. Atualizar os grupos que possuem (e a propriedade de membros). Atualizar aplicações e principais de serviço que possuem. Elimine principais de serviço que possuem e aplicações. |
Utilizador convidado | Ler o respetivo perfil completo. Leia os perfis básicos de todos os outros utilizadores Perfil básicas de todos os grupos de leitura. Aplicações de leitura. Atualize algumas propriedades do respetivo perfil. Não existem pesquisar utilizador ou grupo (consulte limitações para os utilizadores convidados de pesquisa de utilizador e grupo abaixo). |
Limitações para os utilizadores convidados de pesquisa de utilizador e grupo
Capacidades de pesquisa de grupo e utilizador permite que a aplicação procurar qualquer utilizador ou grupo no diretório de cliente através de consultas em relação a utilizadores ou grupos conjunto de recursos (por exemplo, https://graph.windows.net/myorganization/users?api-version=1.6
). Os administradores e utilizadores têm esta capacidade. Os utilizadores convidados não. Se o utilizador com sessão iniciada é um utilizador de convidado, consoante o âmbito de permissão, uma aplicação pode ler o perfil de um grupo ou utilizador específico utilizando o nome do objeto ID ou o utilizador principal (UPN) para um utilizador ou o ID de objeto para um grupo (por exemplo , https://graph.windows.net/myorganization/users/241f22af-f634-44c0-9a15-c8cd2cea5531?api-version=1.6
); No entanto, este não é possível executar consultas contra o utilizadores ou grupos conjunto de recursos que potencialmente pedir mais de uma entidade. Por exemplo, consoante o âmbito de permissão, a aplicação pode ler os perfis dos utilizadores ou grupos que obtém a pelos seguintes ligações nas propriedades de navegação, mas não é possível emitir uma consulta para devolver todos os utilizadores ou grupos no diretório.