Σημείωμα
Η πρόσβαση σε αυτήν τη σελίδα απαιτεί εξουσιοδότηση. Μπορείτε να δοκιμάσετε να εισέλθετε ή να αλλάξετε καταλόγους.
Η πρόσβαση σε αυτήν τη σελίδα απαιτεί εξουσιοδότηση. Μπορείτε να δοκιμάσετε να αλλάξετε καταλόγους.
ΙΣΕΙ ΓΙΑ: Τα δεδομένα ανήκουν στην εφαρμογή, τα
δεδομένα ανήκουν στον χρήστη
Για να ρυθμίσετε διαπιστευτήρια μέσω προγραμματισμού για το Power BI, ακολουθήστε τα βήματα σε αυτό το άρθρο. Η ρύθμιση παραμέτρων διαπιστευτηρίων μέσω προγραμματισμού σάς επιτρέπει επίσης να κρυπτογραφείτε διαπιστευτήρια.
Σημείωμα
- Ο καλών χρήστης πρέπει να είναι κάτοχος μοντέλου σημασιολογίας ή διαχειριστής πύλης. Μπορείτε επίσης να χρησιμοποιήσετε μια κύρια υπηρεσία. Για παράδειγμα, η κύρια υπηρεσία μπορεί να είναι ο κάτοχος μοντέλου σημασιολογίας.
- Η διαχείριση των προελεύσεων δεδομένων cloud και των αντίστοιχων διαπιστευτηρίων τους γίνεται σε επίπεδο χρήστη.
Ενημέρωση της ροής διαπιστευτηρίων για προελεύσεις δεδομένων
Ανακαλύψτε τις προελεύσεις δεδομένων του μοντέλου σημασιολογίας καλώντας τη Λήψη προελεύσεων δεδομένων. Το σώμα της απόκρισης για κάθε προέλευση δεδομένων περιέχει τον τύπο, τις λεπτομέρειες σύνδεσης, την πύλη και το αναγνωριστικό προέλευσης δεδομένων.
// Select a datasource var datasources = pbiClient.Datasets.GetDatasources(datasetId).Value; var datasource = datasources.First();Δημιουργήστε τη συμβολοσειρά διαπιστευτηρίων σύμφωνα με τα Παραδείγματα ενημέρωσης προέλευσης δεδομένων. Τα περιεχόμενα της συμβολοσειράς διαπιστευτηρίων εξαρτώνται από τον τύπο διαπιστευτηρίων.
var credentials = new BasicCredentials(username: "username", password :"*****");Σημείωμα
Εάν χρησιμοποιείτε προελεύσεις δεδομένων cloud, μην ακολουθήσετε τα επόμενα βήματα σε αυτή την ενότητα. Καλέστε την Ενημέρωση προέλευσης δεδομένων για να ορίσετε τα διαπιστευτήρια, χρησιμοποιώντας το αναγνωριστικό πύλης και το αναγνωριστικό προέλευσης δεδομένων που λάβατε στο βήμα 1.
Ανακτήστε το δημόσιο κλειδί πύλης καλώντας τη Λήψη πύλης.
var gateway = pbiClient.Gateways.GetGatewayById(datasource.GatewayId);Κρυπτογραφήστε τα διαπιστευτήρια.
var credentialsEncryptor = new AsymmetricKeyEncryptor(gateway.publicKey);Δημιουργήστε τις λεπτομέρειες διαπιστευτηρίων με κρυπτογραφημένα διαπιστευτήρια.
Χρησιμοποιήστε την κλάση AsymetricKeyEncryptor με το δημόσιο κλειδί που ανακτήσατε στο βήμα 3.
var credentialDetails = new CredentialDetails( credentials, PrivacyLevel.Private, EncryptedConnection.Encrypted, credentialsEncryptor);Ορίστε διαπιστευτήρια καλώντας την Ενημέρωση προέλευσης δεδομένων.
pbiClient.Gateways.UpdateDatasource(datasource.GatewayId.Value, datasource.DatasourceId.Value, new UpdateDatasourceRequest(credentialDetails));
Ρύθμιση παραμέτρων νέας προέλευσης δεδομένων για μια πύλη δεδομένων
Εγκαταστήστε την πύλη δεδομένων εσωτερικής εγκατάστασης στον υπολογιστή σας.
Ανακτήστε το αναγνωριστικό πύλης και το δημόσιο κλειδί καλώντας τη Λήψη πυλών.
// Select a gateway var gateways = pbiClient.Gateways.GetGateways().Value; var gateway = gateways.First();Δημιουργήστε λεπτομέρειες διαπιστευτηρίων, ακολουθώντας τη διαδικασία που περιγράφεται στην ενότητα Ενημέρωση ροής διαπιστευτηρίων για προελεύσεις δεδομένων, χρησιμοποιώντας το δημόσιο κλειδί πύλης που ανακτήσατε στο βήμα 2.
Δημιουργήστε το σώμα της αίτησης.
var request = new PublishDatasourceToGatewayRequest( dataSourceType: "SQL", connectionDetails: "{\"server\":\"myServer\",\"database\":\"myDatabase\"}", credentialDetails: credentialDetails, dataSourceName: "my sql datasource");Καλέστε το API Δημιουργία προέλευσης δεδομένων.
pbiClient.Gateways.CreateDatasource(gateway.Id, request);
Τύποι διαπιστευτηρίων
Όταν καλείτε τη Δημιουργία προέλευσης δεδομένων ή την Ενημέρωση προέλευσης δεδομένων από το Power BI REST API σε μια επιχειρησιακή πύλη εσωτερικής εγκατάστασης, κρυπτογραφήστε την τιμή διαπιστευτηρίων χρησιμοποιώντας το δημόσιο κλειδί πύλης.
Σημείωμα
Το .NET SDK v3 μπορεί επίσης να εκτελέσει τα παρακάτω παραδείγματα .NET SDK v2.
Windows και βασικά διαπιστευτήρια
// Windows credentials
var credentials = new WindowsCredentials(username: "john", password: "*****");
// Or
// Basic credentials
var credentials = new BasicCredentials(username: "john", password: "*****");
var credentialsEncryptor = new AsymmetricKeyEncryptor(publicKey);
var credentialDetails = new CredentialDetails(credentials, PrivacyLevel.Private, EncryptedConnection.Encrypted, credentialsEncryptor);
Βασικά διαπιστευτήρια
var credentials = new KeyCredentials("TestKey");
var credentialsEncryptor = new AsymmetricKeyEncryptor(publicKey);
var credentialDetails = new CredentialDetails(credentials, PrivacyLevel.Private, EncryptedConnection.Encrypted, credentialsEncryptor);
Διαπιστευτήρια OAuth2
var credentials = new OAuth2Credentials("TestToken");
var credentialsEncryptor = new AsymmetricKeyEncryptor(publicKey);
var credentialDetails = new CredentialDetails(credentials, PrivacyLevel.Private, EncryptedConnection.Encrypted, credentialsEncryptor);
Ανώνυμα διαπιστευτήρια
var credentials = new AnonymousCredentials();
var credentialDetails = new CredentialDetails(credentials, PrivacyLevel.Private, EncryptedConnection.NotEncrypted);
Αντιμετώπιση προβλημάτων
Δεν βρέθηκε αναγνωριστικό πύλης και προέλευσης δεδομένων κατά την κλήση προελεύσεων δεδομένων
Αυτό το πρόβλημα σημαίνει ότι το σημασιολογικό μοντέλο δεν συνδέεται σε μια πύλη. Όταν δημιουργείτε ένα νέο σημασιολογικό μοντέλο, δημιουργείται αυτόματα μια προέλευση δεδομένων χωρίς διαπιστευτήρια στην πύλη cloud του χρήστη για κάθε σύνδεση cloud. Η πύλη cloud χρησιμοποιείται για την αποθήκευση των διαπιστευτηρίων για συνδέσεις cloud.
Αφού δημιουργήσετε το σημασιολογικό μοντέλο, δημιουργείται μια αυτόματη σύνδεση μεταξύ του μοντέλου σημασιολογίας και μιας κατάλληλης πύλης, η οποία περιέχει αντίστοιχες προελεύσεις δεδομένων για όλες τις συνδέσεις. Η αυτόματη σύνδεση αποτυγχάνει εάν δεν υπάρχει κατάλληλη πύλη ή πύλες.
Εάν χρησιμοποιείτε σημασιολογικά μοντέλα εσωτερικής εγκατάστασης, δημιουργήστε τις προελεύσεις δεδομένων εσωτερικής εγκατάστασης που λείπουν και συνδέστε το σημασιολογικό μοντέλο σε μια πύλη με μη αυτόματο τρόπο, χρησιμοποιώντας τη δυνατότητα Σύνδεση σε πύλη.
Για να εντοπίσετε πύλες με δυνατότητα σύνδεσης, χρησιμοποιήστε τη δυνατότητα Ανακάλυψη πυλών.