Аутентификация не предоставлена ​​для токена субъекта-службы в API MS Fabric с использованием PythonPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Аутентификация не предоставлена ​​для токена субъекта-службы в API MS Fabric с использованием Python

Сообщение Anonymous »

Я пытаюсь подключиться к OneLake API в Microsoft Fabric, используя Python в VScode.
Пока
  • < li>Зарегистрировало приложение в Azure с этими разрешениями API.
[img]https://i.sstatic .net/CRJba.png[/img]
  • Затем создал секрет для моего субъекта-службы
  • Затем я пытаюсь получить токен с помощью этой функции, используя azure.identity:

Код: Выделить всё

from azure.identity import ClientSecretCredential, AuthenticationRequiredError

def get_access_token(app_id, client_secret, directory_id):
try:
# Create the ClientSecretCredential using the provided credentials
credential = ClientSecretCredential(
client_id=app_id,
client_secret=client_secret,
tenant_id=directory_id
#scope="https://storage.azure.com/.default"
)

# Use the credential to get the access token
token = credential.get_token("https://storage.azure.com/.default").token

return token, credential

except AuthenticationRequiredError as e:
print("Authentication failed. Please check your credentials.")
raise e

except Exception as e:
print("An error occurred while getting the access token:")
print(str(e))
raise e

access_token, credential = get_access_token(app_id, client_secret, directory_id)
Кажется, я получил токен нормально и все такое. Но что-то не так с разрешениями, областью действия или доступом. Потому что, когда я запускаю эту функцию для проверки соединения, я получаю код состояния 400

Код: Выделить всё

def check_connection_with_onelake(access_token):
base_url = "https://onelake.dfs.fabric.microsoft.com/9c3ffd43-b537-4ca2-b9ba-0c59d0094033/Files/sample?resource=file"
token_headers = {
"Authorization": "Bearer " + access_token
}

try:
response = requests.put(base_url, headers=token_headers)

if response.status_code == 200:
print("Connection with OneLake is successful.")
else:
print("Failed to connect with OneLake. Status code:", response.status_code)

except requests.exceptions.RequestException as e:
print("An error occurred while checking the connection:", str(e))

# Assuming 'access_token' is already defined and contains a valid access token
check_connection_with_onelake(access_token)
[*]Я также добавил субъект-службу приложения для пользователей в рабочей области Fabric в качестве администратора.

Изображение

Где мне не хватает доступа и как мне предоставить правильный доступ?
ссылки:
https://learn.microsoft.com/en-us/ Fabric/onelake/onelake-access-api
https://amitchandak.medium.com/on-premi ... ouse-using -токен-d15b8795e349

Подробнее здесь: https://stackoverflow.com/questions/767 ... i-using-py
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Аутентификация Power BI в API ядра dotnet в качестве субъекта-службы.
    Anonymous » » в форуме C#
    0 Ответы
    14 Просмотры
    Последнее сообщение Anonymous
  • Аутентификация Power BI в веб-API ASP.NET Core в качестве субъекта-службы.
    Anonymous » » в форуме C#
    0 Ответы
    20 Просмотры
    Последнее сообщение Anonymous
  • Аутентификация Power BI в веб-API ASP.NET Core в качестве субъекта-службы.
    Anonymous » » в форуме C#
    0 Ответы
    15 Просмотры
    Последнее сообщение Anonymous
  • Аутентификация Power BI в веб-API ASP.NET Core в качестве субъекта-службы.
    Anonymous » » в форуме C#
    0 Ответы
    13 Просмотры
    Последнее сообщение Anonymous
  • Аутентификация Power BI в веб-API ASP.NET Core в качестве субъекта-службы.
    Anonymous » » в форуме C#
    0 Ответы
    14 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Python»