Compartilhar via


Tutorial: Criar, atualizar e listar Configurações de Gerenciamento do Ambiente

Este tutorial demonstra como usar a API (versão preliminar) para criar, atualizar e listar configurações de geranciamento de ambiente. Power Platform

Neste tutorial, você aprenderá a:

  1. Autentique usando Power Platform API.
  2. Crie um novo valor de configuração.
  3. Liste todos os valores de configuração de geranciamento para o ambiente.
  4. Atualizar um valor de configuração.

Como exemplo desse cenário, um cliente pode querer ativar as restrições de IP da SAS (Assinatura de Acesso Compartilhado) de Armazenamento e o registro em log de chamadas SAS.

Etapa 1. Autenticar usando a API do Power Platform

Use o seguinte script do PowerShell para autenticar usando a API do Power Platform.

Import-Module "MSAL.PS"
$AuthResult = Get-MsalToken -ClientId '<client id of your Microsoft Entra ID application registration>' -Scope 'https://api.powerplatform.com/.default'
$Headers = @{Authorization = "Bearer $($AuthResult.AccessToken)"}

Etapa 2. Criar um novo valor de configuração

Use o script do PowerShell a seguir para criar um novo valor de configuração para restrições de IP de SAS (Assinatura de Acesso Compartilhado de Armazenamento) e a funcionalidade de log de auditoria relacionada. Essas duas configurações estão desativadas, mas as atualizaremos mais tarde para ativá-las.

#Set your environment ID
$environmentId = "ENV_ID_HERE"

# Please uncomment the values that need to be updated
$EnvironmentManagementSettings = @{
    "EnableIpBasedStorageAccessSignatureRule" = $false
    "LoggingEnabledForIpBasedStorageAccessSignature" = $false
}

$body = $json = $EnvironmentManagementSettings | ConvertTo-Json

try 
{
    # Create the new setting value
    Write-Host "Invoking Create Management Setting for Environment $environmentId with body $body"
    $apiResponse = Invoke-WebRequest -Method Post -Uri "https://api.powerplatform.com/environmentmanagement/environments/$environmentId/settings/?api-version=2022-03-01-preview" -Headers $Headers -Body $body

    Write-Host "Operation Status: $apiResponse.StatusDescription"
} 
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
}

Saiba mais sobre a Power Platform referência de API em Configurações de geranciamento de ambiente - Criar configurações de geranciamento de ambiente.

Etapa 3. Listar todas as configurações de geranciamento para o ambiente

Use o seguinte script PowerShell para listar todas as configurações criadas anteriormente para este ambiente.

#Set your environment ID
$environmentId = "ENV_ID_HERE"

try 
{
    # Create the new setting value
    Write-Host "Invoking List Management Settings for Environment $environmentId"
    $apiResponse = Invoke-WebRequest -Method Get -Uri "https://api.powerplatform.com/environmentmanagement/environments/$environmentId/settings/?api-version=2022-03-01-preview&$select=EnableIpBasedStorageAccessSignatureRule,LoggingEnabledForIpBasedStorageAccessSignature" -Headers $Headers

    Write-Host $apiResponse
} 
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
}

Saiba mais sobre a Power Platform referência de API em Configurações de geranciamento de ambiente - Listar configurações de geranciamento de ambiente.

Etapa 4. Atualizar um valor de configuração

Use o seguinte script PowerShell para atualizar um valor de configuração definido anteriormente. Neste etapa, você ativa o registro para Storage Shared Access Signature (SAS).

#Set your environment ID
$environmentId = "ENV_ID_HERE"

# Please uncomment the values that need to be updated
$EnvironmentManagementSettings = @{
    "LoggingEnabledForIpBasedStorageAccessSignature" = $true
}

$body = $json = $EnvironmentManagementSettings | ConvertTo-Json

try 
{
    # Updating the setting value
    Write-Host "Invoking Update Management Setting for Environment $environmentId with body $body"
    $apiResponse = Invoke-WebRequest -Method Patch -Uri "https://api.powerplatform.com/environmentmanagement/environments/$environmentId/settings/?api-version=2022-03-01-preview" -Headers $Headers -Body $body

    Write-Host "Operation Status: $apiResponse.StatusDescription"
} 
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
}

Saiba mais sobre a Power Platform referência de API em Configurações de geranciamento de ambiente - Atualizar configurações de geranciamento de ambiente.

Configurações de geranciamento de ambiente