Κοινή χρήση μέσω


Φιλτράρισμα τελικού σημείου σύνδεσης (έκδοση προεπισκόπησης)

[Αυτό το άρθρο αποτελεί τεκμηρίωση προέκδοσης και ενδέχεται να αλλάξει.]

Το φιλτράρισμα του τελικού σημείου σύνδεσης επιτρέπει στους διαχειριστές να ρυθμίζουν τα συγκεκριμένα τελικά σημεία με τα οποία μπορούν να συνδεθούν οι υπεύθυνοι λήψης τελικού σημείου κατά τη δημιουργία εφαρμογών, ροών ή συνομιλίας. Ρυθμίζεται στο πλαίσιο μιας πολιτικής αποτροπής απώλειας δεδομένων (DLP) και είναι αποκλειστικά διαθέσιμη για έξι συνδέσεις:

  • HTTP
  • HTTP με Microsoft Entra ID (AD)
  • Διεύθυνση HTTP Webhook
  • SQL Server (περιλαμβάνει τη χρήση του SQL Server Connector για πρόσβαση σε αποθήκη δεδομένων Azure Synapse)
  • Azure Blob Storage
  • SMTP

Όταν ένας κατασκευαστής προσπαθεί να συνδέσει την εφαρμογή, τη ροή ή τη συνομιλία σε ένα αποκλεισμένο τελικό σημείο, θα συναντήσει ένα μήνυμα σφάλματος DLP.

Προειδοποίηση

Οι κανόνες φιλτραρίσματος τελικού σημείου δεν τίθενται σε ισχύ σε μεταβλητές περιβάλλοντος, προσαρμοσμένες καταχωρίσεις ή σε οποιοδήποτε δυναμικό σημείο δημιουργείται δυναμικά κατά την εκτέλεση. Μόνο στατικά τελικά σημεία αξιολογούνται στην εφαρμογή, στη ροή ή στους σχεδιαστές συνομιλίας. Για περισσότερες πληροφορίες, ανατρέξτε στους Γνωστούς περιορισμούς.

Σημαντικό

Οι λειτουργίες προεπισκόπησης δεν προορίζονται για παραγωγική χρήση και ενδέχεται να έχουν περιορισμένη λειτουργικότητα. Αυτές οι δυνατότητες είναι διαθέσιμες πριν από μια επίσημη κυκλοφορία έτσι ώστε οι πελάτες να έχουν πρόσβαση από νωρίς και να κάνουν σχόλια.

Προσθήκη φιλτραρίσματος τελικού σημείου στις πολιτικές DLP

Η στήλη Τελικό σημείο με δυνατότητα διαμόρφωσης στη σελίδα Προκατασκευασμένες συνδέσεις στην επιλογή Πολιτικές δεδομένων υποδεικνύει αν υποστηρίζεται η δυνατότητα φιλτραρίσματος τελικών σημείων για τη σύνδεση.

Τελικό σημείο με δυνατότητα διαμόρφωσης στη σελίδα «Προδομημένοι σύνδεσμοι».

Εάν η τιμή της στήλης Τελικό σημείο με δυνατότητα διαμόρφωσης είναι Ναι, μπορείτε να χρησιμοποιήσετε αυτήν τη δυνατότητα κάνοντας δεξί κλικ και, στη συνέχεια, επιλέγοντας Διαμόρφωση συνδέσμου>Τελικά σημεία συνδέσμου.

Ρύθμιση παραμέτρων σύνδεσης > Τελικά σημεία σύνδεσης.

Με αυτόν τον τρόπο ανοίγει ένας πλαϊνός πίνακας όπου μπορείτε να καθορίσετε μια λίστα με τα μοτίβα διεύθυνσης URL "Να επιτρέπεται" ή "Απόρριψη". Η τελευταία γραμμή της λίστας θα είναι πάντα ένας κανόνας για τον χαρακτήρα μπαλαντέρ (*), ο οποίος ισχύει για όλα τα τελικά σημεία αυτής της σύνδεσης. Από προεπιλογή, το πρότυπο * ορίζεται με τη ρύθμιση "Αποδοχή" για νέες πολιτικές DLP, αλλά μπορείτε να του προσθέσετε ετικέτα με την επισήμανση "Αποδοχή" ή "Απόρριψη".

Καθορίστε μια ταξινομημένη λίστα προτύπων με τις ρυθμίσεις quot;Αποδοχήquot; και quot;Απόρριψηquot; διεύθυνσης URL για προσαρμοσμένους συνδέσμους.

Προσθήκη νέων κανόνων

