Σημείωμα
Η πρόσβαση σε αυτήν τη σελίδα απαιτεί εξουσιοδότηση. Μπορείτε να δοκιμάσετε να εισέλθετε ή να αλλάξετε καταλόγους.
Η πρόσβαση σε αυτήν τη σελίδα απαιτεί εξουσιοδότηση. Μπορείτε να δοκιμάσετε να αλλάξετε καταλόγους.
Το API ελέγχου ταυτότητας επιτρέπει στις απεικονίσεις να αποκτούν διακριτικά πρόσβασης Microsoft Entra ID (παλαιότερα γνωστό ως Azure AD) για συνδεδεμένους χρήστες, διευκολύνοντας τον έλεγχο ταυτότητας καθολικής σύνδεσης.
Οι διαχειριστές του Power BI μπορούν να ενεργοποιήσουν ή να απενεργοποιήσουν το API μέσω ενός καθολικού διακόπτη. Η προεπιλεγμένη ρύθμιση αποκλείει (απενεργοποιεί) το API.
Το API ισχύει μόνο για απεικονίσεις AppSource και όχι για ιδιωτικές απεικονίσεις. Οι απεικονίσεις που βρίσκονται υπό ανάπτυξη μπορούν να δοκιμαστούν σε λειτουργία εντοπισμού σφαλμάτων πριν από τη δημοσίευσή τους.
Υποστηριζόμενα περιβάλλοντα
Υποστηρίζονται τα ακόλουθα περιβάλλοντα:
- Web
- Επιφάνεια εργασίας
- Επιτραπέζιος υπολογιστής RS
- Mobile
Μη υποστηριζόμενα περιβάλλοντα
Τα παρακάτω περιβάλλοντα δεν υποστηρίζονται ακόμα:
- Υπηρεσία RS
- Ενσωματωμένη ανάλυση
- Ομάδες
Πώς να χρησιμοποιήσετε το API ελέγχου ταυτότητας
Στο αρχείοcapabilities.json , προσθέστε το προνόμιο "AADAuthentication" με ένα καταχωρημένο URI εφαρμογής Microsoft Entra ID για κάθε υποστηριζόμενο cloud. Το Fabric δημιουργεί ένα διακριτικό σύμφωνα με το κοινό που έχει ρυθμιστεί για το τρέχον cloud και το παραδίδει στην απεικόνιση.
Η απεικόνιση μπορεί στη συνέχεια να χρησιμοποιήσει το διακριτικό για έλεγχο ταυτότητας έναντι του αντίστοιχου κοινού, αντιπροσωπεύοντας την υπηρεσία υποστήριξης:
"privileges": [
{
"name": "AADAuthentication",
"parameters": {
"COM": "https://contoso.com",
"CN": "https://contoso.cn"
}
}
]
Στο αρχείο pbiviz.json , ορίστε την έκδοση API σε 5.9.1 ή νεότερη:
Το πρόσφατα εκτεθειμένο AcquireAADTokenService περιέχει δύο μεθόδους:
acquireAADToken: Επιστρέφει ένα ωφέλιμο φορτίο διακριτικού ελέγχου ταυτότητας τύπου
AcquireAADTokenResultγια την απεικόνιση ή null, εάν δεν είναι δυνατή η λήψη του./** * Enum representing the various clouds supported by the Authentication API. */ export const enum CloudName { COM = "COM", // Commercial Cloud CN = "CN", // China Cloud GCC = "GCC", // US Government Community Cloud GCCHIGH = "GCCHIGH", // US Government Community Cloud High DOD = "DOD", // US Department of Defense Cloud } /** * Interface representing information about the user associated with the token. */ export interface AcquireAADTokenUserInfo { userId?: string; // Unique identifier for the user tenantId?: string; // Unique identifier for the tenant } /** * Interface representing information about the fabric environment. */ export interface AcquireAADTokenFabricInfo { cloudName?: CloudName; // Name of the cloud environment } /** * Interface representing the result of acquiring a Microsoft Entra ID token. */ export interface AcquireAADTokenResult { accessToken?: string; // Access token issued by Microsoft Entra ID expiresOn?: number; // Expiration time of the access token userInfo?: AcquireAADTokenUserInfo; // Information about the user associated with the token fabricInfo?: AcquireAADTokenFabricInfo; // Information about the fabric environment }acquireAADTokenstatus: Επιστρέφει μία από τις ακόλουθες καταστάσεις προνομίων που σχετίζονται με την απόκτηση του διακριτικού.
- Επιτρέπεται: Το προνόμιο επιτρέπεται στο τρέχον περιβάλλον.
- NotDeclared: Η δήλωση προνομίων λείπει στην ενότητα οπτικών δυνατοτήτων.
- NotSupported: Το προνόμιο δεν υποστηρίζεται στο τρέχον περιβάλλον.
- DisabledByAdmin: Ο διαχειριστής του Fabric αρνήθηκε τη χρήση προνομίων.
Το παρακάτω δείγμα κώδικα δείχνει πώς μπορείτε να αποκτήσετε ένα διακριτικό Microsoft Entra ID χρησιμοποιώντας το API:
// Step 1: Check the status of AAD token acquisition
const acquireTokenStatus = await this.acquireAADTokenService.acquireAADTokenstatus();
// Step 2: Verify if acquiring the token is allowed
if (acquireTokenStatus === PrivilegeStatus.Allowed) {
// Step 3: Acquire the Microsoft Entra ID token
const acquireAADTokenResult: AcquireAADTokenResult = await this.acquireAADTokenService.acquireAADToken();
// Step 4: Confirm successful acquisition of the access token
if (acquireAADTokenResult.accessToken) {
// Step 5: Call your backend API with the obtained token
}
}
// Step 6: Handle unsuccessful AAD token acquisition
Ζητήματα προς εξέταση και περιορισμοί
Η απόκτηση διακριτικού αποκλείεται εάν ισχύει οποιαδήποτε από τις ακόλουθες συνθήκες:
Ο διακόπτης μισθωτή είναι απενεργοποιημένος.
Ο χρήστης δεν είναι συνδεδεμένος (στην επιφάνεια εργασίας).
Ο ISV δεν προεξουσιοδότησε την εφαρμογή Power BI.
Η μορφή της παραμέτρου προνομίου AADAuthentication δεν είναι έγκυρη.
Η απεικόνιση δεν έχει εγκριθεί δημόσια ή δεν είναι απεικόνιση εντοπισμού σφαλμάτων.
Η υπηρεσία παρασκηνίου της απεικόνισης, που έχει ρυθμιστεί ως κοινό από την απεικόνιση, δεν έχει τις κατάλληλες συγκαταθέσεις για το API Graph στον μισθωτή καταναλωτή που χρησιμοποιεί την απεικόνιση. Για περισσότερες πληροφορίες σχετικά με τη συγκατάθεση, ανατρέξτε στο θέμα Συγκατάθεση διαχειριστή μισθωτή.