Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
В этой статье показано, как безопасно подключиться к конечной точке Blob-хранилища учетной записи службы хранения Azure с помощью клиента SFTP. После подключения вы можете отправлять и скачивать файлы, а также изменять списки управления доступом (ACL) в файлах и папках.
Дополнительную информацию о поддержке SFTP в Хранилище BLOB-объектов Azure см. в разделе Протокол SFTP в Хранилище BLOB-объектов Azure.
Предпосылки
Включите поддержку SFTP для хранилища BLOB-объектов Azure. См. раздел "Включение или отключение поддержки SFTP".
Авторизация доступа к клиентам SFTP. См. статью "Авторизация доступа к клиентам".
При подключении из локальной сети убедитесь, что клиент разрешает исходящие подключения через порт 22, используемый SFTP.
Подключение SFTP-клиента
Для безопасного подключения и передачи файлов можно использовать любой клиент SFTP. В следующем примере показан сеанс Windows PowerShell, использующий Open SSH.
PS C:\Users\temp> sftp contoso4.contosouser@contoso4.blob.core.windows.net
Имя пользователя SFTP — storage_account_name
.username
. В приведенном storage_account_name
выше примере используется contoso4, а username
также contosouser. Объединенное имя пользователя становится contoso4.contosouser. Конечная точка службы BLOB-объектов — "contoso4.blob.core.windows.net".
Чтобы завершить подключение, может потребоваться ответить на один или несколько запросов. Например, если вы настроили локального пользователя с проверкой подлинности паролем, вам будет предложено ввести этот пароль. Вам также может быть предложено доверять ключу узла. Допустимые ключи узла публикуются здесь.
Примечание.
SFTP работает через конечную точку Blob Storage (blob.core.windows.net) и НЕ конечную точку Data Lake Storage (dfs.core.windows.net). Поэтому конечные точки Data Lake Storage, такие как contoso4.contosouser@contoso4.dfs.core.windows.net, не поддерживаются.
Подключение с помощью личного домена
Если вы хотите подключиться к конечной точке службы BLOB-объектов с использованием пользовательского домена, строка подключения — это myaccount.myuser@customdomain.com
. Если для пользователя не указан домашний каталог, то строка подключения — myaccount.mycontainer.myuser@customdomain.com
.
Внимание
Убедитесь, что поставщик DNS не запрашивает прокси-запросы, так как это может привести к истечении времени ожидания подключения.
Сведения о сопоставлении пользовательского домена с конечной точкой службы Azure Blob Storage см. в статье "Сопоставление пользовательского домена с конечной точкой службы Azure Blob Storage".
Подключение с помощью частной конечной точки
Если вы хотите подключиться к конечной точке службы BLOB при помощи частной конечной точки, то строка подключения — myaccount.myuser@myaccount.privatelink.blob.core.windows.net
. Если домашний каталог не указан для пользователя, то он myaccount.mycontainer.myuser@myaccount.privatelink.blob.core.windows.net
.
Примечание.
Убедитесь, что вы измените конфигурацию сети на "Включено из выбранных виртуальных сетей и IP-адресов", а затем выберите частную конечную точку. В противном случае конечная точка службы Blob останется общедоступной.
Подключение с помощью маршрутизации через Интернет
Если вы хотите подключиться к конечной точке службы BLOB-объектов с помощью маршрутизации через Интернет, используйте строку подключения myaccount.myuser@myaccount-internetrouting.blob.core.windows.net
. Если домашний каталог не указан для пользователя, то он myaccount.mycontainer.myuser@myaccount-internetrouting.blob.core.windows.net
.
Передача данных
После подключения можно отправить и скачать файлы. В следующем примере отправляется файл с именем logfile.txt
с помощью активного сеанса Open SSH.
sftp> put logfile.txt
Uploading logfile.txt to /mydirectory/logfile.txt
logfile.txt
100% 19 0.2kb/S 00.00
После завершения переноса вы сможете просматривать файл и управлять им на портале Azure.
Примечание.
Портал Azure использует REST API для объектов BLOB и Storage Data Lake. Возможность взаимодействия с загруженным файлом на портале Azure демонстрирует взаимодействие между SFTP и REST.
Инструкции по подключению и передаче файлов см. в документации клиента SFTP.
Изменение ACL файла или каталога
Вы можете изменить уровень разрешений собственного пользователя, группы владения и всех других пользователей ACL с помощью клиента SFTP. Вы также можете изменить владельца пользователя и владельца группы. Дополнительные сведения о поддержке ACL для клиентов SFTP см. в разделе ACLs.
Примечание.
Теперь пользователи могут изменять собственные группы и разрешения большого двоичного объекта или каталога без разрешений контейнера. Это новое усовершенствование функции, добавленное на этапе общедоступной доступности списков управления доступом для локальных пользователей. Для любого пользователя, который не является владельцем, разрешения контейнера по-прежнему требуются.
Изменение разрешений
Чтобы изменить уровень разрешений собственного пользователя, группы владения или всех других пользователей ACL, локальный пользователь должен иметь Modify Permission
разрешение. См. раздел "Предоставление разрешений контейнерам".
Пример ниже выводит в консоль список управления доступом (ACL) каталога. Затем использует chmod
команду, чтобы задать для ACL значение 777
. Каждый 7
— это числовая форма rwx
(чтение, запись и выполнение). Таким образом 777
предоставляет пользователю, владеющей группе и всем остальным пользователям разрешения на чтение, запись и выполнение. Затем в этом примере выводится обновленный список ACL в консоль. Чтобы узнать больше о числовых и кратких формах ACL, смотрите Краткие формы разрешений.
sftp> ls -l
drwxr-x--- 1234 5678 0 Mon, 08 Jan 2024 16:53:25 GMT dir1
drwxr-x--- 0 0 0 Mon, 16 Oct 2023 12:18:08 GMT dir2
sftp> chmod 777 dir1
Changing mode on /dir1
sftp> ls -l
drwxrwxrwx 1234 5678 0 Mon, 08 Jan 2024 16:54:06 GMT dir1
drwxr-x--- 0 0 0 Mon, 16 Oct 2023 12:18:08 GMT dir2
Примечание.
Добавление или изменение записей ACL для именованных пользователей, именованных групп и именованных субъектов безопасности еще не поддерживается.
Изменение пользователя-владельца
Чтобы изменить владельца каталога или блоба, локальный пользователь должен иметь Modify Ownership
разрешение. См. раздел "Предоставление разрешений контейнерам".
Пример ниже выводит в консоль список управления доступом (ACL) каталога. Идентификатор собственного пользователя 0
. В этом примере используется команда chown
для установки идентификатора пользователя-владельца в 1234
и выводит изменение на консоль.
sftp> ls -l
drwxr-x--- 0 0 0 Mon, 08 Jan 2024 16:00:12 GMT dir1
drwxr-x--- 0 0 0 Mon, 16 Oct 2023 12:18:08 GMT dir2
sftp> chown 1234 dir1
Changing owner on /dir1
sftp> ls -l
drwxr-x--- 1234 0 0 Mon, 08 Jan 2024 16:52:52 GMT dir1
drwxr-x--- 0 0 0 Mon, 16 Oct 2023 12:18:08 GMT dir2
sftp>
Изменение группы владельцев
Чтобы изменить группу владельцев каталога или большого двоичного объекта, локальный пользователь должен иметь Modify Ownership
разрешение. См. раздел "Предоставление разрешений контейнерам".
Пример ниже выводит в консоль список управления доступом (ACL) каталога. Идентификатор группы владельцев 0
. В этом примере используется команда chgrp
для задания идентификатора группы владельцев 5678
и вывода изменений в консоль.
sftp> ls -l
drwxr-x--- 1234 0 0 Mon, 08 Jan 2024 16:52:52 GMT dir1
drwxr-x--- 0 0 0 Mon, 16 Oct 2023 12:18:08 GMT dir2
sftp> chgrp 5678 dir1
Changing group on /dir1
sftp> ls -l
drwxr-x--- 1234 5678 0 Mon, 08 Jan 2024 16:53:25 GMT dir1
drwxr-x--- 0 0 0 Mon, 16 Oct 2023 12:18:08 GMT dir2
Связанный контент
- Поддержка протокола передачи файлов SSH (SFTP) для Azure Blob Storage
- Включение или отключение поддержки протокола передачи файлов SSH (SFTP) в Хранилище BLOB-объектов Azure
- Авторизация доступа к хранилищу BLOB-объектов Azure из SFTP-клиента
- Ограничения и известные проблемы с поддержкой протокола SFTP в Azure Blob Storage
- Поддержка ключей хоста для протокола SFTP (SSH File Transfer Protocol) в хранилище Azure Blob
- Факторы производительности протокола SFTP SSH в хранилище BLOB-объектов Azure