Dela via


Filtrering av anslutningsprogrammets slutpunkter (förhandsversion)

[Den här artikeln är en förhandsversion av dokumentationen och kan komma att ändras.]

Med filtrering av anslutningsprogrammets slutpunkter kan administratörer styra vilka specifika slutpunkter som utvecklare kan ansluta till när de skapar appar, flöden eller chattrobotar. Den är konfigurerad inom en policy för att förhindra dataförlust (DLP) och den är exklusivt tillgänglig för sex anslutningsprogram:

  • HTTP
  • HTTP med Microsoft Entra ID (AD)
  • HTTP Webhook
  • SQL Server (med SQL Server Connector för att få åtkomst till Azure Synapse informationslager)
  • Azure Blob Storage
  • SMTP

När en utvecklare försöker ansluta sin app, sitt flöde eller sin chattrobot till en blockerad slutpunkt, kommer de att få ett DLP-felmeddelande.

Varning

Filtreringsregler för slutpunkt tillämpas inte miljövariabler, anpassade indata eller någon slutpunkt som har skapats dynamiskt vid körtid. Endast statiska slutpunkter utvärderas i app-, flödes- eller chattrobotdesigner. Du hittar mer information i Kända begränsningar.

Viktigt!

Förhandsversionsfunktioner ska inte användas i produktion och funktionerna kan vara begränsade. Funktionerna är tillgängliga före den officiella publiceringen så att kunderna kan få tillgång tidigare och ge oss feedback.

Lägg till filtreringsregler för slutpunkt dina DLP-policyer

I kolumnen Konfigurerbar slutpunkt på sidan Fördefinierade anslutningsprogram i Datapolicyer anger om slutpunktsfiltreringsfunktionen stöds för kontakten.

 slutpunkt konfigurerbar på sidan Fördefinierade anslutningsprogram.

Om värdet för kolumnen slutpunkt konfigurerbar är Ja, kan du använda den här funktionen genom att högerklicka och sedan välja Konfigurera anslutningsprogram>Anslutningsprogrammets slutpunkter.

Konfigurera anslutningsprogram > Anslutningsprogrammets slutpunkter.

Då öppnas en sidpanel där du kan ange en ordnad lista med URL-mönster för Tillåt eller Neka. Den sista raden i listan kommer alltid att vara en regel för jokertecken (*), som gäller för alla slutpunkter i den kopplingen. Som standard har * mönstren angetts som Tillåt för nya DLP-policyer, men du kan tagga det som Tillåt eller Neka.

Ange en ordnad lista med URL-mönster för Tillåt och Neka för anpassade kopplingar.

Lägg till nya regler

Du kan lägga till nya regler genom att välja Lägg till slutpunkt. Nya regler läggs till i slutet av mönsterlistan som den andra till den sista regeln. Detta beror på att * alltid är den sista posten i listan. Du kan dock uppdatera ordning på mönstren med hjälp av listrutan Order eller välja Flytta upp eller Flytta ned.

Välj Lägg till slutpunkt lägga till nya regler.

När du har lagt till ett mönster kan du redigera eller ta bort de här mönstren genom att markera en viss rad och sedan välja Ta bort.

Ta bort ett mönster.

När du har sparat dina filtreringsregler för slutpunkt för anslutningsprogram och DLP-policyn som de definieras i, tillämpas de omedelbart på de målmiljöer som är målinriktade. Nedan visas ett exempel där en tillverkare har försökt ansluta sitt molnflöde till en HTTP-slutpunkt som inte är tillåten.

DLP-fel på grund av filtreringsregler för slutpunkt.

Kända begränsningar

  • Filtreringsregler för slutpunkt tillämpas inte miljövariabler, anpassade indata och dynamiskt bundna slutpunkter under körtid. Endast statiska slutpunkter som är kända och valda när du skapar ett program, ett flöde eller en chattschema under designtiden tillämpas. Detta innebär att filtreringsregler för anslutningsslutpunkt för SQL Server och Azure Blob Storage tillämpas inte om anslutningarna autentiseras med Microsoft Entra ID. I de två skärmbilderna nedan har en tillverkare skapat ett molnflöde som definierar SQL Server och databasen i variabler, och använder sedan dessa variabler som indata till anslutningsdefinitionen. Därför utvärderas inte filtreringsregler för slutpunkt och molnflödet kan köras utan problem.

    Molnflödet använder variabler för att ansluta till SQL.Molnflödet körs

  • Vissa Power Apps publicerad före 1 oktober 2020 måste återpubliceras för att reglerna för DLP-anslutningsåtgärder och filtreringsregler för slutpunkt ska kunna tillämpas. Följande skript gör det möjligt för administratörer och tillverkare att identifiera program som måste publiceras på nytt för att respektera dessa nya granulära DLP-kontrollregler:

    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 
        }
    }
    

Slutpunkt för indataformat och exempel

Varje anslutning skiljer sig från vad en slutpunkt innebär. Vissa slutpunkter kan definieras i flera format. Slutpunkter måste därför anges i alla möjliga format för att hindra beslutsfattare från att använda dem när de skapar program och flöden. Administratörer kan antingen ange hela slutpunktens namn eller använda mönster som matchar med jokertecken (*) när de skapar en filtreringsregel för slutpunkt. De här reglerna anges och presenteras i en ordnad lista av slutpunktmönster, vilket innebär att de utvärderas i stigande ordning efter tal. Observera att den sista regeln för en viss anslutning alltid är * Tillåt eller * Avvisa. Tillåt är standardvärdet, som kan ändras till Avvisa.