Μπορείτε να προσθέσετε νέους κανόνες επιλέγοντας Προσθήκη τελικού σημείου. Στο τέλος της λίστας προτύπων προστίθενται νέοι κανόνες ως δεύτερος μέχρι τον τελευταίο κανόνα. Αυτό συμβαίνει επειδή το στοιχείο * θα είναι πάντα η τελευταία καταχώρηση στη λίστα. Ωστόσο, μπορείτε να ενημερώσετε τη σειρά των προτύπων χρησιμοποιώντας την αναπτυσσόμενη λίστα Σειρά ή επιλέγοντας Μετακίνηση προς τα πάνω ή Μετακίνηση προς τα κάτω.

Επιλέξτε quot;Προσθήκη τελικού σημείουquot; για να προσθέσετε νέους κανόνες.

Μετά την προσθήκη ενός προτύπου, μπορείτε να επεξεργαστείτε ή να διαγράψετε αυτά τα πρότυπα επιλέγοντας μια συγκεκριμένη γραμμή και, στη συνέχεια, επιλέγοντας Διαγραφή.

Διαγραφή προτύπου.

Αφού αποθηκεύσετε τους κανόνες φιλτραρίσματος της σύνδεσης τελικού σημείου και την πολιτική DLP στην οποία καθορίζονται, εφαρμόζονται αμέσως στα περιβάλλοντα προορισμού. Ακολουθεί ένα παράδειγμα όπου ένας κατασκευαστής επιχείρησε να συνδέσει τη ροή cloud του σε τελικό σημείο HTTP ενώ δεν επιτρέπεται.

Σφάλμα DLP λόγω των κανόνων φιλτραρίσματος τελικού σημείου.

Γνωστοί περιορισμοί

  • Οι κανόνες φιλτραρίσματος τελικού σημείου δεν τίθενται σε ισχύ σε μεταβλητές περιβάλλοντος, προσαρμοσμένες καταχωρίσεις και δυναμικά συνδεδεμένα τελικά σημεία κατά τον χρόνο εκτέλεσης. Εφαρμόζονται μόνο στατικά τελικά σημεία που είναι γνωστά και επιλεγμένα κατά τη δημιουργία μιας εφαρμογής, μιας ροής ή μιας συνομιλίας κατά το χρόνο σχεδίασης. Αυτό σημαίνει ότι οι κανόνες φιλτραρίσματος τελικών σημείων σύνδεσης για τον διακομιστή SQL και χώρο αποθήκευσης αντικειμένου blob Azure δεν τίθενται σε ισχύ αν οι συνδέσεις δεν επαληθεύονται με το Microsoft Entra ID. Στα δύο παρακάτω στιγμιότυπα οθόνης, ένας κατασκευαστής έχει δημιουργήσει μια ροή cloud που καθορίζει τον διακομιστή SQL και τη βάση δεδομένων μέσα σε μεταβλητές και, στη συνέχεια, χρησιμοποιεί αυτές τις μεταβλητές ως δεδομένα εισόδου για τον ορισμό της σύνδεσης. Επομένως, οι κανόνες φιλτραρίσματος τελικού σημείου δεν αξιολογούνται και η ροή cloud μπορεί να εκτελεστεί με επιτυχία.

    Η ροή cloud χρησιμοποιεί μεταβλητές για τη σύνδεση με τον διακομιστή SQL.Επιτυχημένη εκτέλεση ροής cloud.

  • Ορισμένες εφαρμογές Power Apps που έχουν δημοσιευτεί πριν από την 1η Οκτωβρίου 2020, πρέπει να δημοσιευτούν εκ νέου για να εφαρμοστούν οι κανόνες δράσης της σύνδεσης DLP και οι κανόνες τελικού σημείου. Η παρακάτω δέσμη ενεργειών επιτρέπει στους διαχειριστές και τους υπεύθυνους λήψης να προσδιορίζουν τις εφαρμογές που πρέπει να δημοσιευθούν εκ νέου, ώστε να τηρούνται οι νέοι κανόνες λεπτομερούς ελέγχου με 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 
        }
    }
    

Μορφές εισαγωγής τελικών σημείων και παραδείγματα

