Вопрос, поднятый в данном запросе, касается настройки однократного входа (Single Sign-On, SSO) в компоненте TEdgeBrowser, который используется в среде разработки Delphi для работы с веб-контентом. SSO позволяет пользователям входить в систему один раз и использовать эту информацию для доступа к различным сервисам без необходимости повторного ввода учетных данных.
Проблема
Пользователь столкнулся с проблемой, что в TEdgeBrowser отсутствуют свойства, необходимые для включения SSO, аналогичные тем, что используются в C# коде. Это связано с тем, что тип данных, определенный в модуле Winapi.WebView2, для интерфейса ICoreWebView2EnvironmentOptions, не содержит функций для получения или установки значения AllowSingleSignOnUsingOSPrimaryAccount, что, вероятно, обусловлено использованием устаревого файла типов WebView2.tlb.
Решение
В качестве решения предлагается использовать библиотеку WebView4Delphi, которая обновлена до последней версии WebView2 и поддерживает все интерфейсы, включая возможность настройки SSO. Для включения SSO необходимо установить свойство AllowSingleSignOnUsingOSPrimaryAccount в значение True перед вызовом метода StartWebView2 в объекте GlobalWebView2Loader.
Эта настройка применяется ко всем браузерам, которые используют один и тот же ICoreWebView2Environment, что является стандартным поведением. Если требуется создать браузер с независимым ICoreWebView2Environment, то свойство AllowSingleSignOnUsingOSPrimaryAccount следует установить перед вызовом метода CreateBrowser для экземпляра TWVBrowser.
Пример кода для независимого ICoreWebView2Environment:
Где MyWVBrowser - это экземпляр компонента TWVBrowser.
Заключение
Использование WebView4Delphi позволяет разработчикам, работающим в среде Delphi, воспользоваться преимуществами WebView2, включая настройку SSO, что значительно упрощает процесс интеграции веб-компонентов в свои проекты.
Настройка однократного входа (SSO) в компоненте TEdgeBrowser с использованием WebView2, необходимая для интеграции веб-сервисов с единым входом в приложениях на Delphi.
Комментарии и вопросы
Получайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS