Мы рассматриваем варианты реализации единого входа для нескольких веб-приложений, среди которых одни - CakePHP (1.3), а другие - нет.Я надеюсь на советы или комментарии от людей, которые делали это раньше.
Вот идея: доступ к приложению CakePHP контролируется сервером AuthType.Если пользователь не аутентифицирован, он вообще не может получить доступ к приложению, а вместо этого получает ответ на страницу входа в систему единого входа.Если они затем успешно войдут в систему, они будут перенаправлены обратно в приложение и получат доступ от веб-сервера.
На этом этапе CakePHP будет считывать содержимое $_SERVER['REMOTE_USER']
, чтобы идентифицировать пользователя и представлять его или ееправильная информация.
Конкретные вопросы:
- Предполагая, что мы можем доверять безопасности единого входа, является ли этот подход безопасным и надежным?
- Возможно ли (илиполезно) интегрировать этот механизм с компонентом аутентификации Cake?
- Является ли Cakey непосредственным считыванием суперглобального
$_SERVER
? - Существует ли более похожий на Cake способ создания единого входа в приложение?
Чтобы пояснить, мне нужно знать только аутентифицированного пользователя - мне не нужно (или не хочется) делитьсявесь сеанс с любым другим приложением.
Спасибо!
Редактировать: Просто чтобы повторить мой комментарий ниже, SSO и все приложения будут на наших серверах.Мы не будем использовать RealID или любой другой внешний механизм аутентификации.Поэтому, когда я говорю «внешняя» авторизация, я имею в виду внешний для CakePHP, но не внешний для нашего веб-сервера.