Строки подключения службы хранилища
Область применения: ✅Microsoft Fabric✅Azure Data Explorer
Служба Kusto может взаимодействовать с внешними службами хранилища. Например, можно создать служба хранилища Azure внешние таблицы для запроса данных, хранящихся во внешних хранилищах.
Поддерживаются следующие типы внешнего хранилища:
- Хранилище BLOB-объектов Azure
- Azure Data Lake Storage 2-го поколения
- Хранилище Azure Data Lake Storage 1-го поколения
- Amazon S3
Каждый тип хранилища имеет соответствующие форматы строка подключения, используемые для описания ресурсов хранилища и их доступа. Формат URI используется для описания этих ресурсов хранилища и свойств, необходимых для доступа к ним, таких как учетные данные безопасности.
Примечание.
Поддержка веб-служб HTTP ограничена извлечением ресурсов из произвольных веб-служб HTTP. Другие операции, такие как запись ресурсов, не поддерживаются.
Шаблоны строка подключения хранилища
Каждый тип хранилища имеет другой формат строка подключения. В следующей таблице приведены шаблоны строка подключения для каждого типа хранилища.
Тип хранилища | Схема | Шаблон URI |
---|---|---|
Хранилище BLOB-объектов Azure | https:// |
https:// Контейнер StorageAccountName.blob.core.windows.net/ [/ BLOBName][CallerCredentials] |
Azure Data Lake Storage 2-го поколения | https:// |
https:// StorageAccountName Filesystem[/ PathToDirectoryOrFile][CallerCredentials].dfs.core.windows.net/ |
Azure Data Lake Storage 2-го поколения | abfss:// |
abfss:// Filesystem@ StorageAccountName.dfs.core.windows.net/ [PathToDirectoryOrFile][CallerCredentials] |
Хранилище Azure Data Lake Storage 1-го поколения | adl:// |
adl:// StorageAccountName.azuredatalakestore.net/ PathToDirectoryOrFile[CallerCredentials] |
Amazon S3 | https:// |
https:// Объект BucketName RegionName.amazonaws.com/ .s3. [CallerCredentials] |
Веб-службы HTTP | https:// |
https:// / Имя узла PathAndQuery |
Примечание.
Чтобы предотвратить отображение секретов в трассировках, используйте запутываемые строковые литералы.
Способы проверки подлинности в хранилище
Чтобы взаимодействовать с внешним хранилищем, необходимо указать средства проверки подлинности в рамках строка подключения внешнего хранилища. Строка подключения определяет ресурс для доступа к сведениям о проверке подлинности и его проверке подлинности.
Поддерживаются следующие методы проверки подлинности:
- Ключ общего доступа (SAS)
- Маркер доступа Microsoft Entra
- Ключ доступа к учетной записи хранения
- Ключи программного доступа Amazon Web Services
- URL-адрес предварительно назначенного URL-адреса Amazon Web Services S3
Поддержка проверки подлинности по типу хранилища
В следующей таблице приведены доступные методы проверки подлинности для различных внешних типов хранилища.
Authentication method | Доступно в хранилище BLOB-объектов? | Доступно в Azure Data Lake Storage 2-го поколения? | Доступно в Azure Data Lake Storage 1-го поколения? | Доступно в Amazon S3? | Когда следует использовать этот метод? |
---|---|---|---|---|---|
Олицетворение | ✔️ | ✔️ | ✔️ | ❌ | Используйте для потоков, когда требуется сложный контроль доступа к внешнему хранилищу. Например, в потоках непрерывного экспорта. Вы также можете ограничить доступ к хранилищу на уровне пользователя. |
Управляемое удостоверение | ✔️ | ✔️ | ✔️ | ❌ | Используйте в автоматических потоках, где субъект Microsoft Entra не может быть производным для выполнения запросов и команд. Управляемые удостоверения — это единственное решение для проверки подлинности. |
Ключ общего доступа (SAS) | ✔️ | ✔️ | ❌ | ❌ | Маркеры SAS имеют время окончания срока действия. Используется при доступе к хранилищу в течение ограниченного времени. |
Маркер доступа Microsoft Entra | ✔️ | ✔️ | ✔️ | ❌ | Маркеры Microsoft Entra имеют срок действия. Используется при доступе к хранилищу в течение ограниченного времени. |
Ключ доступа к учетной записи хранения | ✔️ | ✔️ | ❌ | ❌ | Когда необходимо получить доступ к ресурсам на постоянной основе. |
Ключи программного доступа Amazon Web Services | ❌ | ❌ | ❌ | ✔️ | Когда необходимо получить доступ к ресурсам Amazon S3 на постоянной основе. |
URL-адрес предварительно назначенного URL-адреса Amazon Web Services S3 | ❌ | ❌ | ❌ | ✔️ | Если вам нужно получить доступ к ресурсам Amazon S3 с заданным URL-адресом. |
Имперсонация
Kusto олицетворяет основное удостоверение запрашивающего пользователя для доступа к ресурсу. Чтобы использовать олицетворение, добавьте ;impersonate
в строка подключения.
Пример |
---|
"https://fabrikam.blob.core.windows.net/container/path/to/file.csv;impersonate" |
Субъект должен иметь необходимые разрешения для выполнения операции. Например, в Хранилище BLOB-объектов Azure для чтения из большого двоичного объекта субъекту требуется роль средства чтения данных BLOB-объектов хранилища и экспортировать его в большой двоичный объект, которому требуется роль участника данных BLOB-объектов хранилища. Дополнительные сведения см. в разделе Хранилище BLOB-объектов Azure / Data Lake Storage 2-го поколения управления доступом или Data Lake Storage 1-го поколения контроля доступа.
Управляемое удостоверение
Azure Data Explorer выполняет запросы от имени управляемого удостоверения и использует его удостоверение для доступа к ресурсам. Для управляемого удостоверения, назначаемого системой, добавьте ;managed_identity=system
в строка подключения. Для управляемого удостоверения, назначаемого пользователем, добавьте ;managed_identity={object_id}
в строка подключения.
Тип управляемого удостоверения | Пример |
---|---|
Назначаемое системой | "https://fabrikam.blob.core.windows.net/container/path/to/file.csv;managed_identity=system" |
Назначаемое пользователем | "https://fabrikam.blob.core.windows.net/container/path/to/file.csv;managed_identity=12345678-1234-1234-1234-1234567890ab" |
Управляемое удостоверение должно иметь необходимые разрешения для выполнения операции. Например, в Хранилище BLOB-объектов Azure для чтения из управляемого удостоверения требуется роль средства чтения данных BLOB-объектов хранилища, а для экспорта в управляемый идентификатор требуется роль участника данных BLOB-объектов хранилища. Дополнительные сведения см. в разделе Хранилище BLOB-объектов Azure / Data Lake Storage 2-го поколения управления доступом или Data Lake Storage 1-го поколения контроля доступа.
Маркер общего доступа (SAS)
В портал Azure создайте маркер SAS с необходимыми разрешениями.
Например, чтобы прочитать из внешнего хранилища разрешения на чтение и список, а также экспортировать в внешнее хранилище, укажите разрешения на запись. Дополнительные сведения см. в статье об делегировании доступа с помощью подписанного URL-адреса.
Используйте URL-адрес SAS в качестве строка подключения.
Пример |
---|
"https://fabrikam.blob.core.windows.net/container/path/to/file.csv?sv=...&sp=rwd" |
Маркер доступа Microsoft Entra
Чтобы добавить маркер доступа Microsoft Entra в кодировке Base-64, добавьте ;token={AadToken}
его в строка подключения. Маркер должен быть для ресурса https://storage.azure.com/
.
Дополнительные сведения о создании маркера доступа Microsoft Entra см. в статье о получении маркера доступа для авторизации.
Пример |
---|
"https://fabrikam.blob.core.windows.net/container/path/to/file.csv;token=1234567890abcdef1234567890abcdef1234567890abc..." |
Ключ доступа к учетной записи хранения
Чтобы добавить ключ доступа к учетной записи хранения, добавьте ключ в строка подключения. В Хранилище BLOB-объектов Azure добавьте ;{key}
строка подключения. Для Azure Data Lake Storage 2-го поколения добавьте ;sharedkey={key}
строка подключения.
Storage account | Пример |
---|---|
Хранилище BLOB-объектов Azure | "https://fabrikam.blob.core.windows.net/container/path/to/file.csv;ljkAkl...==" |
Azure Data Lake Storage 2-го поколения | "abfss://fs@fabrikam.dfs.core.windows.net/path/to/file.csv;sharedkey=sv=...&sp=rwd" |
Ключи программного доступа Amazon Web Services
Чтобы добавить ключи доступа к Amazon Web Services, добавьте ;AwsCredentials={ACCESS_KEY_ID},{SECRET_ACCESS_KEY}
его в строка подключения.
Пример |
---|
"https://yourbucketname.s3.us-east-1.amazonaws.com/path/to/file.csv;AwsCredentials=AWS1234567890EXAMPLE,1234567890abc/1234567/12345678EXAMPLEKEY" |
URL-адрес предварительно назначенного URL-адреса Amazon Web Services S3
Используйте предварительно подписанный URL-адрес S3 в качестве строка подключения.
Пример |
---|
"https://yourbucketname.s3.us-east-1.amazonaws.com/file.csv?12345678PRESIGNEDTOKEN" |
См. также
Примеры использования строка подключения хранилища см. в следующих примерах: