Bendrinti naudojant


Jungties galinių punktų filtravimas (peržiūros versija)

Pastaba.

Naujas ir patobulintas Power Platform administravimo centras dabar yra viešoje peržiūroje! Sukūrėme naująjį administravimo centrą, kad jį būtų lengviau naudoti su į užduotis orientuotu naršymu, kuris padeda greičiau pasiekti konkrečių rezultatų. Publikuosime naujus ir atnaujintus dokumentus, kai naujasis Power Platform administravimo centras taps visuotinai pasiekiamas.

[Šis straipsnis yra negalutinio leidimo dokumentacija ir gali keistis.]

Jungties galinio punkto filtravimas leidžia administratoriams valdyti, prie kurių konkrečių galinių punktų kūrėjai gali prisijungti kurdami programas, srautus ar pokalbių robotus. Jis sukonfigūruotas pagal duomenų praradimo prevencijos (DLP) strategiją ir yra prieinamas tik šešioms jungtims:

  • HTTP
  • HTTP su Microsoft Entra ID (AD)
  • HTTP žiniatinklio kablys
  • SQL serveris (įskaitant SQL serverio jungties naudojimą norint pasiekti Azure Synapse duomenų saugyklą)
  • „Azure Blob Storage“
  • SMTP

Kai kūrėjas bandys prijungti savo programą, srautą ar pokalbių robotą prie užblokuoto galinio punkto, jis susidurs su DLP klaidos pranešimu.

Įspėjimas

Galinio punkto filtravimo taisyklės netaikomos aplinkos kintamiesiems, pasirinktinėms įvestims ar bet kokiam galiniam punktui, kuris dinamiškai sukuriamas vykdymo metu. Programos, srauto ar pokalbių roboto dizaineriuose vertinami tik statiniai galiniai punktai. Daugiau informacijos ieškokite Žinomi apribojimai.

Svarbu

Peržiūros funkcijos nėra skirtos naudoti gamybai ir gali būti apribotas jų funkcionalumas. Šias funkcijas galima naudoti prieš oficialų išleidimą, kad klientai galėtų gauti ankstyvą prieigą ir pateikti atsiliepimų.

Galinio punkto filtravimo taisyklių įtraukimas į DLP strategijas

Duomenų strategijų puslapyje Iš anksto sukurtos jungtys esantis stulpelis Galinio punkto konfigūruojamasisnurodo, ar palaikoma jungties galinio punkto filtravimo galimybė.

Galinį punktą galima konfigūruoti puslapyje Iš anksto sukurtos jungtys.

Jei stulpelio Galinis punktas konfigūruotinas reikšmė yra Taip, galite naudoti šią funkciją spustelėję dešiniu pelės mygtuku ir pasirinkę Konfigūruoti jungtį>Jungties galiniai punktai.

Konfigūruokite jungtį > Jungties galiniai punktai.

Atveriamas šoninis skydelis, kuriame galite nurodyti URL šablonų Leisti arba Neleisti sąrašą. Paskutinė sąrašo eilutė visada bus pakaitos simbolio (*) taisyklė, kuri taikoma visiems tos jungties galiniams taškams. Pagal numatytuosius nustatymus, * modelis nustatytas kaip Leisti naujose DLP strategijose, tačiau galite jį pažymėti kaip Leisti arba Atmesti.

Nurodykite tvarkingą pasirinktinių jungčių URL šablonų Leisti ir Uždrausti sąrašą.

Naujų taisyklių įtraukimas

Galite įtraukti naujas taisykles pažymėdami Įtraukti galinį punktą. Naujos taisyklės įtraukiamos į šablonų sąrašo pabaigą kaip taisyklė nuo antros iki paskutinės. Taip yra todėl, kad * visada bus paskutinis įrašas sąraše. Tačiau galite atnaujinti šablonų tvarką naudodami išplečiamąjį sąrašą Užsakymas arba pasirinkdami Perkelti aukštyn arba Perkelti žemyn.

Pasirinkite Pridėti galinį punktą, kad įtrauktumėte naujų taisyklių.

Įtraukę modelį, galite redaguoti arba panaikinti šiuos modelius pasirinkdami konkrečią eilutę ir Naikinti.

Ištrinkite šabloną.

Išsaugojus jungties galinio punkto filtravimo taisykles ir DLP strategiją, kurioje jos apibrėžtos, jos iškart pradedamos taikyti tikslinėse aplinkose. Toliau pateikiamas pavyzdys, kai kūrėjas bandė prijungti savo debesies srautą prie neleidžiamo HTTP galinio punkto.

