В настоящее время я использую Python для чтения файла из хранилища BLOB-объектов Azure и сохранения его в кадре данных.Для проверки подлинности хранилища больших двоичных объектов я извлекаю ключ учетной записи хранилища из хранилища ключей Azure, используя учетные данные участника службы.
Мой код выглядит следующим образом:
from azure.keyvault import KeyVaultClient, KeyVaultAuthentication
from azure.common.credentials import ServicePrincipalCredentials
def auth_callback(server, resource, scope):
credentials = ServicePrincipalCredentials(
client_id = '',
client_secret='',
tenant = '',
resource = "https://samplename.vault.azure.net/"
)
token = credentials.token
return token['token_type'], token['access_token']
client = KeyVaultClient(KeyVaultAuthentication(auth_callback))
key_bundle = client.get_key('https://samplename.vault.azure.net/', '','')
json_key = key_bundle.key
Однако я должен сохранить ключ участника службы внутри кода, что, на мой взгляд, не лучшая практика.
Как мне избежать этого?
Я также думал о том, чтобы сохранить учетные данные участника службы в отдельном файле конфигурации, хранящемся в хранилище больших двоичных объектов, и затем прочитать его из Python.Но это также предполагает, в конечном итоге, сохранение учетных данных субъекта службы tee в текстовом файле.
Я запускаю Python из пакета Azure.