Eindpunten van connectors filteren (preview)
[Dit artikel maakt deel uit van de voorlopige documentatie en kan nog veranderen.]
Met filters voor eindpunten van connectors kunnen beheerders bepalen met welke specifieke eindpunten makers verbinding kunnen maken bij het bouwen van apps, stromen of chatbots. Dit wordt geconfigureerd binnen een DLP-beleid (Data Loss Prevention) en is exclusief beschikbaar voor zes connectors:
- HTTP
- HTTP met Microsoft Entra ID (AD)
- HTTP-webhook
- SQL Server (inclusief het gebruik van SQL Server Connector voor toegang tot Azure Synapse-datawarehouse)
- Azure Blob Storage
- SMTP
Wanneer een maker een app, stroom of chatbot probeert te verbinden met een geblokkeerde eindpunt, wordt een DLP-foutbericht weergegeven.
Waarschuwing
Regels voor eindpuntfiltering worden tijdens runtime niet afgedwongen bij omgevingsvariabelen, aangepaste invoer of dynamisch gemaakte eindpunten. Alleen statische eindpunten worden geëvalueerd in de app-, stroom- of chatbotontwerpers. Zie Bekende beperkingen voor meer informatie.
Belangrijk
Preview-functies zijn niet bedoeld voor productiegebruik en bieden mogelijk beperkte functionaliteit. Deze functies zijn beschikbaar vóór een officiële release zodat klanten vroeg toegang kunnen krijgen en feedback kunnen geven.
Regels voor het filteren van eindpunten toevoegen aan uw DLP-beleid
De kolom Eindpunt configureerbaar op de pagina Vooraf gebouwde connectors in Gegevensbeleid geeft aan of eindpuntfiltering wordt ondersteund voor de connector.
Als de waarde van de kolom Eindpunt is configureerbaar is ingesteld op Ja, kunt u deze mogelijkheid gebruiken door met de rechtermuisknop te klikken en vervolgens Connector configureren>Connector-eindpunten te selecteren.
Hierdoor wordt een zijpaneel geopend waar u een geordende lijst met de URL-patronen Toestaan of Weigeren kunt specificeren. De regel voor het jokerteken is altijd de laatste rij in de lijst (*
) en is van toepassing op alle eindpunten in die connector. Standaard is het *
-patroon ingesteld als Toestaan voor nieuw DLP-beleid, maar u kunt dit taggen als Toestaan of Weigeren.
Nieuwe regels toevoegen
U kunt nieuwe regels toevoegen door Eindpunt toevoegen te selecteren. Nieuwe regels worden aan het einde van de lijst met patronen toegevoegd (als de op één na laatste regel). *
is namelijk altijd het laatste item in de lijst. U kunt de volgorde van de patronen echter ook bijwerken via de vervolgkeuzelijst Volgorde of door Omhoog verplaatsen of Omlaag verplaatsen te selecteren.
Nadat u patronen hebt toegevoegd, kunt u de patronen bewerken of verwijderen door een specifieke rij te selecteren en vervolgens Verwijderen te selecteren.
Na het opslaan van uw regels voor het filteren van connectoreindpunten en het DLP-beleid waarin deze zijn gedefinieerd, worden ze onmiddellijk afgedwongen voor de beoogde omgevingen. Hieronder ziet u een voorbeeld waarbij een maker probeerde zijn cloudstroom te verbinden met een HTTP-eindpunt die niet is toegestaan.
Bekende beperkingen
Regels voor eindpuntfiltering worden tijdens runtime niet afgedwongen voor omgevingsvariabelen, aangepaste invoer en dynamisch gebonden eindpunten. Alleen statische eindpunten die bekend en geselecteerd zijn tijdens de bouw van een app, stroom of chatbot in de ontwerptijd worden afgedwongen. Dit houdt in dat de regels voor het filteren van connectoreindpunten voor SQL Server en Azure Blob Storage niet worden afgedwongen als de verbindingen worden geverifieerd met Microsoft Entra ID. In de twee schermopnamen hieronder heeft een maker een cloudflow gebouwd die de SQL-server en database in variabelen definieert en zijn die variabelen vervolgens gebruikt als invoer voor de verbindingsdefinitie. Daarom worden de filterregels voor eindpunten niet geëvalueerd en kan de cloudstroom worden uitgevoerd.
Sommige Power Apps die voor het laatst vóór 1 oktober 2020 zijn gepubliceerd, moeten opnieuw worden gepubliceerd zodat DLP-actieregels voor connectors en eindpuntregels kunnen worden afgedwongen. Met het volgende script kunnen beheerders en makers apps identificeren die opnieuw moeten worden gepubliceerd om deze nieuwe gedetailleerde DLP-controleregels te respecteren:
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 } }
Invoerformaten en voorbeelden van eindpunten
Elke connector heeft een ander idee van wat een eindpunt inhoudt. Verder kunnen sommige eindpunten in meerdere indelingen worden gedefinieerd. Eindpunten moeten daarom in alle mogelijke indelingen worden ingevoerd om te voorkomen dat makers ze gebruiken tijdens het maken van apps en stromen. Beheerders kunnen ofwel de volledige naam van het eindpunt invoeren of patroonovereenkomsten gebruiken met het jokerteken (*
) bij het maken van een filterregel voor een eindpunt. Deze regels worden ingevoerd en weergegeven in een geordende lijst met eindpuntpatronen, wat betekent dat ze in oplopende volgorde op nummer worden geëvalueerd. De laatste regel voor een bepaalde connector is altijd *
Toestaan*
of Weigeren. Toestaan is de standaardinstelling, die kan worden gewijzigd in Weigeren.
In de volgende richtlijnen wordt beschreven hoe u connectoreindpunten invoert terwijl u regels maakt om deze toe te staan of te weigeren.
SQL Server
SQL Server-connectoreindpunten moeten worden vermeld in de indeling <Server_name, database_name>
. Zaken om rekening mee te houden:
De servernaam kan door makers in verschillende indelingen worden ingevoerd. Daarom moet een eindpunt in alle mogelijke indelingen worden ingevoerd om een eindpunt optimaal te gebruiken. Exemplaren on-premises kunnen bijvoorbeeld de indeling
<machine_name\named_instance, database_name>
of<IP address, custom port, database_name>
hebben. In dit geval moet u regels voor toestaan of blokkeren in beide indelingen voor een eindpunt toepassen. Bijvoorbeeld:- Blokkeren
WS12875676\Servername1,MktingDB
- Blokkeren
11.22.33.444,1401,MktingDB
- Blokkeren
Er is geen speciale logica om relatieve adressen zoals
localhost
te verwerken. Als u*localhost*
blokkeert, voorkomt u dus dat makers eindpunten gebruiken doorlocalhost
te gebruiken als deel van het SQL Server-eindpunt. Het weerhoudt hen er echter niet van om toegang te krijgen tot het eindpunt door het absolute adres te gebruiken, tenzij het absolute adres ook is geblokkeerd door de beheerder.
Hier volgen enkele voorbeelden:
Alleen Azure SQL Server-exemplaren toestaan:
*.database.windows.net*
toestaan*
weigeren
Alleen een specifiek IP-bereik toestaan (de IP-adressen die niet zijn toegestaan, kunnen nog steeds door de maker worden ingevoerd in de indeling
<machine_name\named_instance>
.)11.22.33*
toestaan*
weigeren
Dataverse
Dataverse-eindpunten worden vertegenwoordigd door de organisatie-id, zoals 7b97cd5c-ce38-4930-9497-eec2a95bf5f7. Alleen de reguliere Dataverse-connector komen in aanmerking voor eindpuntfiltering. Connectors van Dataverse dynamics en Dataverse current komen niet in aanmerking. Ook het lokale exemplaar van Dataverse (ook wel de huidige omgeving genoemd) kan nooit worden geblokkeerd voor gebruik binnen een omgeving. Dit betekent dat makers binnen een bepaalde omgeving altijd toegang hebben tot de Dataverse current-omgeving.
Daarom betekent een regel:
7b97cd5c-ce38-4930-9497-eec2a95bf5f7
toestaan*
weigeren
eigenlijk:
Dataverse current environment
toestaan7b97cd5c-ce38-4930-9497-eec2a95bf5f7
toestaan*
weigeren
Dataverse current environment
toestaan is altijd impliciet de eerste regel in de Dataverse-eindpuntfilterlijst voor een bepaalde omgeving.
Azure Blob Storage
Azure Blob Storage-eindpunten worden asngeduid met de naam van het Azure Storage-account.
SMTP
SMTP-eindpunten worden weergegeven in de indeling <SMTP server address, port number>
.
Hier volgt een voorbeeldscenario:
smtp.gmail.com,587
weigeren*
toestaan
HTTP met Microsoft Entra ID, HTTP Webhook en HTTP-connectors
De eindpunten voor alle HTTP-connectors worden aangeduid door een URL-patroon. De actie Webresource ophalen van HTTP met Microsoft Entra-connector valt buiten het bereik.
Hier volgt een voorbeeldscenario:
Geef alleen toegang tot de Azure-pagina met abonnementen in https://management.azure.com/
.
https://management.azure.com/subscriptions*
toestaanhttps://management.azure.com/*
weigeren*
weigeren
PowerShell-ondersteuning voor eindpuntfiltering
Regels voor eindpuntfiltering configureren voor een beleid
Het object dat regels voor eindpuntfiltering voor beleid bevat, wordt hieronder de connectorconfiguratie genoemd.
Het object voor de connectorconfiguraties heeft de volgende structuur:
$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
}
)
}
)
}
Notities
- De laatste regel voor elke connector moet altijd op URL
*
worden toegepast om ervoor te zorgen dat de regels op alle URL's worden toegepast. - De eigenschap voor de volgorde van de regels voor elke connector moet worden gevuld met de nummers 1 tot en met N, waarbij N het aantal regels voor die connector is.
Bestaande connectorconfiguraties ophalen voor een DLP-beleid
Get-PowerAppDlpPolicyConnectorConfigurations
Connectorconfiguraties maken voor een DLP-beleid
New-PowerAppDlpPolicyConnectorConfigurations
Connectorconfiguraties voor een DLP-beleid bijwerken
Set-PowerAppDlpPolicyConnectorConfigurations
Voorbeeld
Doel:
Voor de SQL-serverconnector:
- Database 'testdatabase' van server 'mijnservernaam.database.windows.net' weigeren
- Alle andere databases van server 'mijnservernaam.database.windows.net' toestaan
- Alle andere servers weigeren
Voor de SMTP-connector:
- Gmail toestaan (serveradres: smtp.gmail.com, poort: 587)
- Alle andere adressen weigeren
Voor de HTTP-connector:
- Eindpunten
https://mywebsite.com/allowedPath1
enhttps://mywebsite.com/allowedPath2
toestaan - Alle andere URL's weigeren
Opmerking
In de volgende cmdlet verwijst PolicyName naar de unieke GUID. U kunt de DLP GUID ophalen door de cmdlet Get-DlpPolicy uit te voeren.
$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