Udostępnij za pośrednictwem


Uwierzytelnianie za pośrednictwem protokołu HTTPS

Dotyczy: ✅Microsoft Fabric✅Azure Data Explorer

Aby wchodzić w interakcję z bazą danych za pośrednictwem protokołu HTTPS, podmiot zabezpieczeń wysyłający żądanie musi uwierzytelniać się przy użyciu nagłówka żądania HTTP Authorization .

Składnia

Authorization:Bearer AccessToken

Dowiedz się więcej na temat konwencji składni.

Parametry

Nazwisko Type Wymagania opis
AccessToken string ✔️ Token dostępu firmy Microsoft Entra dla usługi.

Pobranie tokenu dostępu

Istnieje wiele różnych metod uzyskiwania tokenu dostępu firmy Microsoft Entra. Aby dowiedzieć się więcej, zobacz Uwierzytelnianie użytkowników i uwierzytelnianie aplikacji.

Uzyskiwanie tokenu dostępu dla podmiotu zabezpieczeń użytkownika przy użyciu interfejsu wiersza polecenia platformy Azure

Poniższe kroki zwracają token dostępu dla podmiotu zabezpieczeń użytkownika wysyłającego żądanie. Upewnij się, że podmiot zabezpieczeń użytkownika ma dostęp do zasobu, do którego planujesz uzyskać dostęp. Aby uzyskać więcej informacji, zobacz Kontrola dostępu oparta na rolach.

  1. Zaloguj się do interfejsu wiersza polecenia platformy Azure.

    az login --output table
    
  2. Znajdź wiersz, w którym znajduje się kolumna Default true. Upewnij się, że subskrypcja w tym wierszu jest subskrypcją, dla której chcesz utworzyć token dostępu firmy Microsoft Entra. Aby znaleźć informacje o subskrypcji, zobacz Pobieranie identyfikatorów subskrypcji i dzierżaw w witrynie Azure Portal. Jeśli musisz przełączyć się do innej subskrypcji, uruchom jedno z następujących poleceń.

    az account set --subscription <SUBSCRIPTION_ID>
    
    az account set --name "<SUBSCRIPTION_NAME>"
    
  3. Uruchom następujące polecenie, aby uzyskać token dostępu.

    az account get-access-token \
      --resource "https://api.kusto.windows.net" \
      --query "accessToken"
    

Uzyskiwanie tokenu dostępu dla jednostki usługi przy użyciu interfejsu wiersza polecenia platformy Azure

Jednostki usługi Microsoft Entra reprezentują aplikacje lub usługi, które wymagają dostępu do zasobów, zwykle w scenariuszach nieinterakcyjnych, takich jak wywołania interfejsu API. Poniższe kroki zawierają instrukcje tworzenia jednostki usługi i uzyskiwania tokenu elementu nośnego dla tego podmiotu zabezpieczeń.

  1. Zaloguj się do interfejsu wiersza polecenia platformy Azure.

    az login --output table
    
  2. Znajdź wiersz, w którym znajduje się kolumna Default true. Upewnij się, że subskrypcja w tym wierszu jest subskrypcją, w ramach której chcesz utworzyć jednostkę usługi. Aby znaleźć informacje o subskrypcji, zobacz Pobieranie identyfikatorów subskrypcji i dzierżaw w witrynie Azure Portal. Jeśli musisz przełączyć się do innej subskrypcji, uruchom jedno z następujących poleceń.

    az account set --subscription <SUBSCRIPTION_ID>
    
    az account set --name "<SUBSCRIPTION_NAME>"
    
  3. Tworzenie jednostki usługi. To następujące polecenie tworzy jednostkę usługi Entra firmy Microsoft i zwraca wartość appId, displayName, passwordi tenantId dla jednostki usługi.

    az ad sp create-for-rbac -n <SERVICE_PRINCIPAL_NAME> 
    
  4. Udziel jednostce aplikacji dostępu do bazy danych. Na przykład w kontekście bazy danych użyj następującego polecenia, aby dodać podmiot zabezpieczeń jako użytkownik.

    .add database <DATABASE> users ('aadapp=<appId>;<tenantId>')
    

    Aby dowiedzieć się więcej o różnych rolach i sposobach ich przypisywania, zobacz Zarządzanie rolami zabezpieczeń.

  5. Wyślij żądanie HTTP, aby zażądać tokenu dostępu. Zastąp <tenantId>wartości , <appId>i <password> wartościami uzyskanymi z poprzedniego polecenia. To żądanie zwraca obiekt JSON zawierający token dostępu, którego można użyć jako wartości nagłówka Authorization w żądaniach.

    curl -X POST https://login.microsoftonline.com/<tenantId>/oauth2/token \
      -F grant_type=client_credentials \
      -F client_id=<appId> \
      -F client_secret=<password> \
      -F resource=https://api.kusto.windows.net