Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
A segurança do OneLake usa atribuições de função para aplicar permissões a seus membros. Você pode atribuir funções a indivíduos ou a grupos de segurança, grupos do Microsoft 365 e listas de distribuição. Cada membro no grupo de usuários recebe a função atribuída. Se uma pessoa estiver em dois ou mais grupos de segurança ou grupos do Microsoft 365, ela alcançará o nível mais alto de permissão fornecido pelas funções. Se você aninhar grupos de usuários e atribuir uma função a um grupo, todos os usuários contidos terão permissões.
A segurança do OneLake permite que os usuários definam funções de acesso aos dados apenas para Itens do Lakehouse.
A segurança do OneLake restringe o acesso aos dados para usuário Visualizador do workspace ou com acesso de leitura a um lakehouse. Ele não se aplica a administradores, membros ou colaboradores do workspace. Como resultado, a segurança do OneLake dá suporte apenas ao nível de leitura de permissões.
Criar Funções
Você pode definir e gerenciar as funções de segurança do OneLake por meio das configurações de acesso aos dados do lakehouse.
Saiba mais em Introdução às funções de acesso aos dados.
Funções padrão no lakehouse
Quando um usuário cria um novo lakehouse, o OneLake gera funções padrão. Essas funções fornecem aos usuários permissões de acesso do workspace do Fabric aos dados no lakehouse. Você pode excluir ou editar as funções padrão como qualquer outra função.
Definições da função padrão:
Item de tecido | Nome da função | Permissão | Pastas incluídas | Membros atribuídos |
---|---|---|---|---|
Lakehouse | DefaultReader |
Ler | Todas as pastas em Tables/ e Files/ |
Todos os usuários com a permissão de Leitura Completa |
Lakehouse | DefaultReadWriter |
Ler | Todas as pastas | Todos os usuários com permissão de gravação |
Observação
Para restringir o acesso a usuários específicos ou pastas específicas, modifique a função padrão ou remova-a e crie uma nova função personalizada.
Herança na segurança do OneLake
Para qualquer pasta específica, as permissões de segurança do OneLake sempre herdam toda a hierarquia dos arquivos e subpastas da pasta.
Por exemplo, considere a seguinte hierarquia de um lakehouse no OneLake:
Tables/
──── (empty folder)
Files/
────folder1
│ │ file11.txt
│ │
│ └───subfolder11
│ │ file1111.txt
| │
│ └───subfolder111
| │ file1111.txt
│
└───folder2
│ file21.txt
Você cria duas funções para este lakehouse.
Role1
concede permissão de leitura à folder1 e Role2
concede permissão de leitura à folder2.
Para a hierarquia fornecida, as permissões de segurança do OneLake para Role1
e Role2
herdam da seguinte maneira:
Role1: ler folder1
│ │ file11.txt │ │ │ └───subfolder11 │ │ file1111.txt | │ │ └───subfolder111 | │ file1111.txt
Role2: ler folder2
│ file21.txt
Travessia e listagem na segurança do OneLake
A segurança do OneLake fornece navegação automática por itens principais para garantir que os dados sejam fáceis de serem encontrados. A concessão de permissões de leitura de um usuário para subfolder11 concede ao usuário a capacidade de listar e percorrer a folder1 do diretório pai. Essa funcionalidade é semelhante às permissões de pasta do Windows, onde conceder acesso a uma subpasta permite localizar e atravessar os diretórios pai. A lista e a travessia concedidas ao pai não se estendem a outros itens fora dos pais diretos, garantindo que outras pastas fiquem protegidas.
Por exemplo, considere a seguinte hierarquia de um lakehouse no OneLake.
Tables/
──── (empty folder)
Files/
────folder1
│ │ file11.txt
│ │
│ └───subfolder11
│ │ file111.txt
| │
│ └───subfolder111
| │ file1111.txt
│
└───folder2
│ file21.txt
Para a hierarquia fornecida, as permissões de segurança do OneLake para "Role1" fornece o seguinte acesso. O acesso a file11.txt não é visível, pois não é um pai da subfolder11. Da mesma forma para Role2, file111.txt também não é visível.
Role1: ler subfolder11
Files/ ────folder1 │ │ │ └───subfolder11 │ │ file111.txt | │ │ └───subfolder111 | │ file1111.txt
Role2: ler subfolder111
Files/ ────folder1 │ │ │ └───subfolder11 | │ │ └───subfolder111 | │ file1111.txt
Para atalhos, o comportamento de listagem é ligeiramente diferente. Os atalhos para fontes de dados externas se comportam da mesma forma que as pastas. No entanto, os atalhos para outros locais do OneLake têm comportamento especializado. As permissões de destino do atalho determinam o acesso a um atalho do OneLake. Ao listar atalhos, nenhuma chamada é feita para verificar o acesso de destino. Como resultado, ao listar um diretório, todos os atalhos internos são retornados independentemente do acesso de um usuário ao destino. Quando um usuário tenta abrir o atalho, a verificação de acesso é avaliada e um usuário vê apenas os dados que ele tem as permissões necessárias para ver. Para obter mais informações sobre atalhos, confira a seção de segurança de atalhos.
Considere a hierarquia de pastas a seguir que contém atalhos.
Files/
────folder1
│
└───shortcut2
|
└───shortcut3
Role1: ler folder1
Files/ ────folder1 │ └───shortcut2 | └───shortcut3
Role2: sem permissões definidas
Files/ │ └───shortcut2 | └───shortcut3
Como as permissões de segurança do OneLake são avaliadas com permissões do Fabric
As permissões de item e de workspace permitem que você conceda acesso de "alta granularidade" aos dados no OneLake para o item fornecido. As permissões de segurança do OneLake permitem restringir o acesso aos dados no OneLake apenas a pastas específicas.
Quando um usuário tenta acessar uma pasta em um lakehouse, a segurança do OneLake primeiro verifica as permissões para o workspace, depois o item do lakehouse e, em seguida, a pasta.
Permissões do workspace e segurança do OneLake
As permissões do workspace são o primeiro limite de segurança para dados no OneLake. Cada workspace representa um único domínio ou área de projeto em que as equipes podem colaborar nos dados. A segurança no workspace é gerenciada por meio de funções de workspace do Fabric. Saiba mais sobre o controle de acesso baseado em função (RBAC) do Fabric: Funções de workspace
As funções de workspace no Fabric concedem as seguintes permissões no OneLake.
Permissão | Administrador | Membro | Colaborador | Visualizador |
---|---|---|---|---|
Exibir arquivos no OneLake | Sempre* Sim | Sempre* Sim | Sempre* Sim | Não por padrão. Use a segurança do OneLake para conceder o acesso. |
Gravar arquivos no OneLake | Sempre* Sim | Sempre* Sim | Sempre* Sim | Não |
*Como as funções de Administrador, Membro e Colaborador do Workspace concedem automaticamente permissões de Gravação ao OneLake, elas substituem todas as permissões de Leitura de segurança do OneLake.
Função do espaço de trabalho | O OneLake aplica permissões de leitura de RBAC? |
---|---|
Administrador, Colaborador, Membro | Não, a segurança do OneLake ignora quaisquer permissões de leitura RBC do OneLake. |
Visualizador | Sim, se as permissões de Leitura de segurança do OneLake estiverem definidas, elas serão aplicadas. |
Segurança do OneLake e permissões do Lakehouse
Em um workspace, os itens do Fabric podem ter permissões configuradas separadamente das funções do workspace. As permissões podem ser configuradas por meio do compartilhamento de um item ou do gerenciamento das permissões de um item. A capacidade de um usuário de executar ações em dados no OneLake é determinada pelas permissões a seguir.
Permissões do Lakehouse
Permissão do Lakehouse | Pode exibir arquivos no OneLake? | Pode gravar arquivos no OneLake? | Pode ler dados por meio do endpoint de análise SQL? |
---|---|---|---|
Ler | Não por padrão. Use a segurança do OneLake para conceder acesso. | Não | Não |
LerTudo | Sim por padrão. Use a segurança do OneLake para restringir acesso. | Não | Não |
Escrever | Sim | Sim | Sim |
Executar, CompartilharNovamente, VisualizarSaída, VisualizarLogs | N/A - não pode ser concedido por conta própria | N/A - não pode ser concedido por conta própria | N/A - não pode ser concedido por conta própria |
Permissões do ponto de extremidade de análise do SQL do lakehouse
Um ponto de extremidade de análise do SQL é um warehouse gerado automaticamente por um Lakehouse no Microsoft Fabric. Um cliente pode fazer a transição da exibição "Lake" do lakehouse (que dá suporte à engenharia de dados e ao Apache Spark) para a exibição "SQL" do mesmo lakehouse. Saiba mais sobre o ponto de extremidade de análise do SQL na documentação do Data Warehouse: ponto de extremidade de análise do SQL.
Permissão do ponto de extremidade de análise do SQL | Os usuários podem exibir arquivos por meio do ponto de extremidade do OneLake? | Os usuários podem gravar arquivos por meio do ponto de extremidade do OneLake? | Os usuários podem ler dados pelo endpoint de análises SQL? |
---|---|---|---|
Ler | Não por padrão. Use a segurança do OneLake para conceder acesso. | Não | Não, por padrão, mas pode ser configurado com permissões granulares de SQL. |
LerDados | Não por padrão. Use a segurança do OneLake para conceder acesso. | Não | Sim |
Escrever | Sim | Sim | Sim |
Permissões de modelo semântico do Lakehouse padrão
No Microsoft Fabric, quando o usuário cria um lakehouse, o sistema também provisiona o modelo semântico padrão associado. O modelo semântico padrão tem métricas em cima dos dados do lakehouse. O modelo semântico permite que o Power BI carregue dados nos relatórios.
Permissão de modelo semântico padrão | Pode exibir arquivos no OneLake? | Pode gravar arquivos no OneLake? | Pode exibir o esquema no modelo semântico? | Pode ler dados no modelo semântico? |
---|---|---|---|---|
Ler | Não por padrão. Use a segurança do OneLake para conceder acesso. | Não | Não | Sim por padrão. Pode ser restrito com a Segurança em nível de objeto do Power BI e com a Segurança em nível de linha do Power BI |
Construir | Sim por padrão. Use a segurança do OneLake para restringir acesso. | Sim | Sim | Sim |
Escrever | Sim | Sim | Sim | Sim |
Compartilhar novamente | N/A - não pode ser concedido por conta própria | N/A - não pode ser concedido por conta própria | N/A - não pode ser concedido por conta própria | N/A - não pode ser concedido por conta própria |
Compartilhamento do lakehouse
Quando um usuário compartilha um lakehouse, ele concede a outros usuários ou a um grupo de usuários acesso a um lakehouse sem fornecer acesso ao espaço de trabalho e ao restante de seus itens.
Quando alguém compartilha um lakehouse, também pode conceder as seguintes permissões adicionais:
- Permissão ReadData no ponto de extremidade de análise do SQL
- Permissão ReadAll no lakehouse
- Criar permissão no modelo semântico padrão
Para obter mais informações, consulte Como funciona o compartilhamento do Lakehouse
O ponto de extremidade de análise do SQL é um warehouse. Para obter mais informações sobre seu modelo de permissão, consulte Compartilhar dados do Warehouse e gerenciar permissões
Opção de compartilhamento | Pode exibir arquivos no OneLake? | Pode gravar arquivos no OneLake? | Pode ler dados por meio do endpoint de análise SQL? | Pode exibir e criar modelos semânticos? |
---|---|---|---|---|
Nenhuma permissão adicional selecionada | Não por padrão. Use o RBAC do OneLake para conceder acesso. | Não | Não | Não |
Ler todos os dados do ponto de extremidade SQL | Não por padrão. Use o RBAC do OneLake para conceder acesso. | Não | Sim | Não |
Ler todo o Apache Spark e se inscrever em eventos | Sim por padrão. Use o RBAC do OneLake para restringir o acesso. | Não | Não | Não |
Criar relatórios sobre o conjunto de dados padrão | Sim por padrão. Use o RBAC do OneLake para restringir o acesso. | Não | Não | Sim |
Atalhos
Segurança do OneLake em atalhos internos
Para qualquer pasta em um lakehouse, as permissões sempre herdam todos os atalhos internos em que essa pasta é definida como destino.
Quando um usuário acessa os dados por meio de um atalho para outro local do OneLake, a identidade do usuário chamado é usada para autorizar o acesso aos dados no caminho de destino do atalho. Como resultado, esse usuário deve ter permissões da segurança do OneLake no local de destino para ler os dados.
Importante
Ao acessar atalhos por meio de modelos semânticos do Power BI usando o DirectLake em mecanismos SQL ou T-SQL no modo de identidade delegada, a identidade do usuário que realiza a chamada não é transmitida ao destino do atalho. Em vez disso, a identidade do proprietário do item de chamada é passada, delegando o acesso ao usuário de chamada. Para resolver isso, use modelos semânticos do Power BI no DirectLake no modo OneLake ou T-SQL no modo de identidade do usuário.
A definição de permissões de segurança do OneLake para o atalho interno não é permitida e deve ser definida na pasta de destino localizada no item de destino. O item de destino deve ser um tipo de item que dê suporte a funções de segurança do OneLake. Atualmente, apenas o Lakehouse dá suporte a funções de segurança do OneLake.
A tabela a seguir especifica se o cenário de atalho correspondente dá suporte a permissões de segurança do OneLake.
Cenário de atalho interno | As permissões de segurança do OneLake são suportadas? | Comentários |
---|---|---|
Atalho em um lakehouse apontando para folder2 localizada no mesmo lakehouse. | Com suporte. | Para restringir o acesso aos dados no atalho, defina a segurança do OneLake para folder2. |
Atalho em um lakehouse apontando para folder2 localizada em outro lakehouse | Com suporte. | Para restringir o acesso aos dados no atalho, defina a segurança do OneLake para folder2 em outro lakehouse. |
Atalho em um lakehouse apontando para uma tabela localizada em um data warehouse | Não há suporte. | O OneLake não dá suporte à definição de permissões de segurança em data warehouses. Em vez disso, o acesso é determinado com base na permissão ReadAll. |
Atalho em um lakehouse apontando para uma tabela localizada em um banco de dados KQL | Não há suporte. | O OneLake não dá suporte à definição de permissões de segurança em bancos de dados KQL. Em vez disso, o acesso é determinado com base na permissão ReadAll. |
Segurança do OneLake em atalhos externos (ADLS, S3, Dataverse)
O OneLake dá suporte à definição de permissões para atalhos como atalhos do ADLS, do S3 e do Dataverse. Nesse caso, as permissões são aplicadas sobre o modelo de autorização delegado habilitado para esse tipo de atalho.
Suponha que user1 crie um atalho do S3 em um lakehouse apontando para uma pasta em um bucket do AWS S3. Em seguida, o user2 tenta acessar os dados neste atalho.
A conexão do S3 autoriza o acesso para o user1 delegado? | A segurança do OneLake autoriza o acesso para o user2 solicitante? | Resultado: o usuário2 pode acessar dados no Atalho S3? |
---|---|---|
Sim | Sim | Sim |
Não | Não | Não |
Não | Sim | Não |
Sim | Não | Não |
As permissões de segurança do OneLake podem ser definidas para todo o escopo do atalho ou para subpastas selecionadas. As permissões definidas em uma pasta herdam recursivamente todas as subpastas, mesmo que a subpasta esteja dentro do atalho.
Saiba mais sobre os atalhos do S3, do ADLS e do Dataverse em atalhos do OneLake.
Segurança de linha e coluna
As funções de segurança do OneLake permitem segurança em nível de linha (RLS) e segurança em nível de coluna (CLS) em tabelas dentro de um lakehouse. A RLS e a CLS seguem regras de composição específicas para funções simples e múltiplas. Em geral, RLS e CLS são uma interseção dentro de uma função e compõem com uma união entre várias funções.
Observação
A segurança do OneLake está atualmente em uma versão prévia limitada. Para solicitar a participação na versão prévia e acessar esses recursos, preencha o formulário em https://aka.ms/onelakesecuritypreview.
Função única
Ao definir uma função com RLS e CLS, um usuário primeiro escolhe tabelas para permitir acesso. Nessa seleção, restrições como RLS e CLS podem ser definidas em uma ou mais tabelas. A RLS e o CLS atuam como filtros no esquema completo e nos dados atribuídos a uma tabela.
Por exemplo:
UserA é um membro de Role1. Role1 tem a seguinte definição:
- Acesso de leitura ao Table1
- CLS: A coluna 1 foi removida da Tabela 1.
- RLS: Table1 onde Column2 = “US”.
Quando UserA executa uma consulta em Table1, ele vê todas as colunas, exceto a Column1, e apenas as linhas em que a Column2 tem um valor de “US”.
Funções múltiplas
Para RLS e CLS em várias funções, a segurança é combinada por meio de uma união de cada categoria. Cada função produz uma exibição de uma tabela com regras de RLS e de CLS aplicadas e o usuário vê uma união dessas exibições.
A CLS é combinada como uma união simples entre funções. Qualquer restrição coletiva sem restrição resulta em nenhuma restrição a essa tabela.
A RLS é combinada com um OR entre instruções SQL. Assim como na CLS, as regras da RLS, quando unidas com acesso completo à tabela, resultam em todas as linhas sendo visíveis.
Importante
Se duas funções combinarem de forma que as colunas e linhas não estejam alinhadas entre as consultas, o acesso será bloqueado para garantir que nenhum dado seja vazado para o usuário final.
Limitações de segurança do OneLake
Se você atribuir uma função de segurança do OneLake a um usuário convidado B2B, deverá definir as configurações de colaboração externa para B2B na ID externa do Microsoft Entra. A configuração Acesso do usuário convidado deve ser definida como Usuários convidados têm o mesmo acesso que os membros (mais inclusivo).
A segurança do OneLake não dá suporte a atalhos entre regiões. Qualquer tentativa de acessar o atalho a dados em diferentes regiões de capacidade resulta em erros 404.
Se você adicionar uma lista de distribuição a uma função na segurança do OneLake, o ponto de extremidade do SQL não poderá resolver os membros da lista para impor o acesso. O resultado é que os usuários parecem não ser membros da função quando acessam o ponto de extremidade do SQL.
Modelos semânticos não dão suporte a atalhos que apontam para outros lakehouses que não têm a segurança do OneLake habilitada.
Para consultar dados de um notebook Spark usando o Spark SQL, o usuário deve ter pelo menos acesso do Visualizador no workspace que está consultando.
Os notebooks Spark exigem que o ambiente seja 3.5 ou superior e que use o runtime Fabric 1.3.
A tabela a seguir fornece as limitações das funções de acesso a dados do OneLake.
Cenário Limite Número máximo de funções de segurança do OneLake por Item do Fabric 250 funções por lakehouse Número máximo de membros por função de segurança do OneLake 500 usuários ou grupos de usuários por função Número máximo de permissões por função de segurança do OneLake 500 permissões por função
Latências na segurança do OneLake
- As alterações nas definições de função levam cerca de 5 minutos para serem aplicadas.
- As alterações em um grupo de usuários em uma função de segurança do OneLake levam cerca de uma hora para o OneLake aplicar as permissões da função no grupo de usuários atualizado.
- Alguns mecanismos do Fabric têm sua própria camada de cache, portanto, podem exigir uma hora adicional para atualizar o acesso em todos os sistemas.