Κάθε σύνδεση έχει μια διαφορετική ιδέα για το τι σημαίνει τελικό σημείο. Επιπλέον, ορισμένα τελικά σημεία μπορούν να οριστούν σε πολλές μορφές. Επομένως, τα τελικά σημεία πρέπει να καταχωρούνται σε όλες τις πιθανές μορφές, προκειμένου να αποκλειστεί η χρήση τους από τους δημιουργούς κατά τη δημιουργία εφαρμογών και ροών. Οι διαχειριστές μπορούν είτε να καταχωρήσουν το πλήρες όνομα τελικού σημείου είτε να χρησιμοποιήσουν αντιστοίχιση προτύπων με χαρακτήρες μπαλαντέρ (*) κατά τη δημιουργία ενός κανόνα φιλτραρίσματος τελικών σημείων. Αυτοί οι κανόνες καταχωρούνται και παρουσιάζονται σε μια ταξινομημένη λίστα με πρότυπα τελικών σημείων, που σημαίνει ότι θα αξιολογούνται σε αύξουσα σειρά κατά αριθμό. Σημειώστε ότι ο τελευταίος κανόνας για μια δεδομένη σύνδεση είναι πάντα * Αποδοχή ή * Απόρριψη. Η Αποδοχή είναι η προεπιλογή, η οποία μπορεί να αλλάξει σε Απόρριψη.

Η παρακάτω οδηγία περιγράφει τον τρόπο καταχώρησης τελικών σημείων σύνδεσης κατά τη δημιουργία κανόνων που να τα επιτρέπουν ή να τα απορρίπτουν.

SQL Server

Τα τελικά σημεία σύνδεσης διακομιστή SQL πρέπει να παρατίθενται σε μορφή <Server_name, database_name>. Πρέπει να λάβετε υπόψη τα εξής:

  • Το όνομα του διακομιστή μπορεί να καταχωρηθεί σε διάφορες μορφές από τους δημιουργούς. Επομένως, για να αντιμετωπιστεί πραγματικά ένα τελικό σημείο, πρέπει να καταχωρηθεί σε όλες τις πιθανές μορφές. Για παράδειγμα, οι παρουσίες εσωτερικής εγκατάστασης μπορεί να είναι σε μορφή <machine_name\named_instance, database_name> ή <IP address, custom port, database_name>. Σε αυτήν την περίπτωση, θα πρέπει να εφαρμόσετε κανόνες αποδοχής ή αποκλεισμού και στις δύο μορφές για ένα τελικό σημείο. Για παράδειγμα:

    • Αποκλεισμός WS12875676\Servername1,MktingDB
    • Αποκλεισμός 11.22.33.444,1401,MktingDB
  • Δεν υπάρχει ειδική λογική για το χειρισμό σχετικών διευθύνσεων όπως η localhost. Επομένως, εάν αποκλείσετε το *localhost*, θα αποκλειστεί η χρήση οποιωνδήποτε τελικών σημείων χρησιμοποιώντας το localhost ως τμήμα του τελικού σημείου διακομιστή SQL. Ωστόσο, δεν θα τα εμποδίσει να έχουν πρόσβαση στο τελικό σημείο χρησιμοποιώντας την απόλυτη διεύθυνση, εκτός εάν η απόλυτη διεύθυνση έχει αποκλειστεί και αυτή από τον διαχειριστή.

Ενδεικτικά αναφέρονται τα εξής:

  • Να επιτρέπονται μόνο οι παρουσίες του διακομιστή Azure SQL:

    1. Αποδοχή *.database.windows.net*
    2. Απόρριψη *
  • Να επιτρέπεται μόνο ένα συγκεκριμένο εύρος διευθύνσεων IP: (Λάβετε υπόψη ότι οι διευθύνσεις IP που δεν επιτρέπονται μπορούν και πάλι να καταχωρούνται από τον δημιουργό σε μορφή <machine_name\named_instance>.)

    1. Αποδοχή 11.22.33*
    2. Απόρριψη *

Dataverse

Τα τελικά σημεία του Dataverse αντιπροσωπεύονται από το αναγνωριστικό του οργανισμού, όπως, 7b97cd5c-ce38-4930-9497-eec2a95bf5f7. Λάβετε υπόψη ότι μόνο η κανονική σύνδεση του Dataverse αποτελεί πεδίο εφαρμογής για φιλτράρισμα τελικών σημείων. Το Dynamics του Dataverse και οι τρέχουσες συνδέσεις του Dataverse δεν είναι εντός του πεδίου εφαρμογής. Επίσης, η τοπική παρουσία του Dataverse (γνωστή επίσης και ως τρέχον περιβάλλον) δεν μπορεί να αποκλειστεί για χρήση σε ένα περιβάλλον. Αυτό σημαίνει ότι σε οποιοδήποτε δεδομένο περιβάλλον, οι δημιουργοί θα μπορούν πάντα να έχουν πρόσβαση στο τρέχον περιβάλλον του Dataverse.

