Как подключить учетную запись хранения Azure к приложениям логики, не разрешая общий доступ к учетной записи хранения?

Кто-нибудь знает, как подключиться к хранилищу BLOB-объектов Azure с помощью соединителей и триггеров приложения логики? Я не хочу предоставлять общий доступ к моей учетной записи хранения. Он отлично работает, если я разрешаю общедоступный доступ, но когда я ограничиваю доступ только выбранными IP-адресами, он перестает работать, и я не могу подключиться к учетной записи хранения. Скриншот прилагаю.

сообщение об ошибке


person atindra    schedule 07.05.2020    source источник
comment
Вы заставили его работать без использования ISE?   -  person Oliver Nilsen    schedule 05.06.2020


Ответы (2)


Для этой проблемы я предлагаю вам использовать интегрированную среду обслуживания, как сказал Фрэнк в своем ответе. Но здесь я предлагаю вам более подробные инструкции для справки.

1. Создайте виртуальную сеть и убедитесь, что в ней есть как минимум 4 подсети. Вы можете просто сделать это, нажав кнопку «Добавить новую виртуальную сеть» на вкладке «Межсетевые экраны и виртуальные сети» своей учетной записи хранения. введите описание изображения здесь Если вы создаете виртуальную сеть в своей учетной записи хранения "Межсетевые экраны и виртуальные сети", вам необходимо перейти в новую виртуальную сеть и добавить три подсети, чтобы в ней было как минимум 4 подсети ( как показано на скриншоте ниже) и вернитесь на вкладку «Брандмауэр» своей учетной записи хранения, снова добавьте виртуальную сеть (поскольку она может отсутствовать после добавления трех подсетей). введите описание изображения здесь

2. Затем нам нужно создать среду службы интеграции, выбрать виртуальную сеть, которую вы только что создали, внизу страницы создания. введите описание изображения здесь

Создание займет много времени, на создание среды службы интеграции у меня ушло более четырех часов.

3. После создания ISE нам нужно создать приложение логики и выбрать ISE, который мы создали при создании приложения логики. введите описание изображения здесь

4. Подождите около 20 минут, потому что ISE потребуется некоторое время, чтобы быть готовым, даже если он был успешно создан. Затем в приложении логики добавьте соединитель «Хранилище BLOB-объектов Azure» со значком «ISE». введите описание изображения здесь

5. Добавьте действие «создать большой двоичный объект», и он попросит вас создать соединение, создайте соединение, как и раньше, и оно сгенерирует соединение API в той же группе ресурсов вашего приложения логики. . введите описание изображения здесь Подождите несколько минут, пока вы не сможете щелкнуть и открыть соединение API, потому что для этого типа соединения API (с ISE) требуется больше времени, чтобы быть готовым. В противном случае вы увидите текст вроде «не удается найти api azureblob ....» в действии «создать blob» в приложении логики.

6. Теперь мы можем видеть элементы в хранилище в действии «создать большой двоичный объект». введите описание изображения здесь

person Hury Shen    schedule 08.05.2020
comment
Я получаю, что API «azureblob» не может быть найден даже после ожидания. Решение для этого? - person atindra; 10.05.2020
comment
Также соединение API видно в моей группе ресурсов, но на странице ISE вкладка соединения API не открывается и показывает некоторую ошибку. - person atindra; 11.05.2020
comment
Привет, @atindra, я просто удаляю соединение api в группе ресурсов и заново создаю соединение и жду несколько минут, когда я встретил сообщение об ошибке. API 'azureblob' не может быть найден, тогда он работает нормально. Не могли бы вы также попробовать удалить его и восстановить соединение (попробуйте несколько раз). - person Hury Shen; 11.05.2020
comment
Конечно, подойдет. Также я использую код разработчика, может ли это быть причиной ошибки? - person atindra; 11.05.2020
comment
Ваше решение работает, но я должен упомянуть, что использование ISE - очень-очень дорогое решение. если вы делаете это только для приложения Logic. ссылка - person mas; 26.03.2021

Во-первых, убедитесь, что вы разрешили все соответствующие IP-адреса. Найдите все исходящие адреса для вашего региона здесь.

Во-вторых, я хотел бы указать, что - как вы можете видеть на этой странице - все приложения логики, независимо от клиента или подписки, используют одни и те же исходящие IP-адреса. Таким образом, несмотря на то, что вы создаете ограничение, занося в белый список только их, все же существует пробел в безопасности, который может быть для вас приемлемым, а может и неприемлемым.

Вы также можете изучить возможность развертывания приложения логики в интегрированная сервисная среда, которая интегрируется с виртуальной сетью, к которой вы также можете подключить свою учетную запись хранения.

person ChiefMcFrank    schedule 08.05.2020
comment
Я попробовал добавить все IP-адреса для Западной Европы, где находится мое приложение Logic, а также мою учетную запись хранения. К сожалению, у меня это не сработало. У меня есть простой HTTP, запускаемый LA, который отправляет сообщение в очередь. Это не работает, когда я выбираю «Выбранные сети» в брандмауэре для учетной записи хранения и устанавливаю правила для всех исходящих IP-адресов для этого Лос-Анджелеса. Он работает, если я установил брандмауэр на Все сети. Единственное решение - использовать ISE для этой маленькой цели? - person Oliver Nilsen; 05.06.2020
comment
@olivernilsen Извините, я раньше пропустил этот фрагмент документации: docs.microsoft.com/en-us/azure/connectors/ Исходя из этого, я предполагаю, что ваш Лос-Анджелес и учетная запись хранения находятся в одном регионе. Сможете ли вы переехать то или другое в другой регион? - person ChiefMcFrank; 06.06.2020
comment
@OliverNilsen В моем случае сработал подход интегрированной сервисной среды (ISE), мне также не удалось добиться возможности подключения, занеся IP-адреса в белый список. - person atindra; 03.11.2020