WedX - журнал о программировании и компьютерных науках

CAS Получить атрибуты пользователя после входа в систему

CAS может передавать атрибуты пользователя, вошедшего в систему, клиенту при использовании проверки билета SAML. Но если я использую OAuth, есть ли другой способ получить пользовательские атрибуты через второй вызов сервера CAS с использованием полученного accessToken? Я думаю, что это должно быть возможно, поскольку, когда пользователь аутентифицируется (например, через facebook), запрошенные атрибуты находятся в памяти CAS.

cas
30.12.2013

Ответы:


1

Да, это возможно, поскольку атрибуты пользователя действительно хранятся на сервере CAS. Как поясняется в документации: https://wiki.jasig.org/display/CASUM/Configuration+for+the+OAuth+client+support+in+CAS+server+version+%3E%3D+3.5.1, вы можете определить, какие атрибуты OAuth вы хотите получить точно так же, как и для любого другого репозитория атрибутов. Вы даже можете воссоздать профиль пользователя на стороне клиентского приложения CAS. Вот рабочий пример: https://github.com/leleuj/cas-oauth-demo-3.5.x/blob/master/cas-oauth-client-demo-3.5.x/src/main/webapp/WEB-INF/deployerConfigContext.xml. Вы также можете получить токен доступа OAuth для выполнения дополнительных операций...

31.12.2013
  • Спасибо за ответ. Но я не уверен, что это правильный ответ. Я хочу, чтобы CAS действовал как сервер oAuth для моих клиентских приложений. Клиентские приложения отправят запрос /oauth2.0/authorize, а CAS обработает процесс входа в систему. Затем я хочу, чтобы эти клиентские приложения извлекали информацию о профиле без использования SAML. В документации говорится, что на стороне клиента CAS для получения атрибутов необходимо использовать проверку SAML или настраиваемую проверку CAS. Так как же в этом случае использовать OAuth и SAML вместе? На самом деле я оцениваю 4.0.0.0RC2 31.12.2013
  • На стороне клиента CAS для получения атрибутов необходимо использовать проверку SAML или настраиваемую проверку CAS. исходит из документации, чтобы обеспечить поддержку клиента OAuth на сервере CAS. Правильная документация, которую вы ищете, это: вики. jasig.org/display/CASUM/... и есть URL-адрес /profile для получения профиля пользователя... 01.01.2014
  • Это здорово. Когда сервер CAS настроен для OAuth по вашей ссылке, он отлично работает. Я использовал SimpleTestUsernamePasswordAuthenticationHandler, и при выпуске /oauth2.0/profile он дает несколько атрибутов. 02.01.2014
  • Следующее, что мне нужно, чтобы пользователи вошли в систему, щелкнув ссылку для входа в facebook. Это означает, что сервер CAS должен быть настроен как сервер oauth, а также как клиент oauth для facebook. Когда я это делаю и когда я вхожу в систему через ссылку для входа в facebook, страница не перенаправляется в клиентское приложение. Он отображает страницу CAS недоступен и выдает ERROR [org.jasig.cas.support.oauth.web.OAuth20CallbackAuthorizeController] - <oauth20_callbackUrl is missing from the session and can not be retrieved. в чем может быть причина 02.01.2014
  • Странный ! После успешной аутентификации в Facebook вы должны быть перенаправлены на исходную предоставленную услугу. OAuth20CallbackAuthorizeController запрашивается только по URL-адресу /oauth2.0/callbackAuthorize: в этом случае его никогда не следует вызывать... 02.01.2014
  • Вот что происходит. Если я просто войду в систему, используя имя пользователя = пароль, то после успешной аутентификации CAS будет перенаправлен на oauth2.0/callbackAuthorize?ticket=ST......, как только я нажму на ссылку авторизации, страница будет перенаправлена ​​на страницу службы. Но при входе через facebook CAS снова перенаправляется на oauth2.0/callbackAuthorize?ticket=ST......, но на этот раз показывает страницу с ошибкой. Можем ли мы полностью исключить этот oauth2.0/callbackAuthorize и сделать так, чтобы CAS перенаправлял напрямую на страницу службы? 03.01.2014
  • Какой срок службы установлен для ваших сервисных билетов? Не могли бы вы задать этот вопрос в списке рассылки пользователей CAS: группы .google.com/forum/?fromgroups#!forum/jasig-cas-user ? Было бы проще... 03.01.2014
  • Новые материалы

    Как создать диаграмму градиентной кисти с помощью D3.js
    Резюме: Из этого туториала Вы узнаете, как добавить градиентную кисть к диаграмме с областями в D3.js. Мы добавим градиент к значениям SVG и применим градиент в качестве заливки к диаграмме с..

    Я хотел выучить язык программирования MVC4, но не мог выучить его раньше, потому что это выглядит сложно…
    Просто начните и учитесь самостоятельно Я хотел выучить язык программирования MVC4, но не мог выучить его раньше, потому что он кажется мне сложным, и я бросил его. Это в основном инструмент..

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

    Объяснение документов 02: BERT
    BERT представил двухступенчатую структуру обучения: предварительное обучение и тонкая настройка. Во время предварительного обучения модель обучается на неразмеченных данных с помощью..

    Как проанализировать работу вашего классификатора?
    Не всегда просто знать, какие показатели использовать С развитием глубокого обучения все больше и больше людей учатся обучать свой первый классификатор. Но как только вы закончите..

    Работа с цепями Маркова, часть 4 (Машинное обучение)
    Нелинейные цепи Маркова с агрегатором и их приложения (arXiv) Автор : Бар Лайт Аннотация: Изучаются свойства подкласса случайных процессов, называемых дискретными нелинейными цепями Маркова..

    Crazy Laravel Livewire упростил мне создание электронной коммерции (панель администратора и API) [Часть 3]
    Как вы сегодня, ребята? В этой части мы создадим CRUD для данных о продукте. Думаю, в этой части я не буду слишком много делиться теорией, но чаще буду делиться своим кодом. Потому что..


    Для любых предложений по сайту: [email protected]