Share via


Controle de acesso baseado em função no Serviço de Crédito Ambiental (versão preliminar)

Microsoft Cloud for Sustainability Technical Summit – Maio de 2024

Importante

Algumas ou todas estas funcionalidades estão disponíveis como parte de uma versão preliminar. O conteúdo e a funcionalidade estão sujeitos a alterações. Você pode acessar o ambiente de área restrita do Serviço de Crédito Ambiental (versão preliminar) para fazer uma avaliação de 30 dias. Para usar o Serviço de Crédito Ambiental (versão preliminar) em um ambiente de produção, preencha o Formulário de inscrição do Serviço de Crédito Ambiental (versão preliminar).

O controle de acesso baseado em função permite controlar o acesso a diferentes operações no aplicativo, com base nas permissões presentes nas funções atribuídas aos usuários na organização. Ele permite que você conceda e remova funções atribuídas aos usuários na organização para controle refinado.

Cada organização do ecossistema de mercado ecológico voluntário desempenha uma função específica, chamada de função de mercado no Serviço de Crédito Ambiental (versão preliminar). Cada organização integrará os usuários ao Serviço de Crédito Ambiental (versão preliminar) e atribuirá funções de usuário. Recursos como projetos ou programas ecológicos, projetos de benefícios modulares, reivindicações e tokens pertencem a uma organização, não a um usuário.

Atribuir funções de usuário

Uma função de usuário é definida como uma coleção de permissões que permitem operações específicas no aplicativo. Você pode atribuir essas funções de usuário em um nível de organização ou em um nível de ativo no contexto de uma função mercadológica específica. As seguintes funções de usuário têm suporte do Serviço de Crédito Ambiental (versão preliminar):

Função do usuário Permissões
Administrador Um administrador pode executar todas as operações de plano de dados aceitas nos recursos associados, como criação, atualização, leitura e exclusão. Eles também podem executar operações do plano de gerenciamento, como integrar usuários na organização e criar ou atualizar atribuições de função para eles.
Colaborador Um colaborador pode executar todas as operações de plano de dados aceitas nos recursos associados, como criação, atualização, leitura e exclusão. Eles também recebem acesso de leitura no nível do plano de gerenciamento.
Leitor Um leitor pode executar operações de leitura no nível do plano de dados associado e nos recursos do nível do plano de gerenciamento.

Gerenciar funções no nível da organização no contexto de uma função mercadológica

Os seguintes recursos são aceitos para o controle de acesso baseado em função no nível da organização dentro do contexto de um nível específico de função mercadológica. Por exemplo, se uma organização opera como compradora, então ela tem uma função mercadológica (comprador). No nível da organização, um usuário nessa organização pode ter uma função de usuário Administrador Comprador, Colaborador Comprador ou Leitor Comprador.

Uma organização pode ter várias funções mercadológicas. Por exemplo, se outra organização operar como um registro emissor e um marketplace, ela terá duas funções mercadológicas. Um usuário nesta organização pode ter uma função de Administrador Fornecedor no contexto da função mercadológica do fornecedor e uma função de Leitor de Registro Emissor no contexto da função de registro emissor.

Gerenciar funções no nível do ativo

Você pode gerenciar privilégios de usuário em um nível de ativo dentro da organização. O administrador ou colaborador no nível da organização pode criar novos ativos. O administrador em nível de organização também pode adicionar usuários ao ativo e atribuir essas funções a eles.

  • Administrador no nível de ativo: um administrador no nível de ativo recebe a função de usuário administrador em um escopo granular específico de um ativo na organização. Por exemplo, um usuário recebe uma função de administrador fornecedor no escopo do projeto de benefício modular na função mercadológica de fornecedor de uma organização. Eles podem executar todas as operações de plano de dados com suporte no ativo, como leitura e gravação. Eles também podem executar operações do plano de gerenciamento, como integrar usuários na organização no ativo específico no qual atuam como administradores.

  • Colaborador no nível de ativo: um colaborador no nível de ativo pode executar todas as operações de plano de dados com suporte no ativo, como leitura e atualização do ativo. Eles podem ler as atribuições de função de outros usuários ou grupos no escopo desse ativo.

  • Leitor no nível de ativo: um leitor no nível de ativo pode executar operações de leitura no ativo. Eles podem ler as atribuições de função de outros usuários ou grupos no escopo desse ativo.

Nota

