Sdílet prostřednictvím


Filtrování koncového bodu konektoru (Preview)

[Tento článek představuje předběžnou dokumentaci a může se změnit.]

Filtrování konektoru koncového bodu umožňuje správcům řídit, ke kterým konkrétním koncovým bodům se mohou tvůrci připojit při vytváření aplikací, toků nebo chatbotů. Je nakonfigurován v rámci zásad prevence ztráty dat (DLP) a je k dispozici výhradně pro šest konektorů:

  • HTTP
  • HTTP s Microsoft Entra ID (AD)
  • HTTP webhook
  • SQL Server (zahrnuje použití konektoru SQL Serveru pro přístup k datovému skladu Azure Synapse)
  • Azure Blob Storage
  • SMTP

Když se tvůrce pokusí připojit svou aplikaci, tok nebo chatbota k zablokovanému koncovému bodu, zobrazí se mu chybová zpráva DLP.

Upozorňující

Pravidla filtrování koncového bodu nejsou vynucena u proměnných prostředí, vlastních vstupů nebo koncového bodu, který je dynamicky vytvořen za běhu programu. V návrhářích aplikací, toků nebo chatbotů jsou hodnoceny pouze statické koncové body. Další informace najdete v tématu Známá omezení.

Důležité

Funkce Preview nejsou určené pro normální používání a mohou mít omezené fungování. Jsou to funkce, které jsou poskytnuté před svým oficiálním vydáním, aby si je zákazníci mohli co nejdříve vyzkoušet a mohli nám napsat své názory.

Přidání pravidel filtrování koncového bodu do zásad DLP

Sloupec Konfigurovatelný koncový bod na stránce Hotové konektory v  zásadách pro data označuje, zda je pro konektor podporována možnost filtrování koncových bodů.

Konfigurovatelný koncový bod na stránce Hotové konektory.

Pokud je hodnota sloupce Konfigurovatelný koncový bod nastavena na Ano, tuto možnost můžete použít kliknutím pravým tlačítkem a následným výběrem možnosti Konfigurovat konektor>Koncové body konektoru.

Konfigurovat konektor > Koncové body konektoru.

Tím se otevře postranní panel, kde můžete zadat seřazený seznam vzorů Povolit nebo Zakázat adresy URL. Pravidlo pro zástupný znak (*) bude vždy posledním řádkem v seznamu, který platí pro všechny koncové body v daném konektoru. Ve výchozím nastavení je vzor * nastaven jako Povolit pro nové zásady DLP, ale můžete jej označit jako Povolit nebo Zamítnout.

Zadejte seřazený seznam vzorů adres URL Povolit a Zamítnout pro vlastní konektory.

Přidání nových pravidel

Nová pravidla můžete přidat výběrem možnosti Přidat koncový bod. Nová pravidla jsou přidána na konec seznamu vzorů jako předposlední pravidlo. To je proto, že * bude vždy poslední záznam v seznamu. Pořadí vzorů však můžete aktualizovat pomocí rozevíracího seznamu Pořadí nebo výběrem možnosti Přesunout nahoru nebo Přesunout dolů.

Chcete-li přidat nová pravidla, vyberte možnost Přidat koncový bod.

Po přidání vzoru můžete tyto vzory upravit nebo odstranit výběrem konkrétního řádku a pak výběrem možnosti Odstranit.

Odstranit vzor.

Po uložení pravidel filtrování koncového bodu konektoru a zásad ochrany před únikem informací (DLP), ve kterých jsou definována, se tato pravidla okamžitě uplatňují v cílových prostředích. Níže je příklad, kdy se tvůrce pokusil připojit svůj cloudový tok ke koncovému bodu HTTP, který není povolen.

Chyba DLP kvůli pravidlům filtrování koncového bodu.

