Я пытаюсь запустить этот код Python для доступа к общему файловому ресурсу Azure в приложениях-контейнерах Azure, это всегда вызывает эту ошибку. Поскольку это приложение будет работать в приложениях-контейнерах, мне придется использовать управляемое удостоверение для доступа ко всем компонентам Azure.
Есть ли правильный способ доступа к общему файловому ресурсу в приложениях-контейнерах Azure.
Ошибка:
azure.core.exceptions.ServiceRequestError: [SSL: UNEXPECTED_EOF_WHILE_READING] EOF occurred in violation of protocol (_ssl.c:1007)
Код Python:
from azure.identity import DefaultAzureCredential
from azure.storage.fileshare import ShareServiceClient
from azure.core.pipeline.transport import RequestsTransport
from azure.core.pipeline.policies import SansIOHTTPPolicy
import config
import os
class FileIntentPolicy(SansIOHTTPPolicy):
def on_request(self, request):
# Required for Azure Files + AAD
request.http_request.headers["x-ms-file-request-intent"] = "backup"
def test_azure_storage():
account_name = "account_name"
account_key = "account_key"
share_name = "file_share_name"
connection_string = "DefaultEndpointsProtocol=https;AccountName={account_name};AccountKey={account_key};EndpointSuffix=core.windows.net"
print("started")
try:
UserAssignedIdentityClientId = os.environ.get("UserAssignedIdentityClientId")
credential = DefaultAzureCredential(managed_identity_client_id=UserAssignedIdentityClientId)
transport = RequestsTransport(connection_verify=True)
service_client = ShareServiceClient(
account_url=f"https://{account_name}.file.core.windows.net/{share_name}",
credential=credential,
token_intent="backup",
transport=transport,
per_call_policies=[FileIntentPolicy()]
)
share_client = service_client.get_share_client(share_name)
dir_client = share_client.get_directory_client("mainfolder/subfolder")
print("Folders:")
for item in share_client.list_directories_and_files():
if item.is_directory:
print(item.name)
except Exception as e:
print("Test failed for azure storage")
print(e)```
Подробнее здесь: https://stackoverflow.com/questions/798 ... d-identity
Python: проблема доступа к общему файловому ресурсу Azure с использованием управляемого удостоверения ⇐ Python
Программы на Python
1765712905
Anonymous
Я пытаюсь запустить этот код Python для доступа к общему файловому ресурсу Azure в приложениях-контейнерах Azure, это всегда вызывает эту ошибку. Поскольку это приложение будет работать в приложениях-контейнерах, мне придется использовать управляемое удостоверение для доступа ко всем компонентам Azure.
Есть ли правильный способ доступа к общему файловому ресурсу в приложениях-контейнерах Azure.
Ошибка:
azure.core.exceptions.ServiceRequestError: [SSL: UNEXPECTED_EOF_WHILE_READING] EOF occurred in violation of protocol (_ssl.c:1007)
Код Python:
from azure.identity import DefaultAzureCredential
from azure.storage.fileshare import ShareServiceClient
from azure.core.pipeline.transport import RequestsTransport
from azure.core.pipeline.policies import SansIOHTTPPolicy
import config
import os
class FileIntentPolicy(SansIOHTTPPolicy):
def on_request(self, request):
# Required for Azure Files + AAD
request.http_request.headers["x-ms-file-request-intent"] = "backup"
def test_azure_storage():
account_name = "account_name"
account_key = "account_key"
share_name = "file_share_name"
connection_string = "DefaultEndpointsProtocol=https;AccountName={account_name};AccountKey={account_key};EndpointSuffix=core.windows.net"
print("started")
try:
UserAssignedIdentityClientId = os.environ.get("UserAssignedIdentityClientId")
credential = DefaultAzureCredential(managed_identity_client_id=UserAssignedIdentityClientId)
transport = RequestsTransport(connection_verify=True)
service_client = ShareServiceClient(
account_url=f"https://{account_name}.file.core.windows.net/{share_name}",
credential=credential,
token_intent="backup",
transport=transport,
per_call_policies=[FileIntentPolicy()]
)
share_client = service_client.get_share_client(share_name)
dir_client = share_client.get_directory_client("mainfolder/subfolder")
print("Folders:")
for item in share_client.list_directories_and_files():
if item.is_directory:
print(item.name)
except Exception as e:
print("Test failed for azure storage")
print(e)```
Подробнее здесь: [url]https://stackoverflow.com/questions/79846995/python-azure-file-share-access-issue-using-managed-identity[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия