Могу ли я избежать регистрации моего приложения в Azure при использовании MS Graph? - PullRequest
2 голосов
/ 03 августа 2020

Мне здесь не хватает чего-то важного! Я просто не знаю, о чем просить. Может быть, я ошибаюсь, поэтому смело отправляйте меня в другом направлении.

Для простоты - предположим, что я хочу создать приложение на C#, которое каждый может загрузить и установить на их P C.

Приложение должно иметь возможность читать и вносить изменения в календарь текущих пользователей Outlook 365.

До сих пор я узнал через MS Graph Explorer, что Я могу использовать вызовы отдыха, чтобы управлять данными в моем собственном календаре. Конечно - это требует, чтобы я вошел в систему, прежде чем я смогу использовать свои собственные данные, а не «демонстрационные» данные.

Я искал руководства по созданию приложений Graph, чтобы go с тем же подходом, что MS Graph Explorer. Но каждый учебник, который я видел до сих пор, требует, чтобы я зарегистрировал приложение в Azure, прежде чем оно заработает.

Я не понимаю, как можно войти на веб-страницу с помощью MS Graph Explorer дать мне доступ к моему календарю без регистрации в моей учетной записи Azure?

Нравится - если я создаю приложение, как описано выше - как оно может работать в любой установке, если оно не было зарегистрировано в пользователях Azure портал?

Что мне не хватает?

В основном я спрашиваю, как воспроизвести метод аутентификации, который используется на веб-странице с помощью MS Graph Explorer.

1 Ответ

2 голосов
/ 03 августа 2020

MS Graph Explorer, как и приложение, которое вам необходимо зарегистрировать, является мультитенантным.

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

Таким образом, вам нужно зарегистрировать приложение, но только в своем клиенте AAD. Затем, когда вы аутентифицируете пользователя в приложении, вы используете один из них в качестве полномочий:

  1. https://login.microsoftonline.com/common: разрешает аутентификацию от любого клиента AAD и с личными учетными записями MS
  2. https://login.microsoftonline.com/organizations: разрешает аутентификацию от любого клиента AAD (без личных учетных записей MS).

Пользователь затем аутентифицируется в своем собственном домашнем арендаторе и должен будет дать согласие на области, требуемые вашим приложением (например, разрешение для чтения / записи данных календаря текущего пользователя). После согласия субъект-служба / корпоративное приложение создается в клиенте пользователя (если это пользователь AAD). Этот SP является локальным представлением приложения.

Подробнее о мультитенантности можно узнать в документации: https://docs.microsoft.com/en-us/azure/active-directory/develop/single-and-multi-tenant-apps

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...