Conceitos de segurança no Microsoft Dataverse
Uma das funcionalidades chave do Dataverse é o seu rico modelo de segurança que pode adaptar-se a muitos cenários de utilização de negócio. Esse modelo de segurança só está em jogo quando há um Dataverse banco de dados no ambiente. Como administrador, provavelmente não estará a criar todo o modelo de segurança, mas muitas vezes estará envolvido no processo de gestão dos utilizadores e certificando-se de que eles têm a configuração adequada e resolve problemas relacionados com o acesso à segurança.
Gorjeta
Confira o vídeo a seguir: Microsoft Dataverse – Conceitos de segurança mostrados em demonstrações.
Acesso baseado na segurança
O Dataverse utiliza a segurança baseada em funções para agrupar uma coleção de privilégios. Estes direitos de acesso podem ser associados diretamente a utilizadores ou podem ser associados a equipas ou unidades de negócio do Dataverse. Os usuários podem ser associados à equipa e, portanto, todos os usuários associados à equipa se beneficiam da função. Um conceito chave da segurança do Dataverse a compreender é que todas as concessões de privilégios são acumulativas com a maior quantidade de acesso predominante. Se deu acesso de leitura a nível de organização amplo, leia o acesso a todos os registos de contacto, não pode voltar atrás e esconder um único registo.
Unidades de negócio
Gorjeta
Confira o vídeo a seguir: Modernizar unidades de negócios.
As unidades de negócio trabalham com direitos de acesso para determinar a segurança efetiva que um utilizador tem. As unidades de negócio são o bloco modular da modelagem de segurança que ajuda na gestão de utilizadores e dos dados aos quais podem aceder. As unidades de negócio definem um limite de segurança. Cada base de dados do Dataverse tem uma única unidade de negócio de raiz.
Pode criar unidades de negócio subordinadas para ajudar a segmentar ainda mais os seus utilizadores e dados. Cada utente atribuído a um ambiente pertence a uma unidade de negócios. Embora as unidades de negócio possam ser utilizadas para modelar 1:1 uma verdadeira hierarquia organizacional, na maioria das vezes inclinam-se mais para os limites de segurança definidos para ajudar a atender às necessidades do modelo de segurança.
Para entender melhor, vejamos o exemplo a seguir Temos três unidades de negócio. A Woodgrove é a unidade de negócio de raiz e estará sempre na parte superior, não pode ser alterada. Criámos duas outras unidades de negócio subordinado A e B. Os utilizadores nestas unidades de negócio têm necessidades de acesso diferentes. Quando associamos um utilizador a este ambiente, podemos definir o utilizador como sendo uma destas três unidades de negócio. Onde o utente está associado determina qual unidade de negócios possui os registros dos quais o utente é proprietário. Ter essa associação permite-nos adaptar um direito de acesso para permitir ao utilizador ver todos os registos nessa unidade de negócio.
Estrutura hierárquica de acesso a dados
Os clientes podem usar uma estrutura de organização onde os dados e o utilizador são compartimentados numa hierarquia semelhante a uma árvore.
Quando associamos um utilizador a este ambiente, podemos definir o utilizador para estar numa destas três unidades de negócio e atribuir um direito de acesso da unidade de negócio ao utilizador. A unidade de negócio a que o utilizador está associado determina qual a unidade de negócio que detém os registos quando o utilizador cria um registo. Ao ter essa associação permite-nos personalizar um direito de acesso, o que permite ao utilizador ver registos naquela unidade de negócio.
O Utilizador A está associado à Divisão A e tem atribuído um direito de acesso Y da Divisão A. Isto permite ao utilizador A aceder aos registos Contacto 1 e Contacto 2. Enquanto o utente B na Divisão B não pode acessar os registros de Contato da Divisão A, mas pode acessar o registro de Contato #3.
Estrutura de acesso a dados de matriz (Unidades de Negócio Modernizadas)
Os clientes podem utilizar uma estrutura de organização onde os dados são compartimentados numa hierarquia semelhante a uma árvore, e os utilizadores podem trabalhar e aceder aos dados de qualquer unidade de negócio, independentemente da unidade de negócio a que o utilizador está atribuído.
Quando associamos um utilizador a este ambiente, podemos definir o utilizador como sendo uma destas três unidades de negócio. Para cada unidade de negócio a que um utilizador necessita de aceder aos dados, é atribuído ao utilizador um direito de acesso dessa unidade de negócio. Quando o utilizador cria um registo, o utilizador pode definir a unidade de negócio para ser proprietária do registo.
O utilizador A pode ser associado a qualquer uma das unidades de negócio, incluindo a unidade de negócio de raiz. Um direito de acesso Y da Divisão A é atribuído ao utilizador A, o que dá ao utilizador acesso aos registos de Contacto 1 e de Contacto 2. Um direito de acesso Y da Divisão B é atribuído ao utilizador A, o que dá ao utilizador acesso ao registo de Contacto 3.
Ativar a Estrutura de acesso a dados de matriz
Nota
Antes de ativar esta caraterística, tem de publicar todas as personalizações para ativar todas as novas tabelas não publicadas para a caraterística. Se descobrir que tem tabelas não publicadas que não estão a trabalhar com esta caraterística depois de a ter ativado, poderá definir a definição RecomputeOwnershipAcrossBusinessUnits utilizando a ferramenta OrgDBOrgSettings para o Microsoft Dynamics CRM. Definir RecomputeOwnershipAcrossBusinessUnits como true permite que o campo Unidade de Negócio Proprietária seja definido e atualizado.
- Inicie sessão no Power Platform centro de administração como administrador (Dynamics 365 administrador ou Microsoft Power Platform administrador).
- Selecione o separador Ambientes e, em seguida, escolha o ambiente para o qual pretende ativar esta caraterística.
- Selecione Definições>Produto>Funcionalidades.
- Ative o comutador Propriedade do registo entre unidades de negócio.
Uma vez ligado este comutador de funcionalidade, pode selecionar a Unidade de negócio quando atribuir uma direito de acesso a um utilizador. Isto permite-lhe atribuir direitos de acesso de diferentes unidades de negócio a um utilizador. O utilizador também requer um direito de acesso da unidade de negócio a que o utilizador está atribuído com privilégios de definições de utilizador para executar aplicações condicionadas por modelo. Pode consultar o direito de acesso Utilizador Básico para descobrir como estes privilégios de definição de utilizador são ativados.
Pode atribuir um utilizador como proprietário do registo em qualquer unidade de negócio sem ter de atribuir um direito de acesso na unidade de negócio proprietária do registo, desde que o utilizador tenha um direito de acesso que tenha o privilégio Ler para a tabela do registo. Consulte Propriedade do Registo em Unidades de Negócio Modernizadas.
Nota
Este comutador de funcionalidades é armazenado na definição EnableOwnershipAcrossBusinessUnits da base de dados ambiente e também pode ser definido utilizando a ferramenta OrgDBOrgSettings para o Microsoft Dynamics CRM.
Associar uma unidade de negócio a um grupo de segurança do Microsoft Entra
Pode utilizar um grupo de segurança do Microsoft Entra para mapear a sua unidade de negócio para simplificar a sua administração de utilizadores e atribuição de funções.
Crie um Microsoft Entra grupo de segurança para cada unidade de negócios e atribua os respetivos direito de acesso da unidade de negócios a cada equipa do grupo.
Para cada unidade de negócio, crie um grupo de segurança do Microsoft Entra. Crie uma equipa de grupo do Dataverse para cada grupo de segurança do Microsoft Entra. Atribua o respetivo direito de acesso da unidade de negócio a cada equipa de grupo do Dataverse. O utilizador no diagrama acima será criado na unidade de negócio de raiz quando o utilizador aceder ao ambiente. Não há problema se o utilizador e as equipas de grupo do Dataverse se basearem na unidade de negócio de raiz. Só têm acesso aos dados na unidade de negócio à qual o direito de acesso está atribuído.
Adicione utilizadores ao respetivo grupo de segurança do Microsoft Entra para lhes conceder acesso à unidade de negócio. Os utilizadores podem executar imediatamente a aplicação e aceder aos respetivos recursos/dados.
No acesso a dados de matriz, onde os utilizadores podem trabalhar e aceder a dados de várias unidades de negócio, adicione os utilizadores aos grupos de segurança do Microsoft Entra que mapeavam para essas unidades de negócio.
Unidade de Negócio Proprietária
Cada registro tem uma coluna Unidade de Negócios Proprietária, que determina qual unidade de negócios possui o registro. O padrão desta coluna é a unidade de negócios do utente quando o registro é criado e não pode ser alterado, exceto quando a opção de recurso está ativada.
Nota
Quando alterar qual unidade de negócio que possui um registo, certifique-se de verificar os seguintes efeitos em cascata: Utilizar o SDK para .NET para configurar o comportamento em cascata.
Pode gerir se pretende permitir que o utilizador defina a coluna Unidade de Negócio Proprietária quando o comutador de caraterística estiver ATIVADO. Para definir a coluna Unidade de Negócio Proprietária, é necessário conceder o privilégio Anexar a da tabela da Unidade Negócio do direito de acesso do utilizador com a permissão de nível local.
Para permitir que o seu utilizador defina esta coluna, pode ativar esta coluna no seguinte:
- Formulário - tanto o corpo como o cabeçalho.
- Vista.
- Mapeamentos de coluna. Se você estiver a usar o AutoMapEntity, poderá especificar a coluna em sua coluna mapeamento.
Nota
Se tiver um trabalho/processo para sincronizar dados entre ambientes e a Unidade de Negócio Proprietária estiver incluída como parte do esquema, o seu trabalho falhará com uma violação da restrição de CHAVE Estrangeira se o ambiente-alvo não tiver o mesmo valor da Unidade de Negócio.
Pode remover a coluna Unidade de Negócio Proprietária do esquema de origem ou atualizar o valor de coluna da Unidade de Negócio proprietária da Fonte para qualquer uma das unidades de negócio do alvo.
Se tiver um trabalho/processo para copiar dados de um ambiente para um recurso externo, por exemplo, o PowerBI, terá de selecionar ou desmarcar a coluna Unidade de Negócio Proprietária da sua origem. Selecione-o se o seu recurso puder recebê-lo, caso contrário, deve desselecioná-lo.
Propriedade da tabela/registo
O Dataverse suporta dois tipos de propriedade de registo. Propriedade da Organização e propriedade do Utilizador ou da Equipa. Esta é uma escolha que acontece no momento em que a tabela é criada e não pode ser alterada. Por razões de segurança, os registos que são propriedade da organização, as únicas opções ao nível de acesso é que o utilizador pode fazer a operação ou não pode. Para registos de propriedade de utilizadores e de equipas, as opções de nível de acesso para a maioria dos privilégios são Organização, Unidade de Negócio e Unidade de Negócio escalonados ou apenas os próprios registos do utilizador. Isso significa que, para o privilégio de leitura no contacto, eu poderia definir a propriedade do utilizador e o utilizador veria apenas os seus próprios registos.
Para dar outro exemplo, digamos que o Utilizador A esteja associado à Divisão A, e damos-lhes acesso de Leitura ao nível da Unidade de Negócio em Contacto. Eles seriam capazes de ver o Contacto n.º 1 o n.º 2, mas não o Contacto n.º 3.
Ao configurar ou editar privilégios de direitos de acesso, está a definir o nível de acesso para cada opção. A seguir, é apresentado um exemplo do editor de privilégios dos Direitos de Acesso.
Acima pode ver os tipos de privilégio padrão para cada tabela Criar, Ler, Escrever, Eliminar, Anexar, Anexar A, Atribuir e Partilhar. Pode editar cada uma destas individualmente. A apresentação visual de cada uma corresponderá à chave abaixo no que respeita ao nível de acesso que concedeu.
No exemplo acima, concedemos acesso ao nível da organização ao Contacto, o que significa que o utilizador na Divisão A pode ver e atualizar os contactos pertencentes a qualquer pessoa. De facto, um dos erros administrativos mais comuns é ficar frustrado com as permissões e conceder pouco acesso. Muito rapidamente, um modelo de segurança bem elaborado começa a parecer um queijo suíço (cheio de buracos!).
Propriedade do Registo em Unidades de Negócio Modernizadas
Em Unidades de Negócio Modernizadas, pode ter utilizadores que são proprietários de registos entre quaisquer unidades de negócio. Tudo o que os utilizadores necessitam é de um direito de acesso (qualquer unidade de negócio) que tenha o privilégio Ler para a tabela do registo. Os utilizadores não necessitam de ter um direito de acesso atribuído em cada unidade de negócio em que o registo reside.
Se Propriedade do registo entre unidades de negócio foi ativada no ambiente de produção durante o período de Pré-visualização, tem de efetuar o seguinte para ativar a propriedade deste registo entre unidades de negócio:
- Instalar o editor de Definições da Organização
- Defina as definições da organização RecomputeOwnershipAcrossBusinessUnits como true. Quando esta definição está definida como true, o sistema é bloqueado e pode demorar até 5 minutos a efetuar o reprocessamento para permitir a capacidade em que os utilizadores podem agora possuir registos entre unidades de negócio, sem a necessidade de ter direitos de acesso separados atribuídos de cada unidade de negócio. Isto permite que o proprietário de um registo atribua o respetivo registo a alguém fora da unidade de negócio proprietária do registo.
- Defina AlwaysMoveRecordToOwnerBusinessUnit como false. Isto faz com que o registo permaneça na unidade de negócio proprietária original quando a propriedade do registo é alterada.
Para todos os ambientes de não produção, só tem de definir AlwaysMoveRecordToOwnerBusinessUnit como false para utilizar esta capacidade.
Nota
Se desativar a caraterística Propriedade de registo entre unidades de negócio ou se estabelecer a definição RecomputeOwnershipAcrossBusinessUnits como false utilizando a ferramenta OrgDBOrgSettings para o Microsoft Dynamics CRM, não conseguirá definir ou atualizar o campo Unidade de Negócio Proprietária e todos os registos em que o campo Unidade de Negócio Proprietária for diferente da unidade de negócio do proprietário serão atualizados para a unidade de negócio do proprietário.
Equipas (incluindo equipas de grupo)
As equipas são outro importante bloco modular de segurança. As equipas pertencem a uma Unidade de Negócio. Cada Unidade de Negócio possui uma equipa predefinida criada automaticamente quando a Unidade de Negócio é criada. Os membros da equipa predefinida são geridos pelo Dataverse e contêm sempre todos os utilizadores associados a essa Unidade de Negócio. Não pode adicionar ou remover manualmente membros da equipa predefinida, pois os mesmos são ajustados dinamicamente pelo sistema, à medida que novos utilizadores são associados/desassociados a unidades de negócio. Existem dois tipos de equipas, as equipas proprietárias e as equipas de acesso.
- O proprietário do Teams pode possuir registos, os quais dão acesso direto a esse registo a qualquer membro da equipa. Os utilizadores podem ser membros de várias equipas. Isto permitirá que seja uma maneira poderosa de conceder permissões aos utilizadores de uma maneira ampla, sem microgerir o acesso ao nível do utilizador individual.
- As equipas de acesso são discutidas na próxima secção como parte da partilha de registos.
Partilha de registos
Os registos individuais podem ser partilhados individualmente por outro utilizador. Esta é uma maneira poderosa de lidar com exceções que não se enquadram na propriedade de registo ou é um membro de um modelo de acesso à unidade de negócio. Deve ser uma exceção, porque é uma forma com pior desempenho de controlar o acesso. A partilha é mais difícil para resolver problemas porque não é um controlo de acesso implementado de forma consistente. A partilha pode ser efetuada ao nível do utilizador e da equipa. Partilhar com uma equipa é uma maneira mais eficiente de partilhar. Um conceito mais avançado de partilha é com as Equipas de Acesso, que fornecem a criação automática de uma equipa e a partilha de acesso a registos com a equipa com base num Modelo de Equipa de Acesso (modelo de permissões) aplicado. As equipas de acesso também podem ser usadas sem os modelos, com apenas a adição ou remoção manual dos seus membros. As equipas de acesso têm melhor desempenho porque não permitem possuir registos pela equipa ou ter direitos de acesso atribuídos à equipa. Os utilizadores têm acesso porque o registo é partilhado com a equipa e o utilizador é um membro.
Segurança ao nível do registo no Dataverse
Pode estar a perguntar a si próprio, o que determina o acesso a um registo? Parece uma pergunta simples, mas para qualquer utente é a combinação de todas as suas funções de segurança, a unidade de negócios à qual estão associados, as equipes das quais são membros e os registros que são compartilhados com eles. O principal ponto a lembrar é que todo o acesso é acumulativo em todos esses conceitos no âmbito de um ambiente de base de dados do Dataverse. Estes direitos só são concedidos numa única base de dados e são rastreados individualmente em cada base de dados Dataverse. Tudo isto requer que tenham uma licença adequada para aceder ao Dataverse.
Segurança ao nível da coluna no Dataverse
Às vezes, o controle de acesso em nível de registro não é adequado para alguns cenários de negócios. O Dataverse tem uma caraterística de segurança ao nível da coluna para permitir um controlo mais granular da segurança ao nível da coluna. A segurança ao nível da coluna pode ser ativada em todos as colunas personalizadas e na maior parte das colunas de sistema. A maior parte das colunas de sistema que incluem informações identificáveis pessoais (PII) são capazes de ser protegidas individualmente. Os metadados de cada coluna definem se esta é uma opção disponível para a coluna de sistema.
A segurança ao nível da coluna é ativada coluna a coluna. O acesso é gerido através da criação de um Perfil de Segurança de Coluna. O perfil contém todos as colunas que têm a segurança ao nível da coluna ativada e o acesso concedido por esse perfil específico. Cada coluna pode ser controlada dentro do perfil para acesso de Criação, Atualização e Leitura. Os Perfis de Segurança de Coluna são associados a um utilizador ou equipas para conceder esses privilégios aos utilizadores nos registos aos quais já têm acesso. É importante notar que a segurança ao nível da coluna não tem nada a ver com a segurança ao nível do registo. Um utilizador já tem de ter acesso ao registo para que o Perfil de Segurança de Coluna lhe conceda qualquer acesso às colunas. A segurança ao nível da coluna deve ser utilizada conforme necessário e não excessivamente, pois pode adicionar sobrecarga que é prejudicial se for utilizada em excesso.
Gerir a segurança em vários ambientes
Os direitos de acesso e os Perfis de Segurança de Coluna podem ser empacotados e movidos de um ambiente para o outro utilizando as soluções do Dataverse. As Unidades de Negócio e as Equipas têm de ser criadas e geridas em cada ambiente, juntamente com a atribuição de utilizadores aos componentes de segurança necessários.
Configurar a segurança do ambiente de utilizadores
Uma vez que as funções, equipas e unidades de negócio são criadas num ambiente, é hora de atribuir aos utilizadores as suas configurações de segurança. Primeiro, quando criar um utilizador, irá associar o utilizador a uma unidade de negócio. Por predefinição, esta é a unidade de negócio de raiz na organização. Também são adicionados à equipa predefinida dessa unidade de negócio.
Além disso, pode atribuir quaisquer direitos de acesso que o utilizador necessita. Também os adicionaria como membros de qualquer equipa. Lembre-se que as equipas também podem ter direitos de acesso, por isso, os direitos efetivos do utilizador é a combinação de direitos de acesso diretamente atribuídos combinados com os de quaisquer equipas de que são membros. A segurança é sempre aditiva, oferecendo a permissão menos restritiva de qualquer uma das suas elegibilidades. A seguir, é apresentado um bom procedimento de configurar segurança de ambiente.
Se tiver utilizado a segurança ao nível da coluna, terá de associar o utilizador ou uma equipa do utilizador a um dos Perfis de Seguranças de Coluna que criou.
A segurança é um artigo complexo e é melhor realizada como um esforço conjunto entre os criadores de aplicativos e a equipa que administra as permissões dos usuários. Quaisquer mudanças importantes devem ser coordenadas antes da implementação das alterações no ambiente.
Consulte também
Configurar a segurança do ambiente
Funções e privilégios de segurança