Gerir relatórios de governação de acesso a dados com o PowerShell do SharePoint Online
Algumas funcionalidades neste artigo requerem o Microsoft SharePoint Premium – Gestão Avançada do SharePoint
Embora a governação de acesso a dados esteja disponível no portal do centro de administração do SharePoint, as grandes organizações geralmente procuram suporte do PowerShell para gerir o dimensionamento através de scripting e automatização. Este documento aborda todos os comandos adequados do PowerShell disponíveis através do módulo powerShell do SharePoint Online para gerir relatórios a partir da governação de acesso a dados.
Importante
O suporte do PowerShell para a governação de acesso a dados está disponível no módulo "Microsoft.Online.SharePoint.PowerShell" e na versão "16.0.25409" e posteriormente.
Importante
Execute o comando "Connect-SPOService" SEM o parâmetro Credential . NÃO suportamos o início de sessão com o parâmetro Credential inline com as práticas de segurança mais recentes.
Criar relatórios com o PowerShell
Utilize o comando Start-SPODataAccessGovernanceInsight para gerar todos os relatórios com filtros e parâmetros adequados
Partilhar excessivamente o relatório de linha de base com permissões
A definição de "oversharing" pode ser diferente para diferentes clientes. A governação do acesso a dados considera o "número de utilizadores" como um dos pivôs possíveis para estabelecer uma linha de base e, em seguida, controlar os principais contribuidores de potenciais "partilhas excessivas", como partilhar ligações criadas e partilhar com grandes grupos, como "Todos, Exceto utilizadores externos" nos últimos 28 dias. Pode definir o limiar de "número de utilizadores" e gerar um relatório de sites a que muitos utilizadores acedem, no momento da geração de relatórios. Este relatório é considerado um relatório "snapshot".
Start-SPODataAccessGovernanceInsight -ReportEntity PermissionedUsers -ReportType Snapshot -Workload SharePoint -CountOfUsersMoreThan 100 -Name "ReportForTestingLatestFixes"
Este comando gera uma lista de todos os sites onde mais de 100 utilizadores podem aceder a qualquer conteúdo dentro do site. Mais informações sobre a lista de sites e como interpretar os resultados são fornecidas aqui.
Observação
Atualmente, o relatório é composto por sites do SharePoint e contas do OneDrive e pode gerar até 1 M de sites e/ou contas.
Partilhar relatórios de ligação
Estes relatórios são úteis na identificação de sites ativos em colaboração e, por conseguinte, precisam de uma intervenção mais rápida para mitigar qualquer potencial risco de partilha excedida. Estes relatórios baseados em "RecentActivity" identificam sites que estão a gerar o maior número de ligações de partilha nos últimos 28 dias.
Qualquer pessoa que partilhe ligações criadas nos últimos 28 dias
Start-SPODataAccessGovernanceInsight -ReportEntity SharingLinks_Anyone -Workload SharePoint -ReportType RecentActivity
Indique o valor da carga de trabalho como "OneDriveForBusiness" para obter todas as contas do OneDrive com os mesmos critérios.
Ligações de partilha PeopleInYourOrg criadas nos últimos 28 dias
Start-SPODataAccessGovernanceInsight -ReportEntity SharingLinks_PeopleInYourOrg -Workload SharePoint -ReportType RecentActivity
Indique o valor da carga de trabalho como "OneDriveForBusiness" para obter todas as contas do OneDrive com os mesmos critérios.
Ligações de partilha de pessoas específicas (convidados) criadas nos últimos 28 dias
Start-SPODataAccessGovernanceInsight -ReportEntity SharingLinks_Guests -Workload SharePoint -ReportType RecentActivity
Indique o valor da carga de trabalho como "OneDriveForBusiness" para obter todas as contas do OneDrive com os mesmos critérios.
Conteúdo partilhado com Todos exceto utilizadores externos nos últimos 28 dias
Embora a partilha de ligações seja uma das contribuidor possíveis de partilha excedida, outra chave contribuidor é "Todos, exceto os utilizadores externos" (EEEU), o que torna o conteúdo "público", visível para toda a organização e facilita a descoberta de conteúdos e acesso a outras pessoas. Estes relatórios identificam sites que utilizaram ativamente a EEEU em vários âmbitos nos últimos 28 dias.
Sites partilhados com Todos exceto utilizadores externos nos últimos 28 dias
Quando o EEEU é adicionado a uma associação a um site (proprietários, membros ou visitantes), todo o conteúdo do site torna-se público e mais propenso a partilha excessiva. O seguinte comando do PowerShell aciona o relatório para capturar esses sites nos últimos 28 dias:
Start-SPODataAccessGovernanceInsight -ReportEntity EveryoneExceptExternalUsersAtSite -Workload SharePoint -ReportType RecentActivity -Name "PublicSiteViaEEEU"
Observação
Atualmente, o relatório do OneDriveForBusiness com eEEU ao nível do site não é suportado.
Itens partilhados com Todos, exceto utilizadores externos nos últimos 28 dias
O seguinte comando do PowerShell aciona o relatório para capturar sites onde itens específicos (ficheiros/pastas/listas) foram partilhados com o EEEU nos últimos 28 dias:
Start-SPODataAccessGovernanceInsight -ReportEntity EveryoneExceptExternalUsersAtSite -Workload SharePoint -ReportType RecentActivity -Name "PublicSiteViaEEEU"
Indique o valor da carga de trabalho como "OneDriveForBusiness" para obter todas as contas do OneDrive com os mesmos critérios.
Etiqueta de confidencialidade no relatório de ficheiros
Este comando do PowerShell aciona o relatório para listar sites em que itens específicos foram etiquetados com uma determinada "etiqueta", a partir da data de geração de relatórios.
Primeiro, obtenha o nome da etiqueta ou o GUID da etiqueta com o módulo do PowerShell "Segurança e conformidade".
Get-Label | Format-Table -Property DisplayName, Name, GUID, ContentType
Em seguida, utilize o Nome e o GUID para obter sites com ficheiros etiquetados com o nome de etiqueta ou GUID especificado.
Start-SPODataAccessGovernanceInsight -ReportEntity SensitivityLabelForFiles -Workload SharePoint -ReportType Snapshot -FileSensitivityLabelGUID "a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1" -FileSensitivityLabelName Secret
Observação
Atualmente, o relatório para contas "OneDriveForBusiness" com ficheiros etiquetados não é suportado.
Controlar relatórios com o PowerShell
Importante
Todas as criações de relatórios resultarão num GUID como saída que pode ser utilizado para controlar o relatório status
Start-SPODataAccessGovernanceInsight -ReportEntity SensitivityLabelForFiles -Workload SharePoint -ReportType Snapshot -FileSensitivityLabelGUID "a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1" -FileSensitivityLabelName Secret
ReportId Status
-------- ------
a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1 NotStarted
Utilize o comando Get-SPODataAccessGovernanceInsight para obter o status atual de um relatório de governação de acesso a dados específico com o ID do relatório.
Get-SPODataAccessGovernanceInsight -ReportID a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1
ReportId : a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1
ReportEntity : SharingLinks_Anyone
Status : InQueue
Workload : SharePoint
TriggeredDateTime : 11/13/2024 19:32:34
CreatedDateTime : 11/13/2024 20:09:23
ReportStartTime : 10/17/2024 19:32:33
ReportEndTime : 11/13/2024 19:32:33
ReportType : RecentActivity
SitesFound : 120
ReportStartTime e ReportEndTime indicam o período de dados para gerar o relatório. O status é marcado como "Concluído" quando a geração do relatório estiver concluída.
Também pode ver a status atual dos relatórios DAG com o filtro ReportEntity em vez do ID. O reportID é listado na saída e é necessário mais tarde para transferir um relatório específico.
Get-SPODataAccessGovernanceInsight -ReportEntity PermissionedUsers
ReportId : a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1
ReportName : PermissionReportFor1AsOfSept
ReportEntity : PermissionedUsers
Status : Completed
Workload : SharePoint
TriggeredDateTime : 09/18/2024 11:06:16
CreatedDateTime : 09/22/2024 12:12:48
ReportType : Snapshot
CountOfUsersMoreThan : 1
CountOfSitesInReport : 7
CountOfSitesInTenant : 22
Privacy : All
Sensitivity : {All}
Templates : {All}
ReportId : b1b1b1b1-cccc-dddd-eeee-f2f2f2f2f2f2
ReportName : PermissionReportFor1AsOfOct
ReportEntity : PermissionedUsers
Status : Completed
Workload : SharePoint
TriggeredDateTime : 10/09/2024 14:15:40
CreatedDateTime : 10/09/2024 15:18:23
ReportType : Snapshot
CountOfUsersMoreThan : 100
CountOfSitesInReport : 0
CountOfSitesInTenant : 26
Privacy : All
Sensitivity : {All}
Templates : {All}
Ver e transferir relatórios com o PowerShell
Para transferir um relatório específico, precisa do reportID. Obtenha o reportID com o comando Get-SPODataAccessGovernanceInsight e utilize o comando Export-SPODataAccessGovernanceInsight para transferir o relatório para um caminho especificado.
Export-SPODataAccessGovernanceInsight -ReportID a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1 -DownloadPath "C:\Users\TestUser\Documents\DAGReports"
Esta ação transfere um ficheiro CSV para o caminho especificado. Os detalhes do CSV/vista de cada relatório são abordados aqui.
Observação
O caminho de transferência predefinido é a pasta "Transferências".
Ações de remediação com o PowerShell
Assim que os relatórios de governação de acesso a dados forem gerados, os administradores do SharePoint podem executar ações de remediação, conforme descrito aqui. A secção seguinte descreve os comandos do PowerShell para acionar e controlar a "revisão de acesso ao site" como uma ação de remediação.
Iniciar revisão de acesso ao Site com o PowerShell
Utilize o comando Start-SPOSiteReview para iniciar uma revisão de acesso ao site para um site específico, listado num relatório de governação de acesso a dados. O Relatório de governação de acesso a dados fornece o contexto no qual a revisão deve ser iniciada. Obtenha o reportID, o ID do site do ficheiro CSV e forneça comentários para dar clareza ao proprietário do site relativamente à finalidade da revisão.
Start-SPOSiteReview -ReportID a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1 -SiteID c2c2c2c2-dddd-eeee-ffff-a3a3a3a3a3a3 -Comment "Check for org wide access"
ReviewId : a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1
SiteId : c2c2c2c2-dddd-eeee-ffff-a3a3a3a3a3a3
ReviewInitiatedDateTime : 13-11-2024 20:55:41
ReportEntity : PermissionedUsers
Status : Pending
AdminComment : Check for org wide access
SiteName : All Company
Isto aciona e-mails para o proprietário do site, conforme descrito aqui.
Controlar revisões de acesso ao Site com o PowerShell
Utilize o comando Start-SPOSiteReview para controlar a status de revisões de acesso ao site. Para revisões específicas, pode utilizar o ReviewID
valor conforme mostrado na saída. Para obter todas as revisões relacionadas com um módulo de relatórios, utilize o ReportEntity
parâmetro .
Get-SPOSiteReview -ReportEntity PermissionedUsers
ReviewId : a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1
SiteId : c2c2c2c2-dddd-eeee-ffff-a3a3a3a3a3a3
ReviewInitiatedDateTime : 13-11-2024 20:55:41
ReviewCompletedDateTime :
ReportCreatedDateTime : 13-11-2024 23:25:41
ReportEndDateTime : 13-11-2024 23:25:41
ReportEntity : PermissionedUsers
Status : Pending
AdminComment : Check for org wide access
SiteName : All Company
ReviewerEmail :
ReviewerComment :
ReviewId : a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1
SiteId : c2c2c2c2-dddd-eeee-ffff-a3a3a3a3a3a3
ReviewInitiatedDateTime : 24-10-2024 11:07:39
ReviewCompletedDateTime : 15-11-2024 11:07:39
ReportCreatedDateTime : 15-10-2024 09:24:47
ReportEndDateTime : 15-10-2024 11:39:52
ReportEntity : PermissionedUsers
Status : Completed
AdminComment : Check for org wide access
SiteName : All Company
ReviewerEmail : Jon@contosofinance.com
ReviewerComment : Removed EEEU for sensitive documents