A hierarquia de acesso de cima para baixo será mantida. Por exemplo, se um usuário tiver uma função de usuário administrador na função mercadológica de fornecedor no escopo da organização, ele terá acesso no nível de administrador automaticamente em todos os ativos (como projetos ecológicos e projetos de benefícios modulares) para esse fornecedor. Se outro usuário tiver acesso de administrador em nível de ativo (por exemplo, em um projeto ecológico), ele terá acesso a todos os ativos sob ele.

Recursos aceitos para controle de acesso baseado em função

Pré-requisitos para usar a coleção Postman para APIs

Você pode definir a coleção Postman com a configuração do ambiente das organizações e seus administradores da seguinte forma:

  • Defina os detalhes do usuário nas diferentes variáveis (por exemplo: <marketRole>_admin_username) da coleção Postman para as diferentes funções mercadológicas que você deseja usar, juntamente com suas respectivas senhas.

  • Crie um novo ambiente Postman e mude para ele antes de executar qualquer API na coleção.

  • Execute a pasta Setup Organizations para a função mercadológica específica que você deseja usar, para configurar as propriedades da organização (e seus respectivos administradores) no ambiente Postman.

  • Execute a API Role definitions > Get all Role Definitions para obter os detalhes de todas as definições de função de usuário integradas no ambiente Postman. A resposta da API de definição de função pode ser usada para aprender sobre os escopos que podem ser atribuídos aos usuários.

Adicionar usuários

Você pode adicionar usuários e gerenciar suas funções dentro da organização alternando para o menu Configurações na navegação à esquerda.

Observação

Você não pode adicionar um usuário que já foi adicionado.

  1. Na tela Acesso do usuário , selecione Adicionar usuário.
  2. No painel Adicionar usuário, insira o Usuário, selecione o Nível de acesso e selecione Salvar. Captura de tela da adição de um usuário no painel Adicionar usuário.

Pela API:

Observação

A pasta Onboard Users da coleção Postman oferece suporte à execução com um clique. No entanto, recomendamos que você use APIs individuais para tentar integrar os usuários e se familiarizar com as APIs.

  • Para qualquer pasta organizacional, como Supplier, na pasta Onboard Users da coleção Postman, configure o organização e seu administrador chamando as APIs Get organization details e Get Admin User details .

  • Para integrar um usuário colaborador, você pode verificar se a autorização necessária para a API corresponde ao usuário administrador. O conteúdo da solicitação tenta adicionar um novo usuário com a função de usuário colaborador integrado, como a função de usuário colaborador fornecedor. O envio da solicitação integra o colaborador.

  • Da mesma forma, você pode integrar um usuário leitor na organização com função de leitor correspondente, como a função de usuário leitor fornecedor.

Alterar atribuições de função

Depois de adicionar os usuários, você pode alterar a função de usuário atribuída a eles.

Observação

Não é possível editar seu próprio acesso.

  1. Na tela Acesso do usuário, selecione os três pontos ao lado do usuário e escolha Editar.
  2. No painel Editar acesso, selecione a nova função no menu suspenso Nível de acesso e selecione Salvar. Captura da tela Editar acesso removendo um usuário.

Pela API:

  1. Acesse a pasta Atribuições de função na coleção.

  2. Use a API Criar atribuição de função em um ativo. Por padrão, a função de fornecedor colaborador é atribuída ao usuário leitor do fornecedor usando o token de acesso de administrador do fornecedor.

    Observação

    Este exemplo destaca como funciona a API para atribuição de funções. Você pode atribuir outra função de usuário a usuários de diferentes organizações pelas respectivas contas de administrador. Você pode alterar o URI de recurso do escopo para um URI de ativo válido para a definição de função. Substitua as variáveis de ambiente no payload da solicitação (roleDefinitionId e userId), altere o parâmetro de corpo da solicitação resourceUri e altere a variável de ambiente do token de acesso do administrador para corresponder à respectiva conta de usuário administrador.

    Você pode enviar a API de criação de atribuição de função com diferentes valores do identificador de definição de função (roleDefinitionId) para ser atribuída a diferentes usuários na organização (userId) em um escopo diferente (resourceUri). Você pode alterar o cabeçalho de autorização para corresponder ao token de acesso do respectivo usuário administrador.

    Os administradores da organização não podem atribuir funções de usuário fora de sua organização nem atribuir funções a usuários fora da organização.

  3. Use a API Atualizar atribuição de função para atualizar o acesso de um usuário. Por exemplo, você pode elevar um usuário a administrador do fornecedor. Certifique-se de verificar o roleassignment_id no parâmetro da API.

Excluir atribuições de função

O usuário administrador pode excluir as atribuições de função existentes para os participantes, conforme necessário.

Observação

