2008-09-15 7 views
0

マシンにRubyCAS-ServerとRubyCAS-Clientをインストールしてセットアップしました。ログインは完璧に動作しますが、私はログアウトしようとしたとき、私はRubyCAS-Serverから、このエラーメッセージが表示されます。RubyCAS-Serverでログアウトするにはどうすればよいですか?

Camping Problem! 

CASServer::Controllers::Logout.GET 

ActiveRecord::StatementInvalid Mysql::Error: Unknown column 'username' in 'where clause': SELECT * FROM `casserver_pgt` WHERE (username = 'lgs') : 

私は宝石のバージョン0.6を使用しています。 RubyCAS-Serverの移行を見てみると、そのテーブルにはユーザ名の列はないはずです。

これはなぜ起こっているのか、私はそれについて何ができるのですか?

答えて

0

このバージョンのbug ticketに記載されているように、0.6バージョンの宝石にはバグがあります(おそらくRails 2.1のファインダーに加えられた変更と一致します)。その間は、installing from the source treeを試すことができます。

+0

おかげ - ソースツリー(リビジョン312)からのインストールが完全に動作します。 0.7を楽しみにしています。 – larssg

0

ルビーCASの場合、セッションの種類は2種類あります。

(1)です。アプリケーションセッション。

(2)。シングルサインオン(SSO)セッション。

アプリケーションセッションを管理するためにsinatra-session gemを使用して、session_endを使用することができます。アプリケーションセッションを破棄するヘルパーメソッド。 SSOセッションを破棄するには、ログアウトルートのセッション[:cas_ticket]パラメータを設定解除します。

例:シナトラの場合

get '/logout' do session_end! # provided by sinatra-session gem session[:cas_ticket] = nil # session variable set by CAS server end

関連する問題