Get-AdaptiveScopeMembers
Esse cmdlet só está disponível no serviço baseado em nuvem.
Utilize o cmdlet Get-AdaptiveScopeMembers para obter membros atuais e anteriores de âmbitos ajustáveis na sua organização. Os âmbitos ajustáveis são utilizados em políticas de retenção, políticas de Gestão de Riscos Internos e políticas de etiquetas de retenção.
Para saber mais sobre os conjuntos de parâmetros na seção Sintaxe, abaixo, consulte Exchange cmdlet syntax.
Sintaxe
Identity (Default)
Get-AdaptiveScopeMembers
[-Identity] <ComplianceRuleIdParameter>
[<CommonParameters>]
Default
Get-AdaptiveScopeMembers
[-Identity] <ComplianceRuleIdParameter>
[-AdaptiveReportFilters <PswsHashtable>]
[-PageResultSize <UnlimitedInt>]
[-State <LocationState>]
[<CommonParameters>]
AdaptiveReportPagination
Get-AdaptiveScopeMembers
[-Identity] <ComplianceRuleIdParameter>
-PageCookie <string>
[<CommonParameters>]
Description
Utilize este cmdlet para obter membros existentes e anteriores (utilizadores, grupos ou sites) de um âmbito adaptável.
O resultado do cmdlet é uma lista onde o primeiro elemento contém metadados de resultados. Os elementos subsequentes contêm os membros.
Os metadados incluem as seguintes informações:
- O número total de membros do pedido.
- O número de membros devolvidos na página atual.
- Se estão disponíveis páginas adicionais.
Se existirem páginas adicionais, os metadados incluem um valor de Marca d'água e o valor IsLastPage é Falso.
Para obter a página seguinte, transmita o valor De marca d'água para o parâmetro PageCookie na próxima invocação do cmdlet. Utilize o parâmetro AdaptiveReportFilters para filtrar os membros.
Para usar este cmdlet no PowerShell de Segurança e Conformidade, você precisa receber permissões. Para obter mais informações, confira Permissões no portal de conformidade do Microsoft Purview.
Exemplos
Exemplo 1
Get-AdaptiveScopeMembers -Identity "US Finance Users"
Este exemplo obtém os membros do âmbito ajustável Us Finance Users. Se o âmbito contiver menos de 10 000 membros, todos os membros serão devolvidos.
Para âmbitos maiores, apenas os primeiros 10 000 membros são incluídos e o primeiro objeto na resposta contém metadados com uma marca d'água que pode ser utilizada para pedir páginas subsequentes.
Exemplo 2
Get-AdaptiveScopeMembers -Identity "US Finance Users" -PageResultSize Unlimited
Este exemplo devolve todos os membros do âmbito adaptável Us Finance Users.
Importante: não recomendamos a utilização do valor PageResultSize Ilimitado para grandes âmbitos ajustáveis. A utilização de Ilimitados em âmbitos adaptativos grandes pode levar a pedidos de execução prolongada e falhas transitórias que não podem ser repetidas de forma eficiente.
Exemplo 3
Get-AdaptiveScopeMembers -Identity "US Finance Users" -PageResultSize 0
Este exemplo só devolve metadados com a contagem total de membros do âmbito adaptável Us Finance Users.
Exemplo 4
Get-AdaptiveScopeMembers -Identity "US Finance Users" -PageResultSize 30
Este exemplo obtém os membros do âmbito ajustável Us Finance Users. Se o âmbito contiver menos de 30 membros, todos os membros serão devolvidos.
Para âmbitos maiores, apenas os primeiros 30 membros são incluídos e o primeiro objeto na resposta contém metadados com uma marca d'água que pode ser utilizada para pedir páginas subsequentes.
Exemplo 5
Get-AdaptiveScopeMembers -Identity "US Finance Users" -State Added
Este exemplo obtém os membros atuais do âmbito adaptável Us Finance Users. Se o âmbito contiver menos de 10 000 membros atuais, todos os membros atuais serão devolvidos.
Para âmbitos maiores, apenas os primeiros 10 000 membros atuais estão incluídos e o primeiro objeto na resposta contém metadados com uma marca d'água que pode ser utilizada para pedir páginas subsequentes.
Exemplo 6
Get-AdaptiveScopeMembers -Identity "US Finance Users" -State Removed
Este exemplo obtém os membros anteriores do âmbito adaptável Us Finance Users. Se o âmbito contiver menos de 10 000 membros anteriores, todos os membros anteriores serão devolvidos.
Para âmbitos maiores, apenas os primeiros 10 000 membros anteriores estão incluídos e o primeiro objeto na resposta contém metadados com uma marca d'água que pode ser utilizada para pedir páginas subsequentes.
Exemplo 7
Get-AdaptiveScopeMembers -Identity "US Finance Sites" -AdaptivereportFilters @{"SiteUrlContainsAny" = @("/personal/", "/teams/")}
Este exemplo obtém os membros dos Sites Financeiros dos E.U.A. de âmbito adaptável onde o URL do site contém /personal/ ou /teams/. Se os resultados contiverem menos de 10 000 membros, todos serão devolvidos.
Para resultados maiores, apenas os primeiros 10 000 estão incluídos e o primeiro objeto na resposta contém metadados com uma marca d'água que pode ser utilizada para pedir páginas subsequentes.
Exemplo 8
$scope="US Finance Users"; $size=200; $cookie=$null
$all=@()
do {
$page = Get-AdaptiveScopeMembers -Identity $scope -Size $size -PageCookie $cookie
if(-not $page){ break }
$meta = $page[0]
if($meta.CurrentPageMemberCount -gt 0){ $all += $page[1..($page.Count-1)] }
$cookie = if($meta.IsLastPage){ $null } else { $meta.Watermark }
} while($cookie -ne $null)
$all | Export-Csv -NoTypeInformation -Path "C:\Data\AdaptiveScopeMembers_$($scope -replace ' ','_').csv"
Este exemplo obtém os membros do âmbito adaptável Us Finance Users 200 membros de cada vez e guarda-os numa lista. Os resultados são guardados no ficheiro CSV especificado.
Exemplo 9
function Export-AdaptiveScopeMembers {
[CmdletBinding()] param([string]$Scope,[string]$Out,[int]$Size=10000,[bool]$Resume=$true)
$scope=$Scope; $out=$Out; $size=$Size;
$meta=Join-Path $out "$scope-exportadaptivescopemembersexecutioninfo.json"
if (-not (Test-Path $out)) { New-Item -ItemType Directory -Path $out | Out-Null }
$m = if ($resume -and (Test-Path $meta)) { Get-Content $meta -Raw | ConvertFrom-Json } else {$null}
$cookie = if ($m) {$m.Watermark} else {$null}; $page = if ($m -and $m.IsLastPage -ne $true) { $m.LastPageProcessed + 1 } else {1}; $isLast=$false
do {
$res = if ($cookie) { Get-AdaptiveScopeMembers -Identity $scope -PageCookie $cookie -WarningAction SilentlyContinue} else { Get-AdaptiveScopeMembers -Identity $scope -PageResultSize $size -WarningAction SilentlyContinue }
$metaObj = $res[0]; $members = $res[1..($res.Count-1)]
if ($members.Count) { $file=Join-Path $out "$scope-part$($page).csv"; $members | Export-Csv $file -NoTypeInformation; Write-Host "Exported $($members.Count) of page $page to file '$file'" }
$cookie = $metaObj.Watermark; $isLast = $metaObj.IsLastPage
$status = @{TimestampUtc=(Get-Date).ToUniversalTime().ToString("o"); TotalResults=$metaObj.TotalMemberCount; PageSize=$metaObj.CurrentPageMemberCount; Identity=$metaObj.Identity; Watermark=$cookie; LastPageProcessed=$page; IsLastPage=$metaObj.IsLastPage}
if ($isLast) {
$status = @{TimestampUtc=(Get-Date).ToUniversalTime().ToString("o"); TotalResults=$metaObj.TotalMemberCount; Identity=$metaObj.Identity; Watermark=$cookie; LastPageProcessed=$page; IsLastPage=$metaObj.IsLastPage}
}
$status | ConvertTo-Json | Set-Content $meta
$page++
} while (-not $isLast)
Write-Host "Completed exporting members of adaptive scope '$scope' to folder '$out'"
}
Muitas vezes, os clientes precisam de exportar todos os membros de um âmbito adaptável para ficheiros para revisão, auditoria, análise offline ou para partilhar com outras equipas. Este script auxiliar Export-AdaptiveScopeMembers simplifica este processo ao paginar automaticamente o âmbito, exportar cada página para um ficheiro CSV e escrever metadados de execução para retomar.
Este fluxo de trabalho de exportação é reiniciável. Se o script parar a meio devido a uma falha transitória, problema de rede ou tempo limite, pode simplesmente executá-lo novamente. Lê o ficheiro de metadados existente, retoma a partir da última página processada com êxito e continua a exportar até que todas as páginas tenham sido obtidas.
Cole esta função na sua sessão e chame-a com os parâmetros pretendidos. Pode ligar Export-AdaptiveScopeMembers para guardar os resultados em ficheiros.
Este exemplo obtém os membros do âmbito ajustável Us Finance Users e guarda cada 10 000 membros num ficheiro csv na pasta fornecida. A pasta é criada se ainda não existir:
Export-AdaptiveScopeMembers -Scope "US Finance Users" -Out "D:\adaptivescopedetails".
Este exemplo obtém os membros do âmbito adaptável Us Finance Users e guarda cada 200 membros num ficheiro csv na pasta fornecida. A pasta é criada se ainda não existir:
Export-AdaptiveScopeMembers -Scope "US Finance Users" -Out "D:\adaptivescopedetails" -Size 200.
Por predefinição, o parâmetro -Resume está definido como $true, permitindo que o processo de exportação continue automaticamente a partir da última página concluída se uma sessão do PowerShell for interrompida. Especifique $false para iniciar a exportação desde o início e substituir qualquer progresso guardado anteriormente.
Export-AdaptiveScopeMembers -Scope "US Finance Users" -Out "D:\adaptivescopedetails" -Size 200 -Resume $false
Parâmetros
-AdaptiveReportFilters
Aplicável: Exchange Online, Conformidade & de Segurança
O parâmetro AdaptiveReportFilters especifica um ou mais filtros utilizados para refinar os resultados.
Este parâmetro aceita uma tabela hash em que cada chave mapeia para uma lista (matriz) de até 10 valores. As chaves de filtro válidas são:
- MailboxGuidEqualsAny
- MailboxGuidNotEqualsAny
- ObjectIdEqualsAny
- ObjectIdNotEqualsAny
- SiteIdEqualsAny
- SiteIdNotEqualsAny
- SiteUrlContainsAny
- SiteUrlEqualsAny
- SiteUrlNotContainsAny
- SiteUrlNotEqualsAny
- SiteUrlNotStartsWithAny
- SiteUrlStartsWithAny
- SmtpAddressEqualsAny
- SmtpAddressNotEqualsAny
- SmtpAddressNotStartsWithAny
- SmtpAddressStartsWithAny
- UpnEqualsAny
- UpnNotEqualsAny
- UpnNotStartsWithAny
- UpnStartsWithAny
Vários valores de chave utilizam sintaxe OR lógica. Várias teclas não*Não*utilizam sintaxe OR. As teclas *Not* e non-*Not* mistas utilizam sintaxe AND lógica.
Valor do parâmetro de exemplo a filtrar pelo prefixo UPN:
@{UpnStartsWithAny = @("john", "mary")
Valor do parâmetro de exemplo a incluir pelo endereço SMTP E excluir pelo UPN:
@{SmtpAddressEqualsAny = @("alice@contoso.com","bob@contoso.com"); UpnNotEqualsAny = @("bob.old@contoso.com")}
Valor do parâmetro de exemplo a incluir pelo endereço SMTP OU incluir pelo UPN
@{SmtpAddressEqualsAny = @("alice@contoso.com","bob@contoso.com"); UpnEqualsAny = @("bob.old@contoso.com")}
Propriedades do parâmetro
| Tipo: | PswsHashtable |
| Valor padrão: | None |
| Dá suporte a curingas: | False |
| DontShow: | False |
Conjuntos de parâmetros
Default
| Cargo: | Named |
| Obrigatório: | False |
| Valor do pipeline: | False |
| Valor do pipeline pelo nome da propriedade: | False |
| Valor dos argumentos restantes: | False |
-Identity
Aplicável: Exchange Online, Conformidade & de Segurança
O parâmetro Identity especifica o âmbito adaptável. Pode utilizar qualquer valor que identifique exclusivamente o âmbito adaptável. Por exemplo:
- Nome
- DN (nome diferenciado)
- GUID
Propriedades do parâmetro
| Tipo: | ComplianceRuleIdParameter |
| Valor padrão: | None |
| Dá suporte a curingas: | False |
| DontShow: | False |
Conjuntos de parâmetros
(All)
| Cargo: | 0 |
| Obrigatório: | True |
| Valor do pipeline: | True |
| Valor do pipeline pelo nome da propriedade: | True |
| Valor dos argumentos restantes: | False |
-PageCookie
Aplicável: Exchange Online, Conformidade & de Segurança
O PageCookie especifica o marcador a partir do qual o cmdlet deve continuar a obter resultados.
Utilize o valor Marca d'água devolvido de um pedido anterior para o mesmo âmbito adaptável que o valor deste parâmetro. A marca d'água funciona como um token de continuação, permitindo que o cmdlet retome exatamente onde a página anterior terminou e obtenha a página seguinte dos membros.
Importante: editar ou fabricar manualmente um valor de Marca d'água pode causar páginas ignoradas, resultados duplicados ou pedidos inválidos. Utilize sempre o valor Marca d'água exatamente como devolvido pelo cmdlet .
Propriedades do parâmetro
| Tipo: | string |
| Valor padrão: | None |
| Dá suporte a curingas: | False |
| DontShow: | False |
Conjuntos de parâmetros
AdaptiveReportPagination
| Cargo: | Named |
| Obrigatório: | True |
| Valor do pipeline: | False |
| Valor do pipeline pelo nome da propriedade: | False |
| Valor dos argumentos restantes: | False |
-PageResultSize
Aplicável: Exchange Online, Conformidade & de Segurança
O parâmetro PageResultSize especifica o número máximo de membros a devolver para o pedido.
Para uma melhor fiabilidade e desempenho, obtenha membros em várias páginas mais pequenas até chegar à última página. Esta abordagem introduz pontos de interrupção naturais, reduz os tempos de espera e permite repetições totalmente integradas quando ocorrem problemas transitórios.
Importante: não recomendamos a utilização do valor PageResultSize Ilimitado para grandes âmbitos ajustáveis. A utilização de Ilimitados em âmbitos adaptativos grandes pode levar a pedidos de execução prolongada e falhas transitórias que não podem ser repetidas de forma eficiente.
Propriedades do parâmetro
| Tipo: | UnlimitedInt |
| Valor padrão: | 10000 |
| Dá suporte a curingas: | False |
| DontShow: | False |
Conjuntos de parâmetros
Default
| Cargo: | Named |
| Obrigatório: | False |
| Valor do pipeline: | False |
| Valor do pipeline pelo nome da propriedade: | False |
| Valor dos argumentos restantes: | False |
-State
Aplicável: Exchange Online, Conformidade & de Segurança
O parâmetro State especifica o estado dos membros do âmbito adaptável. Os valores válidos são:
- Adicionado: membros atuais do âmbito adaptável.
- Removido: antigos membros do âmbito adaptável.
Propriedades do parâmetro
| Tipo: | LocationState |
| Valor padrão: | None |
| Dá suporte a curingas: | False |
| DontShow: | False |
Conjuntos de parâmetros
Default
| Cargo: | Named |
| Obrigatório: | False |
| Valor do pipeline: | False |
| Valor do pipeline pelo nome da propriedade: | False |
| Valor dos argumentos restantes: | False |
CommonParameters
Este cmdlet suporta os parâmetros comuns: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction e -WarningVariable. Para obter mais informações, confira about_CommonParameters.