2016-01-03 4 views
0

У меня есть веб-сайт, размещенный на Azure. webjob мы будем работать по требованию. У меня есть человек (другой отдел/разная компания) всякий раз, когда он хочет, чтобы этот веб-сайт был запущен, он должен его запустить. но без доступа к лазурному веб-сайту нам не разрешается предоставлять ему доступ к лазурному рисунку.Запустите Azure Webjob по URL

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

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

+1

Можно ли запускать задание, наблюдая за очередью Azure? Вы могли бы предоставить пользователю простой сайт за регистрацией, который просто выгружает сообщение в очередь, и веб-сайт заберет его. – Crowcoder

ответ

2

Существует несколько способов запуска WebJob OnDemand. Однако в настоящее время все они требуют доступа к учетной записи Azure и/или веб-приложения. Если вы хотите предоставить кому-то доступ к , запустите только задание, тогда вы можете создать простой сайт с пользовательским интерфейсом, который позволяет им ссылаться на задание, где вы реализуете любую схему аутентификации, которую вы хотите для сайта.

Реализация сайта может затем выполнить задание посредством запроса HTTP POST с использованием специально созданного «триггерного URI», как описано в this post. Как вы можете видеть, этот URI включает в себя основные учетные данные для веб-приложения, поэтому вы не можете просто сказать им, чтобы они вызывали это напрямую.

Еще один интересный вариант для вас - использовать IFTTT. Вы можете создать простой «рецепт», который вызывает задание через HTTP POST, как указано выше, используя «Канал разработчика» для действия «Это», но, что важно, вы можете настроить источник «Этот», который будет запущен на основе множества разных входов - например когда отправляется электронное письмо или SMS-сообщение, телефонный звонок и т. д. Затем вы можете настроить его, чтобы ваш друг только отправил электронное письмо или текст, чтобы запустить задание. Таким образом, у них нет доступа к учетным данным вашего веб-приложения. Для себя вы также можете использовать IFTTT "Do Button" app на своем телефоне, чтобы запустить задание нажатием кнопки на вашем телефоне!

+1

Фактически это можно установить, используя RBAC (управление доступом на основе ролей), хотя это немного связано. Я могу описать шаги в отдельном ответе, если хотите. –

Смежные вопросы