2015-03-03 2 views
0

Я насторить web2py приложение для работы с JASIG CAS (CAS 2) следующим образом в db.py:web2py CAS пользовательских полей

from gluon.contrib.login_methods.cas_auth import CasAuth 
auth.settings.login_form=CasAuth(
      urlbase = "https://sso.mysite.co.za", 
      actions = ['login','serviceValidate','logout'], 
      casversion = 2, 
      casusername = "cas:user") 

Мой CAS сервер настроен для передачи некоторых пользовательских полей, которые я добавлено как таковое на потребителя:

auth.settings.extra_fields['auth_user']=[Field('tokens')] 

Проблема в том, что поля не заполняются. Я что-то упускаю?

+0

Я не знаю, как это работает в CAS 2, но с CAS 3, а затем вы должны добавить атрибуты в хранилище атрибутов, посмотрите на ** Статическая конфигурация разрешенных атрибутов в sercice ** в [CAS Atributes wiki page] (https://wiki.jasig.org/display/casum/attributes) – vzamanillo

+0

Атрибуты настроены на провайдере CAS, но они не подхватываются потребителю CAS (web2py). – Yusufk

+0

Добавляли ли вы дополнительные поля перед 'auth.define_tables (username = True)'? – Remco

ответ

0

Были проблемы с реализацией CAS 2.0 в web2py, где был проверен конверт XML, но не фактическая структура атрибута. Я внес некоторые изменения в вилку и отправил запрос на растяжение.

https://github.com/yusufk/web2py

Смежные вопросы