I följande vägledning beskrivs hur du anger anslutningsslutpunkter när du skapar regler för att tillåta eller neka dem.

SQL-server

SQL Server-anslutningsslutpunkter måste visas i <Server_name, database_name>-format. Saker att tänka på:

  • Servernamnet kan anges i olika format av tillverkare. För att adressera en slutpunkt måste den därför anges i alla möjliga format. Till exempel kan lokal vara i <machine_name\named_instance, database_name> eller <IP address, custom port, database_name> format. I det här fallet måste du använda tillåta eller blockera regler i båda formaten för en slutpunkt. Till exempel:

    • BlockeraWS12875676\Servername1,MktingDB
    • Blockera11.22.33.444,1401,MktingDB
  • Det finns ingen speciallogik för att hantera relativa adresser, till exempel localhost. Om du blockerar *localhost* blockeras därför skaparna från att använda slutpunkter genom att använda localhost som en del av SQL Server-slutpunkt. Däremot stoppas de inte från att komma åt slutpunkt genom att använda den absoluta adressen, såvida inte den absoluta adressen också har blockerats av administratören.

Följande är exempel:

  • Tillåt endast Azure SQL Server-instanser:

    1. Tillåt *.database.windows.net*
    2. Neka *
  • Tillåt bara ett specifikt IP -område (observera att de IP-adresser som inte är tillåtna fortfarande kan anges av tillverkaren <machine_name\named_instance>-format.)

    1. Tillåt 11.22.33*
    2. Neka *

Dataverse

Dataverse-slutpunkter representeras av organisations-ID t.ex. 7b97cd5c-ce38-4930-9497-eec2a95bf5f7. Observera att endast den vanliga Dataverse anslutningsprogram för närvarande finns för filtrering av slutpunkt. Dataverse dynamiska och Dataverse aktuella anslutningar ligger utanför ramen. Den lokala instansen av Dataverse (kallas även aktuell miljö) kan aldrig blockeras för användning i en miljö. Det innebär att beslutsfattare alltid har tillgång till den aktuella miljön i Dataverse inom en viss miljö.

Därför en regel som säger följande:

  1. Tillåt 7b97cd5c-ce38-4930-9497-eec2a95bf5f7
  2. Neka *

Betyder egentligen:

  1. Tillåt Dataverse current environment
  2. Tillåt 7b97cd5c-ce38-4930-9497-eec2a95bf5f7
  3. Neka *

Tillåt Dataverse current environment är alltid den första regeln i slutpunkt för en viss Dataverse-miljö.

Azure Blob Storage

Azure blobblagringsslutpunkter representeras av namnet på Azure-lagringskontot.

SMTP

SMTP-slutpunkter representeras i <SMTP server address, port number>-format.

Följande är ett exempelscenario:

  1. Neka smtp.gmail.com,587
  2. Tillåt *

HTTP med Microsoft Entra ID, HTTP Webhook och HTTP-anslutningar

Slutpunkterna för alla HTTP-anslutningar representeras av ett URL-mönster. Åtgärden Hämta webbresurs för HTTP med Microsoft Entra anslutningsprogram är inte tillgänglig.

Följande är ett exempelscenario:

Tillåt endast åtkomst till sidan för Azure-prenumerationer i https://management.azure.com/.

  1. Tillåt https://management.azure.com/subscriptions*
  2. Neka https://management.azure.com/*
  3. Neka *

PowerShell-stöd slutpunkt filtrering

Konfigurera filtreringsregler för slutpunkt för en policy

Objektet som innehåller filtreringsregler för slutpunkt för en policy kallas nedan för anslutningsprogramkonfigurationer.

Konfigurationsobjektet för anslutningsprogram har följande struktur:

$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
        }
      ) 
    }
  ) 
}

Anteckningar

  • Den sista regeln för varje kontakt bör alltid tillämpas på URL * för att säkerställa att alla webbadresser omfattas av reglerna.
  • Orderegenskapen för reglerna för varje koppling ska fyllas i med tal 1 till N, där N är antalet regler för den kopplingen.

Hämta befintliga anslutningskonfigurationer för en DLP-policy

Get-PowerAppDlpPolicyConnectorConfigurations 

Skapa konfigurationer för anslutningsprogram för en DLP-policy

New-PowerAppDlpPolicyConnectorConfigurations

Uppdatera konfigurationer för anslutningsprogram för en DLP-policy

Set-PowerAppDlpPolicyConnectorConfigurations

Exempel

Mål:

För SQL Server-anslutning:

  • Neka databas "testdatabase" för servern "myservername.database.windows.net"
  • Tillåt andra databaser för servern "myservername.database.windows.net"
  • Neka alla andra servrar

För SMTP-anslutningsprogram:

  • Tillåt Gmail (serveradress: smtp.gmail.com, port: 587)
  • Neka alla andra adresser

För HTTP-anslutningsprogram:

  • Tillåt slutpunkter https://mywebsite.com/allowedPath1 och https://mywebsite.com/allowedPath2
  • Neka alla andra URL

Kommentar

I följande cmdlet refererar PolicyName till det unika GUID. Du kan hämta DLP GUID genom att köra cmdleten 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