Учебник. Создание отчетов об изоляции между клиентами (предварительная версия)
[Данная статья посвящена предварительному выпуску и может быть изменена.]
Этот учебник демонстрирует, как использовать API-интерфейс Power Platform (предварительная версия) для создания отчетов о изоляции между клиентами.
Из этого руководства вы узнаете, как:
- Аутентификация с использованием Power Platform API
- Создать отчет
- Список всех отчетов для арендатора
- Получить один отчет
Внимание
- Это предварительная версия функции.
- Предварительные версии функций не предназначены для использования в производственной среде, а их функциональность может быть ограничена. Они доступны перед официальным выпуском, чтобы клиенты могли досрочно получить доступ и предоставить отзывы.
- Имя хоста и контракты данных могут измениться в течение периода предварительной версии функции.
- Дополнительные сведения об изоляции клиентов см. в разделе Ограничения входящего и исходящего трафика между клиентами.
Шаг 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: Список отчетов о перекрестном соединении клиентов
См. также
Power Platform Справочник API - Отчеты о кросс-тенантных соединениях