Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Tabela zewnętrzna to jednostka schematu, która odwołuje się do danych przechowywanych poza bazą danych usługi Azure Data Explorer. Tabele zewnętrzne można zdefiniować w celu odwołowania się do danych w usłudze Azure Storage lub programie SQL Server i obsługiwać różne metody uwierzytelniania.
Z tego artykułu dowiesz się, jak utworzyć tabelę zewnętrzną, która uwierzytelnia się przy użyciu tożsamości zarządzanej.
Wymagania wstępne
- Baza danych i klaster usługi Azure Data Explorer. Utwórz klaster i bazę danych.
- Uprawnienia administratora bazy danych w bazie danych usługi Azure Data Explorer.
1 — Konfigurowanie tożsamości zarządzanej do użycia z tabelami zewnętrznymi
Istnieją dwa typy tożsamości zarządzanych:
Przypisane przez system: tożsamość przypisana przez system jest połączona z klastrem i jest usuwana po usunięciu klastra. Tylko jedna tożsamość przypisana przez system jest dozwolona dla klastra.
Przypisane przez użytkownika: tożsamość zarządzana przypisana przez użytkownika jest autonomicznym zasobem platformy Azure. Do klastra można przypisać wiele tożsamości przypisanych przez użytkownika.
Wybierz jedną z poniższych kart, aby skonfigurować preferowany typ tożsamości zarządzanej.
Wykonaj poniższe kroki, aby dodać tożsamość przypisaną przez użytkownika do klastra, i zapisz identyfikator obiektu (podmiot zabezpieczeń) do późniejszego użycia.
Uruchom polecenie .alter-merge policy managed_identity. To polecenie ustawia zasady tożsamości zarządzanej w klastrze, które umożliwiają używanie tożsamości zarządzanej z tabelami zewnętrznymi. Zastąp element
<objectId>elementem Identyfikator obiektu (podmiotu zabezpieczeń)..alter-merge cluster policy managed_identity ```[ { "ObjectId": "<objectId>", "AllowedUsages": "ExternalTable" } ]```Uwaga
Aby ustawić zasady dla określonej bazy danych, użyj polecenia
database <DatabaseName>zamiastcluster.
2 - Nadaj tożsamości zarządzanej uprawnienia do zasobów zewnętrznych
Tożsamość zarządzana musi mieć uprawnienia do zasobu zewnętrznego w celu pomyślnego uwierzytelnienia.
Wybierz kartę odpowiedniego typu zasobu zewnętrznego i przypisz wymagane uprawnienia.
Poniższa tabela przedstawia wymagane uprawnienia dla poszczególnych zasobów zewnętrznych. Aby importować dane z zasobu zewnętrznego lub wykonywać w nim zapytania, przyznaj tożsamości zarządzanej uprawnienia do odczytu. Aby wyeksportować dane do zasobu zewnętrznego, przyznaj tożsamości zarządzanej uprawnienia do zapisu.
| Zewnętrzny magazyn danych | Uprawnienia do odczytu | Uprawnienia do zapisu | Udzielanie uprawnień |
|---|---|---|---|
| Azure Blob Storage | Czytelnik danych obiektu blob usługi Storage | Współautor danych obiektu blob usługi Storage | Przypisywanie roli platformy Azure |
| Data Lake Storage Gen2 | Czytelnik danych obiektu blob usługi Storage | Współautor danych obiektu blob usługi Storage | Przypisywanie roli platformy Azure |
3 — Tworzenie tabeli zewnętrznej
Istnieją dwa typy tabel zewnętrznych, które obsługują uwierzytelnianie za pomocą tożsamości zarządzanych: tabele zewnętrzne usługi Azure Storage i tabele zewnętrzne programu SQL Server.
Wybierz jedną z poniższych kart, aby skonfigurować zewnętrzną tabelę usługi Azure Storage lub programu SQL Server.
Aby utworzyć tabelę zewnętrzną usługi Azure Storage, wykonaj następujące czynności:
Utwórz parametry połączenia na podstawie szablonów parametrów połączenia magazynu. Ten ciąg wskazuje zasób, do którego należy uzyskać dostęp, oraz informacje uwierzytelniające. Określ metodę uwierzytelniania tożsamości zarządzanej.
Uruchom polecenie .create or .alter external table, aby utworzyć tabelę. Użyj parametry połączenia z poprzedniego kroku jako argumentu storageConnectionString.
Przykład
Następujące polecenie tworzy MyExternalTable, które odwołuje się do danych w formacie CSV w mycontainer obiektu mystorageaccount w usłudze Azure Blob Storage. Tabela zawiera dwie kolumny: jedną dla liczby całkowitej x i jedną dla ciągu s. Ciąg połączenia kończy się elementem ;managed_identity=system, co oznacza użycie tożsamości zarządzanej przypisanej przez system do uwierzytelniania podczas uzyskiwania dostępu do magazynu danych.
.create external table MyExternalTable (x:int, s:string) kind=storage dataformat=csv
(
h@'https://mystorageaccount.blob.core.windows.net/mycontainer;managed_identity=system'
)
Uwaga
Aby uwierzytelnić się przy użyciu tożsamości zarządzanej przypisanej przez użytkownika, zastąp element system identyfikatorem obiektu tożsamości zarządzanej.