Как получить файл wsdl с частного сервера на azure - PullRequest
0 голосов
/ 23 января 2020

Я хочу импортировать wsdl с частного сервера на azure. Они (владельцы серверов) выдали нам сертификат, а также внесли в белый список исходящие IP-адреса моей службы Azure. Я добавил сертификат закрытого ключа в свой сервис Azure.

После этого я следовал этой статье , создал новый экземпляр управления API и попытался импортировать файл wsdl с URL-адреса их сервера, но он выдает мне следующую ошибку " Невозможно загрузить указанное файл. Убедитесь, что URL-адрес действителен, а файл общедоступен."

Было бы легко, если бы у меня была виртуальная машина и IP-адреса из белого списка. Я мог бы использовать инструмент тестирования SoapUI на IP-машине из белого списка, в которой я могу также предоставить сертификат p12 / pk c, но я не могу сделать это на azure. Любая помощь будет оценена!

1 Ответ

1 голос
/ 29 января 2020

Поскольку в белый список включены только исходящие IP-адреса вашей службы приложений, запрос к частному серверу может поступать только оттуда. И APIM (и прокси-сервер CORS, используемый для загрузки WSDL) имеют разные IP-адреса.

Одним из способов решения этой проблемы является использование в службе приложений простого прокси-приложения, которое передает запросы на частный сервер (с некоторыми безопасность, конечно) и использовать этот URL для загрузки WSDL. Кроме того, в APIM вы бы установили в качестве конечной точки прокси бэкэнд импортированного API.

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

  • вручную получить файл WSDL и загрузить его

  • Создать API в APIM который просто возвращает WSDL

Кроме того, обратите внимание, что исходящие IP-адреса как для APIM , так и службы приложений могут изменяться с указанием c изменения конфигурации.

...