Udostępnij za pośrednictwem


Get tokeny Microsoft Entra ID dla użytkowników za pomocą Azure CLI

Ważne

W tym artykule opisano sposób ręcznego tworzenia tokenów identyfikatorów entra firmy Microsoft dla użytkowników przy użyciu interfejsu wiersza polecenia platformy Azure.

Usługa Databricks nie zaleca ręcznego tworzenia tokenów identyfikatorów entra firmy Microsoft dla użytkowników usługi Azure Databricks. Dzieje się tak, ponieważ każdy token identyfikatora Entra firmy Microsoft jest krótkotrwały, zazwyczaj wygasa w ciągu jednej godziny. Po tym czasie należy ręcznie generate zastępczego tokenu Microsoft Entra ID. Zamiast tego należy użyć jednego z uczestniczących narzędzi lub zestawów SDK, które implementują ujednolicony standard uwierzytelniania klienta usługi Databricks. Te narzędzia i zestawy SDK automatycznie generate i zastępują wygasłe tokeny Microsoft Entra ID, korzystając z uwierzytelniania Azure CLI.

Możesz użyć Azure CLI do uzyskiwania tokenów dostępu Microsoft Entra ID get dla użytkowników.

Uwaga

Możesz również zdefiniować jednostkę usługi w usłudze Azure Active Directory, a następnie get token dostępu microsoft Entra ID dla tej jednostki usługi zamiast dla użytkownika. Zobacz Get Tokeny Microsoft Entra ID dla głównych jednostek usługi.

  1. Get prawidłowy identyfikator subskrypcji platformy Azure dla konta użytkownika, jeśli nie znasz jeszcze tego identyfikatora, wykonując jedną z następujących czynności:

    • Na górnym pasku nawigacyjnym obszaru roboczego usługi Azure Databricks kliknij swoją nazwę użytkownika, a następnie kliknij pozycję Azure Portal. Na wyświetlonej stronie zasobu obszaru roboczego usługi Azure Databricks kliknij pozycję Przegląd na pasku bocznym. Następnie wyszukaj pole Identyfikator subskrypcji, które zawiera identyfikator subskrypcji.

    • Użyj interfejsu wiersza polecenia platformy Azure, aby uruchomić komendę az databricks workspace list, używając opcji --query i -o lub --output, aby zawęzić wyniki. Zastąp adb-0000000000000000.0.azuredatabricks.net ciąg nazwą wystąpienia obszaru roboczego, a nie w tym .https:// W tym przykładzie po 00000000-0000-0000-0000-000000000000/subscriptions/ w danych wyjściowych jest identyfikator subskrypcji.

      az databricks workspace list --query "[?workspaceUrl==\`adb-0000000000000000.0.azuredatabricks.net\`].{id:id}" -o tsv
      
      # /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/my-rg/providers/Microsoft.Databricks/workspaces/my-ws
      

      Jeśli zostanie wyświetlony następujący komunikat, zalogowano się do niewłaściwej dzierżawy: The subscription of '<subscription-id>' doesn't exist in cloud 'AzureCloud'. Aby zalogować się do odpowiedniej dzierżawy, musisz ponownie uruchomić az login polecenie, używając -t opcji lub --tenant , aby określić prawidłowy identyfikator dzierżawy.

      Identyfikator dzierżawy dla obszaru roboczego usługi Azure Databricks można get, uruchamiając polecenie curl -v <per-workspace-URL>/aad/auth i przeglądając dane wyjściowe < location: https://login.microsoftonline.com/00000000-0000-0000-0000-000000000000, where00000000-0000-0000-0000-000000000000 jest identyfikatorem dzierżawy. Zobacz również Get identyfikatory subskrypcji i dzierżawy w Azure Portal.

      az login -t <tenant-id>
      
  2. Po poprawnym identyfikatorze subskrypcji platformy Azure dla konta użytkownika rozpocznij logowanie się do platformy Azure przy użyciu interfejsu wiersza polecenia platformy Azure, aby uruchomić polecenie az login. Po uruchomieniu tego polecenia postępuj zgodnie z instrukcjami wyświetlanymi na ekranie, aby zakończyć logowanie się przy użyciu konta.

    az login
    
  3. Upewnij się, że zalogowano się do właściwej subskrypcji dla zalogowanego użytkownika. W tym celu uruchom polecenie az account set, używając opcji -s lub --subscription, aby określić prawidłowy identyfikator subskrypcji.

    az account set -s <subscription-id>
    
  4. Generate token dostępu Microsoft Entra ID, uruchamiając polecenie az account get-access-token. --resource Użyj opcji , aby określić unikatowy identyfikator zasobu dla usługi Azure Databricks, czyli 2ff814a6-3304-4ab8-85cb-cd0e6f879c1d. Możesz wyświetlić tylko wartość tokenu Microsoft Entra ID w danych wyjściowych polecenia przy użyciu --query opcji i -o lub --output .

    az account get-access-token \
    --resource 2ff814a6-3304-4ab8-85cb-cd0e6f879c1d \
    --query "accessToken" \
    -o tsv
    

Uwaga

Interfejs wiersza polecenia platformy Azure oparty na bibliotece MSAL używa biblioteki Microsoft Authentication Library (MSAL) jako podstawowej biblioteki uwierzytelniania. Jeśli nie możesz pomyślnie użyć tokenu dostępu microsoft Entra ID wygenerowanego przez interfejs wiersza polecenia platformy Azure, możesz spróbować użyć biblioteki MSAL bezpośrednio, aby get token dostępu microsoft Entra ID dla użytkownika. Zobacz Get tokeny Microsoft Entra ID dla użytkowników za pomocą MSAL.