Filtrowanie punktów końcowych łączników (wersja zapoznawcza)
[Ten artykuł stanowi wstępną wersję dokumentacji i może ulec zmianie.]
Filtrowanie punktu końcowego łącznika umożliwia administratorom określić, z którymi punktami końcowymi mogą się łączyć podczas tworzenia aplikacji, przepływów i czatbotów. Jest ona skonfigurowana w ramach zasad ochrony przed utratą danych (DLP) i jest dostępna wyłącznie dla sześciu łączników:
- HTTP
- HTTP z Tożsamością Microsoft Entra (AD)
- Element webhook adresu HTTP
- SQL Server (obejmuje używanie programu SQL Server Connector do uzyskiwania dostępu do magazynu danych Azure Synapse)
- Magazyn obiektów blob Azure
- SMTP
Gdy twórca będzie próbować połączyć aplikację, przepływ lub rozmowę z zablokowanym punktem końcowym, napotka komunikat o błędzie DLP.
Ostrzeżenie
Reguły punktu końcowego filtrowania nie są wymuszane dla zmiennych środowiska, niestandardowych danych wejściowych ani żaden punkt końcowy, który jest tworzony dynamicznie podczas czasu uruchomienia. Tylko statyczne punkty końcowe są oceniane w aplikacji, przepływie lub projektantach czatbota. Aby uzyskać więcej informacji, zobacz Znane ograniczenia.
Ważne
Funkcje w wersji zapoznawczej nie są przeznaczone do użytku w środowiskach produkcyjnych i mogą mieć ograniczoną funkcjonalność. Te funkcje są udostępniane przed oficjalnym wydaniem, dzięki czemu klienci mogą szybciej uzyskać do nich dostęp i przekazać opinie na ich temat.
Dodawanie reguł punktu końcowego do zasad DLP
Kolumna Konfigurowalny punkt końcowy na stronie Gotowe łączniki w Zasadach danych wskazuje, czy funkcja filtrowania punktów końcowych jest obsługiwana dla łącznika.
Jeśli wartość kolumny Konfigurowalny punkt końcowy to Tak, możesz użyć tej możliwości, klikając prawym przyciskiem myszy, a następnie wybierając Konfiguruj łącznik>Punkty końcowe łącznika.
Otwiera to panel boczny, w którym możesz określić uporządkowaną listę wzorców URL typu Allow (Zezwalaj) lub Deny (Odmawiaj). Ostatni wiersz na liście zawsze będzie regułą dla znaku wieloznacznego (*
), która dotyczy wszystkich punktów końcowych w tym łączniku. Domyślnie wzorzec *
jest ustawiany jako Zezwalaj na nowe zasady DLP, ale można go oznaczać jako Zezwalaj lub Odmawiaj.
Dodaj nowe reguły
Nowe reguły można dodać, wybierając opcję Dodaj punkt końcowy. Nowe reguły są dodawane na końcu listy wzorców jako przedostatnia. Stanie się tak dlatego, że *
zawsze będzie ostatnim wpisem na liście. Można jednak zaktualizować kolejność wzorców, korzystając z listy rozwijanej Zamówienie lub wybierając pozycję Przenieś w górę lub Przenieś w dół.
Po dodaniu wzorca można edytować lub usuwać te wzorce, wybierając konkretny wiersz i wybierając opcję Usuń.
Po zapisaniu łącznika punkt końcowy filtrowania i zasad DLP, w których są zdefiniowane, są one natychmiast wymuszane w środowiskach docelowych. Poniżej po przedstawiono przykład, w którym twórca próbował połączyć przepływ chmury z punktem końcowym HTTP, co nie jest niedozwolone.
Znane ograniczenia
Reguły filtrowania punktów końcowych nie są wymuszane na zmiennych środowiskowych, wejściach niestandardowych i dynamicznie powiązanych punktach końcowych podczas uruchamiania. Wymuszane są tylko statyczne punkty końcowe znane i wybrane podczas tworzenia aplikacji, przepływu lub chatbota w czasie projektowania. Oznacza to, że reguły filtrowania punktów końcowych łącznika dla SQL Server i Azure Blob Storage nie są wymuszane, jeśli połączenia są uwierzytelniane za pomocą Microsoft Entra ID. Na dwóch poniższych zrzutach ekranu twórca kompiluje przepływ w chmurze definiujący serwer SQL Server i bazę danych w zmiennych, a następnie używa tych zmiennych jako danych wejściowych do definicji połączenia. Z tego powodu punkt końcowy filtrowania nie jest szacowany i przepływ chmury może być wykonywany pomyślnie.
Niektóre opublikowane Power Apps przed 1 października 2020 r. należy ponownie opublikować w celu wymuszania reguł akcji łącznika DLP i punktu końcowego programu. Poniższy skrypt umożliwia administratorom i twórcom zidentyfikowanie aplikacji, które muszą zostać ponownie opublikowane, aby przestrzegać nowych zasad kontroli granularnej 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 } }
Punkt końcowy i przykłady
Każdy łącznik ma inne punkt końcowy łącznika. Ponadto niektóre punkty końcowe można zdefiniować w wielu formatach. Punkty końcowe muszą być wprowadzane we wszystkich możliwych formatach, aby uniemożliwić twórcom korzystanie z nich podczas tworzenia aplikacji i przepływów. Administratorzy mogą wprowadzić pełną nazwę punktu końcowego lub użyć dopasowania wzorca ze znakiem wieloznacznym (*
) podczas tworzenia reguły filtrowania punktu końcowego. Te reguły są wprowadzane i przedstawiane w uporządkowanej liście punkt końcowy wzorców, co oznacza, że będą one szacowane w porządku rosnącym według numeru. Należy zauważyć, że ostatnią regułą dla danego łącznika jest zawsze *
Zezwalaj lub *
Odmów. Zezwalaj to wartość domyślna, którą można zmienić na Odmów.
Poniższe wskazówki opisują sposób wprowadzania punktów końcowych łącznika podczas tworzenia reguł zezwalających lub odmawiających ich.
SQL Server
Punkty końcowe połączenia z programem SQL Server muszą być wyświetlane w formacie <Server_name, database_name>
. Rzeczy, o których należy pamiętać:
Nazwa serwera może być wprowadzana w różnych formatach przez twórców. Dlatego, aby naprawdę zaadresować punkt końcowy, należy go wprowadzić we wszystkich możliwych formatach. Na przykład lokalny mogą być w formacie
<machine_name\named_instance, database_name>
lub<IP address, custom port, database_name>
. W takim przypadku będziesz musiał zastosować reguły zezwalania lub blokowania w obu formatach dla punktu końcowego. Na przykład:- Blokuj
WS12875676\Servername1,MktingDB
- Blokuj
11.22.33.444,1401,MktingDB
- Blokuj
Nie ma specjalnych reguł do obsługi względnych adresów, takich jak
localhost
. W związku z tym, jeśli zablokujesz*localhost*
, zablokuje to twórcom używanie jakichkolwiek punktów końcowych przy użyciulocalhost
jako części punktu końcowego programu SQL Server. Jednak nie powstrzyma ich to przed dostępem do punktu końcowego przy użyciu adresu bezwzględnego, chyba że adres bezwzględny został również zablokowany przez administratora.
Poniżej znajdują się przykłady:
Zezwalaj tylko na wystąpienia serwera SQL Azure:
- Zezwalaj na
*.database.windows.net*
- Odmów
*
- Zezwalaj na
Zezwalaj tylko na określony zakres adresów IP: (pamiętaj, że niedozwolone adresy IP mogą być nadal wprowadzane przez twórcę w formacie
<machine_name\named_instance>
).- Zezwalaj na
11.22.33*
- Odmów
*
- Zezwalaj na
Dataverse
Punkty końcowe Dataverse są reprezentowane przez identyfikator organizacji, na przykład 7b97cd5c-ce38-4930-9497-eec2a95bf5f7. Należy pamiętać, że tylko zwykły łącznik Dataverse znajduje się obecnie w zakresie punkt końcowy filtrowania. Bieżące łączniki Dataverse Dynamics i Dataverse znajdują się w zakresie. Ponadto lokalne wystąpienie Dataverse (znane również jako bieżące środowisko) nigdy nie może zostać zablokowane do użytku w środowisku. Oznacza to, że w każdym środowisku twórcy mogą zawsze uzyskać dostęp do bieżącego środowiska Dataverse.
Dlatego też reguła, która stwierdza:
- Zezwalaj na
7b97cd5c-ce38-4930-9497-eec2a95bf5f7
- Odmów
*
W rzeczywistości to oznacza:
- Zezwalaj na
Dataverse current environment
- Zezwalaj na
7b97cd5c-ce38-4930-9497-eec2a95bf5f7
- Odmów
*
Zezwalaj, że Dataverse current environment
jest zawsze domyślnie pierwszą regułą na liście filtrowania punktów końcowych Dataverse dla dowolnego środowiska.
Azure Blob Storage
Punkty końcowe usługi Azure Blob Storage są reprezentowane przez nazwę konta usługi Azure Storage.
SMTP
Punkty końcowe SMTP są reprezentowane przez format <SMTP server address, port number>
.
Oto przykładowy scenariusz:
- Odmów
smtp.gmail.com,587
- Zezwalaj na
*
HTTP z Microsoft Entra ID, HTTP Webhook i łącznikami HTTP
Punkty końcowe dla wszystkich łączników HTTP są reprezentowane przez wzorzec adresu URL. Akcja Pobierz zasób sieci Web protokołu HTTP z łącznikiem Microsoft Entra jest poza zakresem.
Oto przykładowy scenariusz:
Zezwalaj na dostęp tylko do strony Subskrypcje Azure w obszarze https://management.azure.com/
.
- Zezwalaj na
https://management.azure.com/subscriptions*
- Odmów
https://management.azure.com/*
- Odmów
*
Obsługa programu PowerShell punkt końcowy filtrowania danych
Skonfiguruj reguły filtrowania punktów końcowych dla polityki
Obiekt zawierający reguły filtrowania punktów końcowych dla zasad jest określany poniżej jako konfiguracje łącznika.
Obiekt konfiguracji łącznika ma następującą 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
}
)
}
)
}
Notatki
- Ostatnia reguła dla każdego łącznika powinna być zawsze stosowana do adresu URL
*
, aby zapewnić, że wszystkie adresy URL są objęte regułami. - Właściwość kolejności reguł dla każdego łącznika powinna być wypełniona liczbami od 1 do N, gdzie N jest liczbą reguł dla tego łącznika.
Pobieranie istniejących konfiguracji łączników dla zasad DLP
Get-PowerAppDlpPolicyConnectorConfigurations
Tworzenie konfiguracji łączników dla zasad DLP
New-PowerAppDlpPolicyConnectorConfigurations
Aktualizowanie konfiguracji łączników dla zasad DLP
Set-PowerAppDlpPolicyConnectorConfigurations
Przykład
Cel:
Dla łącznika serwera SQL:
- Odmowa bazy danych "testdatabase" serwera "myservername.database.windows.net"
- Zezwalaj na wszystkie inne bazy danych serwera "myservername.database.windows.net"
- Odrzucanie wszystkich innych serwerów
Dla łącznika SMTP:
- Zezwalaj na wiadomości (adres serwera: smtp.gmail.com, port: 587)
- Odrzuć wszystkie inne adresy
Dla łącznika HTTP:
- Zezwalaj na punkty końcowe
https://mywebsite.com/allowedPath1
ihttps://mywebsite.com/allowedPath2
- Odrzucanie wszystkich innych adresów URL
Uwaga
W poniższym poleceniu cmdlet PolicyName odnosi się do unikatowego identyfikatora GUID. Możesz pobrać identyfikator GUID DLP, uruchamiając polecenie cmdlet 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