Последовательность вызовов API метода Tunnel
В этом разделе рассматривается последовательность вызовов API для методов Tunnel
Общие сведения о последовательности вызовов метода Tunnel
Когда Запрашивающий получает запрос на получение удостоверения пользователя и данных пользователя, обычно выполняется следующий поток вызова API.
- Запрашивающий вызывает EapHostPeerProcessReceivedPacket на EapHost, чтобы обработать пакет, полученный от аутентификатора.
- После обработки этого пакета EAPHost определяет его как пакет IdentityRequest и вызывает метод EapPeerGetIdentity в туннеле, чтобы получить удостоверение пользователя, используемое для проверки подлинности.
- Если метод туннеля должен получить удостоверение пользователя из внутреннего метода, он вызывает EAPHostPeerGetIdentity на внутреннем EAPHost, который, в свою очередь, вызывает EapPeerGetIdentity для внутреннего метода.
Взаимодействие пользователя с потоком вызова API методов туннеля
В некоторых случаях, когда удостоверение недоступно или пользователь должен предоставить дополнительные сведения, метод Eap создает диалоговое окно пользовательского интерфейса для запрашивающего.
В таких случаях для получения сведений непосредственно от пользователя обычно выполняется следующая последовательность вызовов.
Метод Tunnel Eap возвращает код действия для вызова пользовательского интерфейса в EapHost. Запрашивающий вызывает EapHostPeerGetUIContextдля получения сведений о контексте текущего пользовательского интерфейса для диалогового окна пользовательского интерфейса.
Затем запрашивающий вызывает EapHostPeerInvokeInteractiveUI. Эта функция использует сведения контекста пользовательского интерфейса для создания интерактивного пользовательского интерфейса, который используется для получения учетных данных от пользователя. Процесс пользовательского интерфейса загружает Eappcfg.dll и получает указатели на EapPeerInvokeInteractiveUI и EapPeerFreeMemory.
Примечание
Процесс пользовательского интерфейса обычно собирает пользовательский интерфейс или обрабатывает интерактивный пользовательский интерфейс и отделен от запрашивающего процесса. Разделение этих двух процессов не является обязательным требованием EAPHost, но это позволяет процессу пользовательского интерфейса взаимодействовать с рабочим столом.
EapHost вызывает EapPeerInvokeIdentityUI в методе туннеля для получения сведений об удостоверениях пользователя.
Чтобы получить удостоверение пользователя из внутреннего метода, метод туннеля вызывает EapHostPeerInvokeIdentityUI на внутреннем EAPHost.
Внутренний EAPHost вызывает EapPeerInvokeIdentityUI во внутреннем методе для вызова пользовательского интерфейса удостоверения пользователя.
EapHostPeerSetUIContext предоставляет новые или обновленные сведения о контексте пользовательского интерфейса для однорангового метода EAP, загруженного в EAPHost после создания пользовательского интерфейса.
На следующей схеме описана последовательность вызовов API для методов Tunnel
Связанные темы
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по