Známá omezení

  • Pravidla filtrování koncového bodu nejsou vynucena u proměnných prostředí, vlastních vstupů a dynamicky vázaných koncových bodů za běhu programu. Vynuceny jsou pouze statické koncové body, které jsou známé a vybrané při vytváření aplikace, toku nebo chatbota v době návrhu. To znamená, že pravidla filtrování koncového bodu konektoru pro SQL Server a Azure Blob Storage nejsou vynucena, pokud jsou připojení ověřena prostřednictvím Microsoft Entra ID. Na dvou níže uvedených snímcích obrazovky tvůrce vytvořil cloudový tok, který definuje SQL Server a databázi uvnitř proměnných a poté tyto proměnné používá jako vstup pro definici připojení. Proto se pravidla filtrování koncového bodu nevyhodnocují a cloudový tok se může úspěšně spustit.

    Cloudový tok používá proměnné k připojení k SQL. Cloudový tok se úspěšně spustí.

  • Některé aplikace Power Apps naposledy publikované před 1. říjnem 2020 je třeba znovu publikovat, aby byla vynucena pravidla akce a pravidla koncového bodu konektoru. Následující skript umožňuje správcům a tvůrcům identifikovat aplikace, které je nutné znovu publikovat, aby byla dodržena tato nová pravidla podrobné kontroly DLP:

    Add-PowerAppsAccount
    
    $GranularDLPDate = Get-Date -Date "2020-10-01 00:00:00Z"
    
    ForEach ($app in Get-AdminPowerApp){
    
        $versionAsDate = [datetime]::Parse($app.LastModifiedTime)
    
        $olderApp = $versionAsDate -lt $GranularDLPDate
    
        $wasBackfilled = $app.Internal.properties.executionRestrictions -ne $null -and $app.Internal.properties.executionRestrictions.dataLossPreventionEvaluationResult -ne $null -and ![string]::IsNullOrEmpty($app.Internal.properties.executionRestrictions.dataLossPreventionEvaluationResult.lastAdvancedBackfillDate) 
    
        If($($olderApp -and !$wasBackfilled)){
            Write-Host "App must be republished to be Granular DLP compliant: " $app.AppName " "  $app.Internal.properties.displayName " " $app.Internal.properties.owner.email
        } 
        Else{ 
            Write-Host "App is already Granular DLP compliant: " $app.AppName 
        }
    }
    

Vstupní formáty a příklady koncového bodu

Každý konektor má jinou definici toho, co koncový bod znamená. Dále lze některé koncové body definovat ve více formátech. Koncové body proto musí být zadány ve všech možných formátech, aby bylo možné znemožnit tvůrcům jejich používání při vytváření aplikací a toků. Správci mohou buď zadat úplný název koncového bodu, nebo použít odpovídající vzor se zástupným znakem (*) při vytváření pravidla filtrování koncových bodů. Tato pravidla jsou zadána a uvedena v seřazeném seznamu vzorů koncového bodu, což znamená, že budou vyhodnoceny vzestupně podle čísla. Všimněte si, že poslední pravidlo pro daný konektor je vždy * Povolit nebo * Zakázat. Povolit je výchozí nastavení, které lze změnit na Zakázat.

Následující pokyny popisují, jak zadat koncové body konektoru při vytváření pravidel, kterými je povolíte nebo zakážete.

SQL Server

Koncové body připojení k serveru SQL musí být uvedeny ve formátu <Server_name, database_name>. Několik věcí, které je potřeba mít na paměti:

  • Název serveru mohou tvůrci zadávat v různých formátech. Aby bylo možné koncový bod skutečně oslovit, musí být zadán ve všech možných formátech. Například mohou být místní instance ve formátu <machine_name\named_instance, database_name> nebo <IP address, custom port, database_name>. V takovém případě budete muset na koncový bod použít pravidla povolení nebo blokování v obou formátech. Příklad:

    • Blokovat WS12875676\Servername1,MktingDB
    • Blokovat 11.22.33.444,1401,MktingDB
  • Neexistuje žádná speciální logika pro zpracování relativních adres, jako je localhost. Pokud tedy zablokujete *localhost*, zabráníte tvůrcům v používání jakýchkoli koncových bodů pomocí localhost coby součásti koncového bodu serveru SQL. Nebude jim to však bránit v přístupu ke koncovému bodu pomocí absolutní adresy, pokud správce absolutní adresu také nezablokoval.

Následují příklady:

  • Povolit pouze instance serveru Azure SQL:

    1. Povolit *.database.windows.net*
    2. Zamítnout *
  • Povolit pouze určitý rozsah IP adres (IP adresy, které nejsou povoleny, může tvůrce přesto zadávat ve formátu <machine_name\named_instance>.):

    1. Povolit 11.22.33*
    2. Zamítnout *

Dataverse

Dataverse koncové body jsou reprezentovány ID organizace, jako je, 00aa00aa-bb11-cc22-dd33-44ee44ee44ee. Pamatujte, že pouze běžný konektor Dataverse je v současné době v rozsahu pro filtrování koncových bodů. Dataverse dynamics a aktuální konektory Dataverse v rozsahu nejsou. Místní instanci Dataverse (také známou jako aktuální prostředí) nelze nikdy blokovat pro použití v prostředí. To znamená, že v jakémkoli daném prostředí mají tvůrci vždy přístup k aktuálnímu prostředí Dataverse.

Proto pravidlo, které říká následující:

  1. Povolit 00aa00aa-bb11-cc22-dd33-44ee44ee44ee
  2. Zamítnout *

Ve skutečnosti znamená:

  1. Povolit Dataverse current environment
  2. Povolit 00aa00aa-bb11-cc22-dd33-44ee44ee44ee
  3. Zamítnout *

