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


Ασφαλής χρήση του Microsoft SQL Server με το Power Apps

Υπάρχουν διαφορετικοί τρόποι για τη σύνδεση και τον έλεγχο ταυτότητας στον SQL Server με το Power Apps. Αυτό το άρθρο περιγράφει έννοιες που μπορούν να είναι χρήσιμες στην επιλογή του τρόπου σύνδεσης με τον SQL Server με μια προσέγγιση ασφαλείας που συμφωνεί με τις απαιτήσεις για την εφαρμογή σας.

Σημαντικό

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

Διαφορά μεταξύ ρητών, έμμεσων και ασφαλών έμμεσων συνδέσεων

Μια σύνδεση στο SQL Server δημιουργείται κάθε φορά που δημιουργείτε μια εφαρμογή με χρήση του Power Apps σε σύνδεση με το SQL Server. Όταν αυτές οι εφαρμογές δημοσιεύονται και κοινοποιούνται σε άλλους, τόσο η εφαρμογή όσο και η σύνδεση αναπτύσσονται σε αυτούς τους χρήστες. Δηλαδή, η εφαρμογή και η σύνδεση είναι—ορατές στους χρήστες στους οποίους κοινοποιείται η εφαρμογή.

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

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

Οι παρακάτω τέσσερις τύποι ελέγχου ταυτότητας σύνδεσης μπορούν να χρησιμοποιηθούν με τον SQL Server για το Power Apps:

Τύπος ελέγχου ταυτότητας Μέθοδος σύνδεσης Power Apps
Ενσωματωμένος Microsoft Entra Ρητή
Έλεγχος ταυτότητας διακομιστή SQL Έμμεση / Ασφαλής έμμεση
Έλεγχος ταυτότητας Windows Έμμεση / Ασφαλής έμμεση
Έλεγχος ταυτότητας των Windows (μη κοινοποιημένος) Ρητή

Κίνδυνοι έμμεσης κοινοποίησης σύνδεσης

Όλες οι νέες εφαρμογές χρησιμοποιούν αυτόματα τις νέες ασφαλείς έμμεσες συνδέσεις. Ωστόσο, με εφαρμογές που χρησιμοποιούν τις παλαιότερες "'έμμεσες συνδέσεις", τόσο η εφαρμογή όσο και οι συνδέσεις της έχουν αναπτυχθεί σε τελικούς χρήστες, αυτό σημαίνει ότι οι τελικοί χρήστες μπορούν να συντάσσουν νέες εφαρμογές με βάση αυτές τις συνδέσεις.

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

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

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

Σημαντικό

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

Ασφάλεια υπολογιστή πελάτη και διακομιστή

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

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

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

Μοτίβο ασφαλείας από την πλευρά του προγράμματος-πελάτη σε μια εφαρμογή.

Σε ένα μοτίβο εφαρμογής ασφαλείας προγράμματος-πελάτη [1] ο χρήστης εκτελεί τον έλεγχο ταυτότητας μόνο στην εφαρμογή από την πλευρά του προγράμματος-πελάτη. Έπειτα [2] η εφαρμογή ζητά πληροφορίες για την υπηρεσία και [3] η υπηρεσία επιστρέφει τις πληροφορίες αποκλειστικά βάσει του αιτήματος για δεδομένα.

Μοτίβο ασφαλείας από την πλευρά του διακομιστή σε μια εφαρμογή.

Σε ένα μοτίβο ασφαλείας από την πλευρά του διακομιστή, [1] ο χρήστης εκτελεί πρώτα τον έλεγχο ταυτότητας στην υπηρεσία, ώστε ο χρήστης να είναι γνωστός στην υπηρεσία. Στη συνέχεια, [2] όταν εκτελείται μια κλήση από την εφαρμογή, η υπηρεσία [3] χρησιμοποιεί τη γνωστή ταυτότητα του τρέχοντα χρήστη για να φιλτράρει κατάλληλα τα δεδομένα και [4] επιστρέφει τα δεδομένα.

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

Ωστόσο, η σύνδεση έμμεσης κοινοποίησης με τον SQL Server είναι το μοτίβο της εφαρμογής ασφαλείας του προγράμματος-πελάτη. Ο SQL Server γνωρίζει μόνο ότι χρησιμοποιείται ένα συγκεκριμένο όνομα χρήστη και κωδικός πρόσβασης. Για παράδειγμα, είναι δυνατό να παρακάμπτεται οποιοδήποτε φιλτράρισμα από την πλευρά του πελάτη με μια νέα εφαρμογή χρησιμοποιώντας το ίδιο όνομα χρήστη και κωδικό πρόσβασης.

Για να φιλτράρετε με ασφάλεια τα δεδομένα στην πλευρά του διακομιστή, χρησιμοποιήστε ενσωματωμένες δυνατότητες ασφαλείας στον SQL Server, όπως ασφάλεια σε επίπεδο γραμμής για γραμμές και τα δικαιώματα απόρριψης σε συγκεκριμένα αντικείμενα (όπως στήλες) σε συγκεκριμένους χρήστες. Αυτή η προσέγγιση χρησιμοποιεί την ταυτότητα του χρήστη Microsoft Entra για να φιλτράρει τα δεδομένα στον διακομιστή.

Ορισμένες υπάρχουσες εταιρικές υπηρεσίες έχουν χρησιμοποιήσει μια προσέγγιση όπου η ταυτότητα του χρήστη αποτυπώνεται σε ένα επίπεδο επιχειρηματικών δεδομένων με τον ίδιο τρόπο με το Microsoft Dataverse. Σε αυτή την περίπτωση, το επίπεδο επιχείρησης ενδέχεται να χρησιμοποιεί ή να μην χρησιμοποιεί την ασφάλεια σε επίπεδο γραμμής του SQL Server και να μην στερεί δυνατότητες απευθείας. Εάν δεν γίνει κάτι τέτοιο, συνήθως ισχύει ότι η ασφάλεια ενεργοποιείται χρησιμοποιώντας αποθηκευμένες διαδικασίες ή προβολές.

Το επιχειρηματικό επίπεδο (στην πλευρά του διακομιστή) χρησιμοποιεί μια γνωστή ταυτότητα χρήστη Microsoft Entra για να καλεί μια αποθηκευμένη διαδικασία ως κύρια διαδικασία του SQL Server και να φιλτράρει τα δεδομένα. Ωστόσο, το Power Apps προς το παρόν, δεν συνδέεται σε αποθηκευμένες διαδικασίες. Ένα επιχειρηματικό επίπεδο μπορεί επίσης να καλεί μια προβολή που χρησιμοποιεί την ταυτότητα Microsoft Entra ως κύρια αρχή του SQL Server. Σε αυτή την περίπτωση, χρησιμοποιήστε το Power Apps για τη σύνδεση στις προβολές έτσι, ώστε τα δεδομένα να φιλτράρονται από την πλευρά του διακομιστή. Η έκθεση μόνο προβολών σε χρήστες ενδέχεται να χρειαστεί ροές Power Automate για ενημερώσεις.

Δείτε επίσης

Επισκόπηση συνδέσεων για εφαρμογές καμβά