Auditorias de conformidade exigem um registro claro de quem tem acesso a quais arquivos e pastas no OneDrive for Business. Sem a documentação adequada, você não consegue comprovar que o compartilhamento externo é controlado ou que dados confidenciais estão restritos a usuários autorizados. Muitos administradores de TI recorrem a verificações manuais, que consomem tempo e são propensas a erros. Este artigo explica como gerar relatórios de permissão usando ferramentas nativas do Microsoft 365 e scripts PowerShell. Você aprenderá as etapas exatas para produzir documentação pronta para conformidade para qualquer site do OneDrive.
Principais Conclusões: Documentar Permissões do OneDrive para Conformidade
- Centro de administração do Microsoft 365 > Relatórios > Uso > OneDrive: Fornece dados básicos de atividade de compartilhamento, mas não detalhes de permissão por arquivo necessários para conformidade.
- Portal de conformidade do Microsoft 365 Purview > Auditoria: Registra eventos de compartilhamento como “Membro adicionado ao site do SharePoint” e “Link compartilhado criado” para rastreamento de atividade em nível de usuário.
- SharePoint Online Management Shell: Os cmdlets PowerShell
Get-SPOSiteeGet-SPOSiteGrouprecuperam administradores de conjunto de sites e grupos de permissão para cada site do OneDrive.
Visão Geral da Documentação de Permissões do OneDrive para Conformidade
O OneDrive for Business armazena arquivos em um conjunto de sites dedicado do SharePoint para cada usuário. As permissões são gerenciadas no nível do site e no nível do item. A documentação de conformidade deve capturar três camadas: administradores do site, configurações de compartilhamento externo e concessões de acesso direto a arquivos ou pastas. O Microsoft 365 fornece dois métodos principais para coletar esses dados. O log de auditoria no portal de conformidade do Purview registra alterações de permissão ao longo do tempo. O SharePoint Online Management Shell exporta instantâneos de permissão atuais. Um relatório de conformidade completo combina ambas as fontes para mostrar quem tinha acesso em qualquer ponto durante o período de auditoria.
Antes de começar, confirme se você possui as funções necessárias. Você precisa da função de Administrador do SharePoint ou Administrador Global no Microsoft 365. Para acesso ao log de auditoria, a função de Logs de Auditoria no Purview é necessária. Essas funções estão disponíveis no centro de administração do Microsoft 365 em Usuários ativos. Atribua as funções a uma conta de administrador de conformidade dedicada, em vez de usar sua conta de usuário diária.
Etapas para Documentar Permissões do OneDrive Usando o Log de Auditoria do Purview
- Abra o portal de conformidade do Microsoft 365 Purview
Faça login em https://compliance.microsoft.com com uma conta de administrador de conformidade ou administrador global. Selecione Auditoria no menu de navegação à esquerda. - Pesquise eventos relacionados a permissões
Defina o intervalo de datas para cobrir seu período de auditoria. Em Atividades, selecione Solicitações de compartilhamento e acesso. Escolha Membro adicionado ao site do SharePoint, Configurações de compartilhamento alteradas no site e Link compartilhado criado. Clique em Pesquisar. - Exporte os resultados do log de auditoria
Após a pesquisa ser concluída, clique em Exportar e selecione Exportar todos os resultados. O arquivo é baixado como CSV. Abra-o no Excel para filtrar pela URL do site do OneDrive, que normalmente começa comhttps://seutenant-my.sharepoint.com/personal/. - Filtre eventos de compartilhamento externo
No CSV, filtre a coluna Item por “externo” ou “convidado” para identificar compartilhamentos com pessoas fora da sua organização. Registre o usuário que iniciou o compartilhamento, o usuário de destino e o carimbo de data/hora.
O log de auditoria captura eventos por até 90 dias nas licenças Microsoft 365 E3 e E5. Para retenção mais longa, habilite Auditoria (Premium) no portal do Purview em Auditoria > Políticas de retenção de auditoria.
Etapas para Documentar Permissões do OneDrive Usando PowerShell
- Instale o SharePoint Online Management Shell
Abra o Windows PowerShell como administrador. ExecuteInstall-Module -Name Microsoft.Online.SharePoint.PowerShell. Se solicitado, confirme a instalação do PSGallery. - Conecte-se ao SharePoint Online
ExecuteConnect-SPOService -Url https://seutenant-admin.sharepoint.com. Insira suas credenciais de administrador do SharePoint quando solicitado. - Obtenha todos os conjuntos de sites do OneDrive
ExecuteGet-SPOSite -IncludePersonalSite $true -Limit all | Where-Object {$_.Url -like "/personal/"} | Select-Object Url, Owner, SharingCapability. Isso lista cada URL de site do OneDrive, seu proprietário e a configuração de compartilhamento externo. - Exporte permissões do site para um arquivo CSV
Execute o script a seguir para coletar todos os membros do grupo do site para cada site do OneDrive:Get-SPOSite -IncludePersonalSite $true -Limit all | Where-Object {$_.Url -like "/personal/"} | ForEach-Object { $site = $_.Url; Get-SPOSiteGroup -Site $site | Select-Object @{Name="SiteUrl";Expression={$site}}, Title, Users } | Export-Csv -Path "OneDrivePermissions.csv" -NoTypeInformation - Revise o CSV exportado
Abra o arquivo no Excel. A coluna Usuários contém endereços de email delimitados por ponto e vírgula. Use o recurso Texto para Colunas do Excel para dividi-los em linhas individuais para facilitar a auditoria. Salve uma cópia com um carimbo de data para seus registros.
O PowerShell exporta apenas um instantâneo das permissões atuais. Combine isso com exportações do log de auditoria para mostrar alterações históricas.
Problemas Comuns ao Documentar Permissões do OneDrive
O log de auditoria não retorna resultados para um usuário específico
A pesquisa pode retornar vazia se o intervalo de datas for muito estreito ou se o usuário não realizou nenhuma atividade de compartilhamento. Estenda o intervalo até o período máximo de retenção. Verifique também se o log de auditoria está ativado no portal do Purview em Auditoria > Pesquisa de log de auditoria.
O script PowerShell falha com acesso negado
A conta usada para conectar deve ter a função de Administrador do SharePoint. Se você usar uma conta de administrador global, certifique-se de que a conta não esteja bloqueada por políticas de Acesso Condicional. Execute Connect-SPOService novamente com o parâmetro -Credential para forçar a reautenticação.
URLs de sites do OneDrive estão faltando na exportação CSV
O parâmetro -IncludePersonalSite $true é obrigatório. Sem ele, Get-SPOSite retorna apenas sites de equipe. Se os sites ainda estiverem faltando, confirme se o usuário tem uma licença do OneDrive atribuída no centro de administração do Microsoft 365.
Log de Auditoria vs Instantâneo PowerShell: Melhores Métodos para Conformidade
| Item | Log de Auditoria do Purview | Instantâneo PowerShell |
|---|---|---|
| Tipo de dados | Eventos históricos de alteração de permissão | Estado atual das permissões |
| Retenção | 90 dias padrão, até 10 anos com Auditoria (Premium) | Apenas o momento da exportação |
| Detecção de compartilhamento externo | Registra cada evento de compartilhamento com email de destino | Mostra a configuração atual de capacidade de compartilhamento, mas não compartilhamentos passados |
| Detalhamento por usuário | Mostra quem realizou a ação e quem recebeu acesso | Mostra associação a grupos, mas não permissões diretas em nível de item |
| Adequação para automação | Requer exportação manual de CSV ou chamadas à API Graph | Totalmente scriptável com tarefas agendadas |
Para um registro de conformidade completo, execute o instantâneo PowerShell semanalmente e exporte o log de auditoria mensalmente. Armazene ambos os arquivos em uma biblioteca de documentos segura do SharePoint com controle de versão ativado.
Agora você pode gerar documentação de permissões para qualquer site do OneDrive usando o log de auditoria do Purview e o PowerShell. Execute o instantâneo PowerShell semanalmente para manter um inventário de acesso atualizado. Para alterações históricas, exporte o log de auditoria mensalmente com o filtro “Membro adicionado ao site do SharePoint”. Como dica avançada, agende o script PowerShell usando o Agendador de Tarefas do Windows com uma conta de serviço que tenha a função de Administrador do SharePoint e uma senha de aplicativo para autenticação não supervisionada.