DLP klaida dėl galinio punkto filtravimo taisyklių.

Žinomi apribojimai

  • Galinių punktų filtravimo taisyklės vykdymo metu netaikomos aplinkos kintamiesiems, pasirinktinėms įvestims ir dinamiškai susietiems galiniams punktams. Vykdomi tik statiniai galiniai punktai, žinomi ir pasirinkti kuriant programą, srautą ar pokalbių robotą kūrimo metu. Tai reiškia, kad jungties galinio punkto filtravimo taisyklės, skirtos "SQL Server" ir "Azure" didelių dvejetainių objektų saugyklai, netaikomos, jei ryšiai autentifikuoti naudojant Microsoft Entra ID. Dviejose toliau pateiktose ekrano kopijose kūrėjas sukūrė debesies srautą, kuris apibrėžia SQL serverį ir duomenų bazę kintamuosiuose, o tada naudoja tuos kintamuosius kaip įvestį į ryšio apibrėžimą. Todėl galinio punkto filtravimo taisyklės nėra vertinamos ir debesies srautas gali būti sėkmingai vykdomas.

    Debesies srautas naudoja kintamuosius, kad prisijungtų prie SQL. Debesies srautas veikia sėkmingai.

  • Kai kurios Power Apps paskelbtos iki 2020 m. spalio 1 d., turi būti iš naujo paskelbtos, kad būtų vykdomos DLP jungties veiksmų taisyklės ir galinio punkto taisyklės. Šis scenarijus leidžia administratoriams ir kūrėjams identifikuoti programas, kurias reikia publikuoti iš naujo, atsižvelgiant į šias naujas DLP detalaus valdymo taisykles:

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

Galinių punktų įvesties formatai ir pavyzdžiai

Kiekviena jungtis turi skirtingą galinio punkto suvokimą. Be to, kai kuriuos galinius punktus galima apibrėžti keliais formatais. Todėl galinius punktus reikia įvesti visais galimais formatais, kad kūrėjai negalėtų jų naudoti kurdami programas ir srautus. Administratoriai, kurdami galinio punkto filtravimo taisyklę, gali įvesti visą galinio punkto pavadinimą arba naudoti šablonų atitikimą su pakaitos simboliu (*). Šios taisyklės įvedamos ir pateikiamos surikiuotame galinių punktų modelių sąraše, tai yra jos bus vertinamos didėjimo tvarka pagal skaičių. Atminkite, kad paskutinė bet kurios nurodytos jungties taisyklė visada * yra Leisti arba * Atmesti. Leisti yra numatytasis, kurį galima pakeisti į Atmesti.

Toliau pateikiamos rekomendacijos aprašo, kaip įvesti jungties galinius punktus kuriant jiems „leisti” arba „atmesti” taisykles.

„SQL Server“

SQL serverio ryšio galiniai punktai turi būti išvardyti <Server_name, database_name> formatu. Atkreipkite dėmesį į šiuos dalykus:

  • Kūrėjai serverio pavadinimą gali įvesti įvairiais formatais. Todėl, kad iš tiesų būtų galima kreiptis į galinį punktą, jis turi būti įvestas visais galimais formatais. Pavyzdžiui, vietiniai egzemplioriai gali būti <machine_name\named_instance, database_name> arba <IP address, custom port, database_name> formatu. Tokiu atveju turėsite taikyti „leisti” arba „blokuoti” taisykles abiejuose galinio punkto formatuose. Pavyzdžiui:

    • Blokuoti WS12875676\Servername1,MktingDB
    • Blokuoti 11.22.33.444,1401,MktingDB
  • Nėra jokios ypatingos logikos, kaip tvarkyti santykinius adresus, pavyzdžiui, localhost. Todėl, jei blokuosite *localhost*, kūrėjams bus užblokuotas visų galinių punktų naudojimas localhost kaip SQL serverio galinio punkto dalį. Tačiau tai nesustabdys jų prieigos prie galinių punktų naudojant absoliutųjį adresą, nebent administratorius taip pat užblokavo ir absoliutųjį adresą.

