Как управлять каждым пользовательским ресурсом Microsoft Azure с помощью токена доступа?

Я хотел бы создать приложение MVC, в котором пользователи могут быть авторизованы с помощью своей подписки Azure, и после этого мое приложение может управлять своими ресурсами, размещенными в Microsoft Azure (виртуальными машинами, веб-сайтами и т. д.).

Я создал приложение с помощью этого руководства.

Я могу создавать облачные хранилища, виртуальные машины и т. д., поэтому все работает нормально.

После этого я попытался войти в систему с другой учетной записью Azure. Я могу получить подписку, но не могу управлять ресурсами этого пользователя, всегда получаю исключение:

Additional information: AuthenticationFailed: A security token exception occured for the received JWT token.

Кажется, что с помощью этой техники я могу управлять только своими ресурсами.

Мой вопрос: как я могу сделать следующее с каждым другим пользователем? Могу ли я сделать это с помощью этого метода или я должен сделать это другим способом?


person Gábor Domonkos    schedule 26.09.2014    source источник
comment
Насколько этот вопрос отличается от вашего другого вопроса - stackoverflow.com/questions/26019352/?   -  person Gaurav Mantri    schedule 26.09.2014
comment
Вы хотите сказать, что мои пользователи должны настроить AD, как это сделал я в этом примере? Это так сложно, не так ли? В этом сценарии они должны предоставить идентификатор арендатора, идентификатор приложения и т. д., а после входа в систему. Я думаю, что должен быть более простой способ решить эту проблему.   -  person Gábor Domonkos    schedule 26.09.2014
comment
Я думаю, что неправильно понял ваш вопрос. Я думал, что вы все вместе вошли в другую подписку, но, если я правильно понимаю, вы в основном вошли в ту же подписку, но с другим идентификатором пользователя. Я прав?   -  person Gaurav Mantri    schedule 26.09.2014
comment
Возможно, я не смог полностью объяснить свою проблему. Только представьте, что я могу дать вам решение, которое может создать веб-сайт внутри вашей подписки Azure. Вы не в моей подписке. Вы входите в систему, выбираете свою подписку Azure, и внутри этой подписки мое приложение создает, например, облачную службу.   -  person Gábor Domonkos    schedule 26.09.2014
comment
проверьте это msdn.microsoft.com/en-US/library /azure/, рассказал о настройке мультитенантных приложений.   -  person liuhongbo    schedule 29.09.2014


Ответы (1)


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

Насколько мне известно, API для создания приложения в AAD отсутствует, поэтому в вашем сценарии пользователям потребуется вручную создавать эти приложения, что мне кажется нарушением условий сделки.

person vainolo    schedule 27.09.2014
comment
Большое спасибо! Итак, кажется, что единственный способ (или самый простой) сделать это — использовать файл настроек публикации пользователя? - person Gábor Domonkos; 29.09.2014