Επομένως, ένας κανόνας που αναφέρει τα εξής:

  1. Αποδοχή 7b97cd5c-ce38-4930-9497-eec2a95bf5f7
  2. Απόρριψη *

Στην πραγματικότητα, σημαίνει:

  1. Αποδοχή Dataverse current environment
  2. Αποδοχή 7b97cd5c-ce38-4930-9497-eec2a95bf5f7
  3. Απόρριψη *

Η αποδοχή του Dataverse current environment είναι πάντα έμμεσα ο πρώτος κανόνας της λίστας φιλτραρίσματος τελικών σημείων του Dataverse για οποιοδήποτε δεδομένο περιβάλλον.

Azure Blob Storage

Τα τελικά σημεία του Azure Blob Storage αναπαρίστανται από το όνομα του λογαριασμού αποθήκευσης Azure.

SMTP

Τα τελικά σημεία του SMTP αναπαρίστανται σε μορφή <SMTP server address, port number>.

Το παρακάτω είναι ένα σενάριο παραδείγματος:

  1. Απόρριψη smtp.gmail.com,587
  2. Αποδοχή *

HTTP με Microsoft Entra ID, HTTP Webhook και συνδέσεις HTTP

Τα τελικά σημεία για όλες τις συνδέσεις HTTP αναπαρίστανται από ένα πρότυπο διεύθυνσης URL. Η ενέργεια Λήψη πόρου web του HTTP με σύνδεση του Microsoft Entra είναι εκτός του πεδίου εφαρμογής.

Το παρακάτω είναι ένα σενάριο παραδείγματος:

Αποδοχή πρόσβασης μόνο στη σελίδα συνδρομών του Azure μέσα από το https://management.azure.com/.

  1. Αποδοχή https://management.azure.com/subscriptions*
  2. Απόρριψη https://management.azure.com/*
  3. Απόρριψη *

Υποστήριξη του PowerShell για φιλτράρισμα τελικών σημείων

Διαμόρφωση κανόνων φιλτραρίσματος τελικών σημείων για μια πολιτική

Το αντικείμενο που περιέχει τους κανόνες φιλτραρίσματος τελικών σημείων για μια πολιτική που αναφέρεται παρακάτω ως διαμορφώσεις συνδέσμου.

Το αντικείμενο διαμορφώσεων συνδέσμου έχει την ακόλουθη δομή:

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

Σημειώσεις

  • Ο τελευταίος κανόνας για κάθε σύνδεση θα πρέπει να εφαρμόζεται πάντα σε διεύθυνση URL *, ώστε να εξασφαλίζεται ότι όλες οι διευθύνσεις URL καλύπτονται από τους κανόνες.
  • Η ιδιότητα ταξινόμησης των κανόνων για κάθε σύνδεση πρέπει να συμπληρώνεται με αριθμούς 1 έως N, όπου N είναι ο αριθμός των κανόνων για τη σύνδεση.

Ανάκτηση υπαρχουσών διαμορφώσεων συνδέσμου για μια πολιτική DLP

Get-PowerAppDlpPolicyConnectorConfigurations 

Δημιουργία διαμορφώσεων συνδέσμου για μια πολιτική DLP

New-PowerAppDlpPolicyConnectorConfigurations

Ενημέρωση διαμορφώσεων συνδέσμου για μια πολιτική DLP

Set-PowerAppDlpPolicyConnectorConfigurations

Παράδειγμα

Στόχος:

Για τον σύνδεσμο διακομιστή SQL:

  • Απόρριψη βάσης δεδομένων "testdatabase" του διακομιστή "myservername.database.windows.net"
  • Αποδοχή όλων των βάσεων δεδομένων του διακομιστή "myservername.database.windows.net"
  • Απόρριψη όλων των άλλων διακομιστών

Για τον σύνδεσμο SMTP:

  • Αποδοχή Gmail (διεύθυνση διακομιστή: smtp.gmail.com, θύρα: 587)
  • Απόρριψη όλων των άλλων διευθύνσεων

Για τον σύνδεσμο HTTP:

  • Αποδοχή όλων των τελικών σημείων https://mywebsite.com/allowedPath1 και https://mywebsite.com/allowedPath2
  • Απόρριψη όλων των άλλων διευθύνσεων URL

Σημείωμα

Στα παρακάτω cmdlet, το PolicyName αναφέρεται στο μοναδικό GUID. Μπορείτε να ανακτήσετε το DLP GUID εκτελώντας το 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