Toliau pateikiami pavyzdžiai:

  • Leisti tik „Azure” SQL serverio egzempliorius:

    1. Leisti *.database.windows.net*
    2. Atmesti *
  • Leisti tik konkretų IP diapazoną: (Atminkite, kad neleidžiamus IP adresus kūrėjas <machine_name\named_instance> vis tiek gali įvesti formatu.)

    1. Leisti 11.22.33*
    2. Atmesti *

Dataverse

Dataverse galinius punktus nurodo organizacijos ID, pvz., 00aa00aa-bb11-cc22-dd33-44ee44ee44ee Atminkite, kad šiuo metu galinių punktų filtravimui galimos tik įprastos „Dataverse” jungtys. „Dataverse” dinaminių ir „Dataverse” dabartinių jungčių naudoti negalima. Be to, niekada negalima blokuoti vietinio „Dataverse” egzemplioriaus (dar vadinamo dabartine aplinka) naudojimui aplinkoje. Tai reiškia, kad bet kurioje aplinkoje kūrėjai visada gali pasiekti „Dataverse” dabartinę aplinką.

Todėl taisyklė, pagal kurią:

  1. Leisti 00aa00aa-bb11-cc22-dd33-44ee44ee44ee
  2. Atmesti *

Iš tikrųjų reiškia:

  1. Leisti Dataverse current environment
  2. Leisti 00aa00aa-bb11-cc22-dd33-44ee44ee44ee
  3. Atmesti *

Leisti Dataverse current environment visada yra netiesioginė pirmoji taisyklė „Dataverse” galinių punktų filtravimo sąraše bet kuriai nurodytai aplinkai.

„Azure Blob Storage“

„Azure“ didelių dvejetainių objektų saugyklos galiniai punktai yra nurodomi „Azure” saugyklos paskyros pavadinimu.

SMTP

SMTP galiniai punktai pateikiami <SMTP server address, port number> formatu.

Toliau pateikiamas pavyzdinis scenarijus:

  1. Atmesti smtp.gmail.com,587
  2. Leisti *

HTTP su Microsoft Entra ID, "HTTP Webhook" ir HTTP jungtimis

Visų HTTP jungčių galinius punktus nurodo URL raštas. Veiksmas Gauti žiniatinklio išteklių , skirtas HTTP su Microsoft Entra jungtimi, nepatenka į taikymo sritį.

Toliau pateikiamas pavyzdinis scenarijus:

Leisti pasiekti tik „Azure” prenumeratų puslapį adresu https://management.azure.com/.

  1. Leisti https://management.azure.com/subscriptions*
  2. Atmesti https://management.azure.com/*
  3. Atmesti *

„PowerShell” palaikymas galinių punktų filtravimui

Galinių punktų filtravimo strategijos taisyklių konfigūravimas

Objektas, kuriame yra strategijos galinių punktų filtravimo taisyklės, nurodomas žemiau kaip jungties konfigūravimai.

Jungties konfigūracijų objektas turi tokią struktūrą:

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

Pastabos

  • Paskutinė kiekvienos jungties taisyklė visada turėtų būti taikoma URL, * siekiant užtikrinti, kad taisyklės būtų taikomos visiems URL.
  • Kiekvienos jungties taisyklių užsakymo ypatybė turėtų būti užpildyta skaičiais nuo 1 iki N, kur N yra tos jungties taisyklių skaičius.

Esamų DLP strategijos jungčių konfigūracijų gavimas

Get-PowerAppDlpPolicyConnectorConfigurations 

DLP strategijos jungčių konfigūracijų kūrimas

New-PowerAppDlpPolicyConnectorConfigurations

DLP strategijos jungčių konfigūracijų naujinimas

Set-PowerAppDlpPolicyConnectorConfigurations

Pavyzdys

Tikslas:

SQL serverio jungčiai:

  • Atmesti serverio „myservername.database.windows.net” duomenų bazę „testdatabase”
  • Leisti visas kitas serverio „myservername.database.windows.net” duomenų bazes
  • Atmesti visus kitus serverius

SMTP jungčiai:

  • Leisti „Gmail” (serverio adresas: smtp.gmail.com, prievadas: 587)
  • Atmesti visus kitus adresus

HTTP jungčiai:

  • Leisti galinius taškus https://mywebsite.com/allowedPath1 ir https://mywebsite.com/allowedPath2
  • Atmesti visus kitus URL

Pastaba.

Toliau pateiktuose „cmdlet”, PolicyName reiškia unikalų GUID. Galite gauti DLP GUID paleisdami „Get-DlpPolicy” „cmdlet”.

$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