Não é possível excluir seu próprio acesso.

  1. Na tela Acesso do usuário, selecione os três pontos ao lado do usuário e escolha Editar.
  2. No painel Editar acesso, selecione Nenhum no menu suspenso Nível de acesso e selecione Salvar. Captura da tela Editar acesso removendo um usuário.

Pela API:

  1. Configure a função de administrador correspondente à organização do usuário cuja atribuição de função precisa ser excluída.

  2. Navegue até a pasta Atribuições de função e selecione a API Excluir atribuição de função.

  3. Insira o roleassignment_id correto no parâmetro da API.

  4. Chame DELETE /roleAssignments/{{roleassignment_id}} definindo o cabeçalho de autorização com o respectivo token de acesso do usuário (as variáveis do ambiente Postman podem ser usadas para testar usuários com diferentes funções de diferentes organizações).

Exibir e alterar detalhes do perfil

Para exibir os detalhes do seu perfil, selecione Minha conta na navegação à esquerda.

Para editar suas preferências, selecione o ícone Editar na seção Preferências e selecione a página inicial que deseja usar. A lista indicará as diferentes funções de mercado às quais o usuário atualmente conectado tem acesso.

Captura de tela de preferências de edição.

Pela API:

  1. Use a API POST /organizations/{organizationId}/users/{userId}/setMyDefaultMarketRole para alternar a função de mercado padrão de um usuário. O cabeçalho de autorização deve usar o token de acesso do mesmo usuário informado no parâmetro de URL userId. O usuário deve ter algum acesso na nova função de mercado definida como padrão.

Exibir definições de função

Um usuário com qualquer função pode exibir diferentes definições de função.

Para exibir todas as definições de função via API:

  1. Navegue até a pasta Definições de função e selecione a API GET all Role Definitions.

  2. Chame GET /roleDefinitions definindo o cabeçalho de autorização com o respectivo token de acesso do usuário (as variáveis do ambiente Postman podem ser usadas para testar usuários com diferentes funções de diferentes organizações).

Para exibir as definições de função: por ID

  1. Navegue até a pasta Definições de função e escolha a API Get role definition by ID.

  2. Chame GET /roleDefinitions{{id}} definindo o identificador da definição de função na URL de solicitação e o cabeçalho de autorização com o respectivo token de acesso dos usuários (as variáveis do ambiente Postman podem ser usadas para testar usuários com diferentes funções de diferentes organizações).

Exibir usuários e funções atribuídas

Um usuário com qualquer função pode exibir os usuários da organização junto com suas funções atribuídas.

  • Navegue até a tela Acesso do usuário e veja os usuários que têm acesso.

    Captura da tela Acesso do usuário mostrando os usuários e suas funções.

Pela API:

  1. Navegue até a pasta Usuários.
  2. Chame Get all users in my organization definindo o cabeçalho de autorização com o respectivo token de acesso do usuário (as variáveis do ambiente Postman podem ser usadas para testar usuários com diferentes funções de diferentes organizações).
  3. Navegue até a pasta Atribuições de função.
  4. Chame Obter todas as atribuições de função em minha função de mercado padrão para obter as atribuições de função na função de mercado padrão da identidade do chamador com base no parâmetro de consulta resourceUri.

Gerencie controles de acesso entre organizações para seus ativos

O usuário administrador pode gerenciar o acesso para ativos nas organizações. Isso pode ser usado em vários cenários, por exemplo, se um fornecedor tivesse créditos pré-confirmados para um comprador e não desejasse que outros compradores visualizassem o crédito. Outro exemplo são as inserções que devem ser usadas dentro da mesma cadeia de valor.

Para oferecer suporte a esses cenários, o Serviço de Crédito Ambiental (versão preliminar) tem os seguintes recursos:

  • Um administrador pode gerenciar se deseja que o ativo seja visível para todas as funções do mercado ou não. Por exemplo, um fornecedor que deseja usar os créditos para inserções pode decidir ocultar a visibilidade dos créditos de todos os compradores. Por padrão, o ativo ficará visível para todas as funções mercadológicas, que o administrador do ativo pode alternar.

  • Um administrador pode gerenciar se deseja que o ativo seja visível para todas as organizações de uma função mercadológica ou não. Por exemplo, um fornecedor pode ter créditos pré-confirmados com um comprador. O administrador pode gerenciar a visibilidade para que os créditos não sejam visíveis para nenhum outro comprador, exceto este.

