#reactjs #sin&le-si&n-on #cloud-foundry
#reactjs #единый вход #облако-foundry
Вопрос:
В основном мы развертываем наши приложения в PCF. Мы создали приложение React js, которое необходимо развернуть в PCF, и для его пользователей должна быть включена аутентификация Pivotal SSO. Не могли бы вы, пожалуйста, рассказать о процессе развертывания приложения react js в PCF с включенным Pivotal SSO?
Спасибо
Ответ №1:
Это можно сделать несколькими способами.
-
На стороне сервера. Любой запрос к вашему приложению, например, для простой загрузки страницы, требует аутентификации. Затем сервер может выполнить поток предоставления кода авторизации. Это наиболее часто используемый поток для входа в систему.
То, как вы будете это делать, будет зависеть от того, что обслуживает ваши файлы. Вам нужно посмотреть, как сервер обеспечивает безопасность и имеет ли он встроенную поддержку OAuth2 или OpenID Connect.
Это, безусловно, возможно на других языках / фреймворках, но вот несколько примеров:
- Если вы используете Apache HTTPD, вы можете использовать mod_auth_openidc.
- Если у вас есть Java-приложение, поддержка OAuth2 в Sprin& Security будет работать отлично. Посмотрите также примеры в документах.
- Для приложений .NET и Dotnet Core существует защита Steeltoe.
-
На стороне клиента. Вы можете выполнить вход в систему, используя только Javascript в браузере клиента, но процесс входа в систему будет другим. В идеале вы могли бы использовать поток предоставления кода авторизации с PKCE, но на момент написания этой статьи плитка единого входа не поддерживает этот поток. Это означает, что если вы хотите использовать OAuth2 на стороне клиента, вам нужно будет использовать неявный поток.
Я всегда использовал вариант № 1 выше, поэтому не могу рекомендовать библиотеку для использования, но вы можете найти несколько здесь. Однако вы можете использовать любую библиотеку, поддерживающую неявный поток. Затем просто зарегистрируйте свое приложение и выберите
implicit
тип предоставления.