Tutorial: Criar relatórios de isolamento entre inquilinos (pré-visualização)

[Este artigo inclui documentação pré-versão e está sujeito a alterações.]

Este tutorial demonstra como utilizar a API do Power Platform (pré-visualização) para criar relatórios de isolamento entre inquilinos.

Neste tutorial, saiba como:

  1. Autenticar com a API do Power Platform
  2. Criar um relatório
  3. Listar todos os relatórios para o inquilino
  4. Obter um único relatório

Importante

  • Esta é uma caraterística de pré-visualização.
  • As funcionalidades de pré-visualização não se destinam à produção e poderão ter funcionalidades restritas. Estas caraterísticas estão disponíveis antes do lançamento oficial, para que os clientes possam ter acesso antecipadamente e enviar comentários.
  • O nome do anfitrião e os contratos de dados poderão ser alterados durante este período de pré-visualização de caraterísticas.
  • Para obter mais detalhes sobre o isolamento de inquilinos, consulte Restrições de entrada e de saída entre inquilinos.

Passo 1. Autenticar com a API do Power Platform

Utilize o seguinte script do PowerShell para autenticar com a API do Power Platform.

Nota

Apenas os utilizadores com funções de Administrador global e administrador do Entra ID do Power Platform têm permissão para executar o relatório de impacto de isolamento de inquilinos.

Import-Module "MSAL.PS"
$AuthResult = Get-MsalToken -ClientId '49676daf-ff23-4aac-adcc-55472d4e2ce0' -Scope 'https://api.powerplatform.com/.default'
$Headers = @{Authorization = "Bearer $($AuthResult.AccessToken)"}

Passo 2. Criar um relatório

Utilize o seguinte script do PowerShell para criar o relatório.

Nota

Só pode criar um relatório por inquilino por dia de calendário.

try 
{
    # Create a cross tenant connections report
    $tenantReportCreateResponse = Invoke-RestMethod -Method Post -Uri "https://api.powerplatform.com/governance/crossTenantConnectionReports?api-version=2022-03-01-preview" -Headers $Headers -Body ""
    $reportId = $tenantReportCreateResponse.reportId
    $reportStatus = $tenantReportCreateResponse.status

    Write-Host "Cross tenant connections report created with ID=$reportId and status=$reportStatus" 

} catch {
    # Dig into the exception to get the Response details.
    Write-Host "Response CorrelationId:" $_.Exception.Response.Headers["x-ms-correlation-id"]
    Write-Host "StatusCode:" $_.Exception.Response.StatusCode.value__ 
    Write-Host "StatusDescription:" $_.Exception.Response.StatusDescription
    $result = $_.Exception.Response.GetResponseStream()
        $reader = New-Object System.IO.StreamReader($result)
        $reader.BaseStream.Position = 0
        $reader.DiscardBufferedData()
        $responseBody = $reader.ReadToEnd();

        Write-Host $responseBody
}

Referência da API do Power Platform: Criar Relatório de Ligação Entre Inquilinos

Passo 3. Listar todos os relatórios para o inquilino

Utilize o seguinte script do PowerShell para listar todos os relatórios disponíveis para o inquilino.

try 
{
     # Get all available cross tenant connections reports for a tenant
    $tenantListReportResponse = Invoke-RestMethod -Method Get -Uri "https://api.powerplatform.com/governance/crossTenantConnectionReports?api-version=2022-03-01-preview" -Headers $Headers
    $report = $tenantListReportResponse | ConvertTo-Json -Depth 3 
    Write-Host $report 

} catch {
    # Dig into the exception to get the Response details.
    Write-Host "Response CorrelationId:" $_.Exception.Response.Headers["x-ms-correlation-id"]
    Write-Host "StatusCode:" $_.Exception.Response.StatusCode.value__ 
    Write-Host "StatusDescription:" $_.Exception.Response.StatusDescription
    $result = $_.Exception.Response.GetResponseStream()
        $reader = New-Object System.IO.StreamReader($result)
        $reader.BaseStream.Position = 0
        $reader.DiscardBufferedData()
        $responseBody = $reader.ReadToEnd();

        Write-Host $responseBody
}

Referência da API do Power Platform: Obter o Relatório de Ligação Entre Inquilinos

Passo 4. Obter um único relatório

Utilize o seguinte script do PowerShell para obter um único relatório para o inquilino sobre ligações utilizadas no inquilino.

try 
{
   # Get one cross tenant connections report for a tenant
    $tenantListReportResponse = Invoke-RestMethod -Method Get -Uri "https://api.powerplatform.com/governance/crossTenantConnectionReports/{$reportId}?api-version=2022-03-01-preview" -Headers $Headers
    $report = $tenantListReportResponse | ConvertTo-Json -Depth 2 
    Write-Host $report
    Write-Host "" 

} catch {
    # Go through the exception to get the Response details.
    Write-Host "Response CorrelationId:" $_.Exception.Response.Headers["x-ms-correlation-id"]
    Write-Host "StatusCode:" $_.Exception.Response.StatusCode.value__ 
    Write-Host "StatusDescription:" $_.Exception.Response.StatusDescription
    $result = $_.Exception.Response.GetResponseStream()
        $reader = New-Object System.IO.StreamReader($result)
        $reader.BaseStream.Position = 0
        $reader.DiscardBufferedData()
        $responseBody = $reader.ReadToEnd();

        Write-Host $responseBody
}

Referência da API do Power Platform: Listar Relatórios de Ligação Entre Inquilinos

Consultar também

Referência da API do Power Platform — Relatórios de Ligação Entre Inquilinos