Por padrão, os ativos como projetos ecológicos, projetos de benefícios modulares e créditos estarão visíveis para todas as organizações, que o administrador pode alternar. O administrador pode definir uma política de acesso entre organizações para isso em diferentes níveis, da prioridade mais baixa à mais alta, como segue:

  • Organizações: uma política entre organizações no nível da organização implica que o controle de acesso entre organizações é aplicado a todos os ativos nas organizações.

  • Projetos ecológicos: uma política entre organizações em um nível de projeto ecológico tem maior prioridade do que a camada anterior. Implica controle de acesso entre organizações no projeto ecológico específico e todos os ativos dentro dele. Se uma política entre organizações for definida nesse nível, ela terá precedência sobre qualquer política definida no nível da organização. Isso pode ser definido por um usuário com acesso de administrador qualificado no escopo do projeto ecológico.

  • Projetos de benefício modula: uma política entre organizações em um nível de projeto de benefício modular tem maior prioridade do que as camadas anteriores. Isso implica controle de acesso entre organizações no projeto de benefício modular e em todos os ativos dentro dele. Se uma política entre organizações for definida nesse nível, ela terá precedência sobre qualquer política definida em uma das camadas acima. Isso pode ser definido por um usuário com acesso de administrador qualificado no escopo do projeto de benefício modular.

  • Créditos: uma política entre organizações em um nível de crédito tem maior prioridade do que as camadas anteriores. Isso implica controle de acesso entre organizações no crédito específico. Se uma política entre organizações for definida nesse nível, ela terá precedência sobre qualquer política definida em uma das camadas acima. Isso pode ser definido por um usuário com acesso de administrador qualificado no escopo do projeto de benefício modular.

Observação

Os administradores podem definir políticas entre organizações para os ativos que possuem. Fornecedor e Comprador são as duas funções de mercado que podem definir políticas entre organizações. Fornecedor pode defini-la em seus projetos ecológicos, projetos de benefícios modulares e créditos. Comprador pode configurá-lo em seus próprios créditos. Ao chamar as APIs, o cabeçalho x-ms-marketRole indica o serviço sobre o contexto da função de mercado no qual o usuário administrador está chamando as APIs.

Via UX:

Atualmente, no UX, o administrador no nível da organização pode definir a política entre organizações no nível da organização.

  1. Selecione Acesso da organização na navegação esquerda.

  2. Selecione Editar da organização que deseja alterar e atualize, conforme necessário.

    Captura da tela de acesso da Organização mostrando as alterações de acesso entre organizações.

Pela API:

  1. Navegue até a pasta Organizações no Postman e use a API Definir política de acesso entre organizações no nível da organização para definir uma política no nível da organização sob a função de mercado padrão.
  2. Navegue até a pasta Criação de projeto ecológico no Postman e use a API Definir política de acesso entre organizações no projeto ecológico para definir uma política ao nível do projeto ecológico específico.
  3. Navegue até a pasta Criação de projeto ecológico no Postman e use a API Definir política de acesso entre organizações no MBP para definir uma política ao nível do projeto de benefício modular.
  4. Navegue até a pasta Créditos no Postman e use a API Definir política de acesso entre organizações no crédito para definir uma política em nível de crédito específico.

Aproveitar grupos para gerenciar o acesso

Um administrador pode criar grupos, gerenciar os usuários em um grupo e atribuir grupos com funções. No momento, esse recurso só é permitido por APIs.

  • Crie um grupo de usuários e adicione membros a ele:

    POST /organizations/{{organization_id}}/groups  
    
  • Obtenha todos os grupos de usuários da organização:

    GET /organizations/{{organization_id}}/groups
    
  • Obtenha um grupo de usuários por ID:

    GET /organizations/{{organization_id}}/groups/{{group_id}} 
    
  • Obtenha usuários em um grupo:

    GET /organizations/{{organization_id}}/groups/{{group_id}}/users  
    
  • Adicione usuários a um grupo:

    POST /organizations/{{organization_id}}/groups/{{group_id}}/addUsers  
    
  • Exclua um usuário de um grupo de usuários:

    DELETE /organizations/{{organization_id}}/groups/{{group_id}}/users/{{user_id}}  
    
  • Integre usuários a um grupo de usuários:

    POST /organizations/{{organization_id}}/groups/{{group_id}}/addNewUsers  
    
  • Crie uma atribuição de função para um grupo de usuários:

    POST /roleAssignments  
    
  • Exclua uma atribuição de função de grupo de usuários:

    DELETE /roleAssignments/{{roleAssignmentId}}  
    

Consulte também

Visão Geral do Serviço de Crédito Ambiental (versão preliminar)
Glossário do Serviço de Crédito Ambiental (versão preliminar)
Visão geral da referência de API do Serviço de Crédito Ambiental (versão preliminar)