PovolitDataverse current environment je vždy implicitně první pravidlo v seznamu filtrování koncových bodů Dataverse pro jakékoli dané prostředí.

Azure Blob Storage

Koncové body Azure Blob Storage jsou reprezentovány názvem účtu Azure Storage.

SMTP

Koncové body SMTP jsou uvedeny ve formátu <SMTP server address, port number>.

Ukázkový scénář:

  1. Zamítnout smtp.gmail.com,587
  2. Povolit *

HTTP s Microsoft Entra ID, HTTP Webhook a HTTP konektory

Koncové body pro všechny konektory HTTP jsou reprezentovány vzorem adresy URL. Akce Získat webový prostředek protokolu HTTP s konektorem Microsoft Entra je mimo rozsah.

Ukázkový scénář:

Povolte přístup pouze na stránku předplatného Azure v rámci https://management.azure.com/.

  1. Povolit https://management.azure.com/subscriptions*
  2. Zamítnout https://management.azure.com/*
  3. Zamítnout *

Podpora prostředí PowerShell pro filtrování koncových bodů

Konfigurace pravidel filtrování koncových bodů pro zásady

Objekt, který obsahuje pravidla filtrování koncových bodů pro zásady, je níže označován jako konfigurace konektoru.

Objekt konfigurace konektoru má následující strukturu:

$ConnectorConfigurations = @{ 
  connectorActionConfigurations = @() # used for connector action rules
  endpointConfigurations = @( # array – one entry per 
    @{  
      connectorId # string
      endpointRules = @( # array – one entry per rule 
        @{ 
          order # number 
          endpoint # string
          behavior # supported values: Allow/Deny
        }
      ) 
    }
  ) 
}

Poznámky

  • Poslední pravidlo pro každý konektor by vždy mělo být použito na URL *, aby se zajistilo, že pravidla se vztahují na všechny adresy URL.
  • Vlastnost pořadí pravidel pro každý konektor musí být vyplněna čísly 1 až N, kde N je počet pravidel pro tento konektor.

Načtěte existující konfigurace konektoru pro zásadu DLP

Get-PowerAppDlpPolicyConnectorConfigurations 

Vytvořte konfigurace konektoru pro zásadu DLP

New-PowerAppDlpPolicyConnectorConfigurations

Aktualizujte konfigurace konektoru pro zásadu DLP

Set-PowerAppDlpPolicyConnectorConfigurations

Příklad

Cíl:

Pro konektor serveru SQL:

  • Zamítnout databázi „testdatabase“ serveru „myservername.database.windows.net“
  • Povolit všechny ostatní databáze serveru „myservername.database.windows.net“
  • Zamítnout všechny ostatní servery

Pro konektor SMTP:

  • Povolit Gmail (adresa serveru: smtp.gmail.com, port: 587)
  • Zamítnout všechny ostatní adresy

Pro konektor HTTP:

  • Povolit koncové body https://mywebsite.com/allowedPath1 a https://mywebsite.com/allowedPath2
  • Zamítnout všechny ostatní adresy URL

Poznámka:

V následujících rutinách označuje PolicyName jedinečný identifikátor GUID. DLP GUID můžete získat spuštěním rutiny Get-DlpPolicy.

$ConnectorConfigurations = @{ 
  endpointConfigurations = @(
    @{  
      connectorId = "/providers/Microsoft.PowerApps/apis/shared_sql" 
      endpointRules = @(
        @{ 
          order = 1 
          endpoint = "myservername.database.windows.net,testdatabase" 
          behavior = "Deny"
        }, 
        @{ 
          order = 2 
          endpoint = "myservername.database.windows.net,*" 
          behavior = "Allow"
        }, 
        @{ 
          order = 3
          endpoint = "*" 
          behavior = "Deny"
        } 
      ) 
    }, 
    @{  
      connectorId = "/providers/Microsoft.PowerApps/apis/shared_smtp" 
      endpointRules = @(
        @{ 
          order = 1 
          endpoint = "smtp.gmail.com,587" 
          behavior = "Allow"
        }, 
        @{ 
          order = 2 
          endpoint = "*" 
          behavior = "Deny"
        } 
      ) 
    },
    @{  
      connectorId = "http" 
      endpointRules = @(
        @{ 
          order = 1 
          endpoint = "https://mywebsite.com/allowedPath1" 
          behavior = "Allow"
        }, 
        @{ 
          order = 2
          endpoint = "https://mywebsite.com/allowedPath2" 
          behavior = "Allow"
        }, 
        @{ 
          order = 3
          endpoint = "*" 
          behavior = "Deny"
        } 
      ) 
    } 
  ) 
}
New-PowerAppDlpPolicyConnectorConfigurations -TenantId $TenantId -PolicyName $PolicyName -NewDlpPolicyConnectorConfigurations $ConnectorConfigurations