Поделиться через


Учебник. Создание отчетов об изоляции между клиентами (предварительная версия)

[Данная статья посвящена предварительному выпуску и может быть изменена.]

Этот учебник демонстрирует, как использовать API-интерфейс Power Platform (предварительная версия) для создания отчетов о изоляции между клиентами.

Из этого руководства вы узнаете, как:

  1. Проверка подлинности с помощью API-интерфейса Power Platform
  2. Создание отчета
  3. Список всех отчетов для клиента
  4. Извлечение одного отчета

Внимание

  • Это предварительная версия функции.
  • Предварительные версии функций не предназначены для использования в производственной среде, а их функциональность может быть ограничена. Они доступны перед официальным выпуском, чтобы клиенты могли досрочно получить доступ и предоставить отзывы.
  • Имя хоста и контракты данных могут измениться в течение периода предварительной версии функции.
  • Дополнительные сведения об изоляции клиентов см. в разделе Ограничения входящего и исходящего трафика между клиентами.

Шаг 1. Проверка подлинности с помощью API-интерфейса Power Platform

Используйте следующий сценарий PowerShell, чтобы проверять подлинность с помощью API-интерфейса Power Platform.

Заметка

Только пользователи с ролями "Глобальный администратор" и "Администратор Power Platform Entra ID имеют разрешение на запуск отчета о влиянии изоляции клиента.

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

Шаг 2. Создание отчета

Используйте следующий сценарий PowerShell, чтобы создать отчет.

Заметка

Вы можете создать только один отчет для каждого клиента за календарный день.

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
}

Ссылка на API-интерфейс Power Platform: Создание отчета о перекрестном соединении клиентов

Шаг 3. Список всех отчетов для клиента

Используйте следующий сценарий PowerShell, чтобы вывести список всех доступных отчетов для вашего клиента.

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
}

Ссылка на API-интерфейс Power Platform: Получение отчета о перекрестном соединении клиентов

Шаг 4. Извлечение одного отчета

Используйте следующий сценарий PowerShell, чтобы получить для вашего клиента единый отчет о подключениях, используемых внутри клиента.

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
}

Ссылка на API-интерфейс Power Platform: Список отчетов о перекрестном соединении клиентов

См. также

Ссылка на API-интерфейс Power Platform — отчеты о перекрестном соединении клиентов