[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[upki-fed:01010] Re: Movable Type を Shibboleth 認証されている事例はありますか?
- Subject: [upki-fed:01010] Re: Movable Type を Shibboleth 認証されている事例はありますか?
- Date: Fri, 29 Jan 2016 19:35:53 +0900
- From: Tatsumi Hosokawa <xxxxxxxx@xxxxxxxxxxxxxx>
慶應義塾ITC本部の細川です。
Movable TypeをShibboleth対応させたくて、「Movable Type Shibboleth」をキーワードにググったところ、
あまりドンピシャの記事が見当たらなかった上に、こちらの2年ほど前のメールが引っかかったくらいだったすが、
自分でやってみたら思ったよりあっさりとShibboleth対応できてしまったので、
もはや期限切れで役に立たない回答かと思いますが、リプライの形でメモを残しておこう、と思います。
これはよくない方法、とかいう点がありましたらぜひご指摘ください。
1. Movable TypeのサーバにShibboleth SPをインストールし、MTのディレクトリを
Shibboleth認証の対象に設定します。
2. mt/lib/MT/Authに次のファイルをShibboleth.pmという名前で置き、
$userid_attrにユーザIDとして利用したい属性の環境変数名を設定します
-----ここから----------------------------------
package MT::Auth::Shibboleth;
use strict;
use base qw( MT::Auth::BasicAuth );
my $userid_attr = 'mail'; #ここを設定する(他の例: eppn)
sub can_logout { 1 }
sub remote_user {
my $class = shift;
my ($ctx) = @_;
return $ENV{$userid_attr};
}
1;
-----ここまで----------------------------------
3. mt-config.cgiに次の行を足します。
AuthenticationModule Shibboleth
これだけで設定は終わりです。
登録されていないユーザがShibboleth経由でアクセスしてくると、無権限のユーザが作成されます。
あとは管理者がそのユーザに権限を割り振ればOK、のようです。
これが運用上問題な場合は、new_user()を潰す必要があるかもしれません。
# 私はMTに詳しくないので間違っていたらすみません。
なお、AuthenticationModuleを設定するとShibbolethユーザ以外はログインできなくなるので、
一旦AuthenticationModule設定した状態でShibbolethで管理者にしたいユーザでログインして、
新しいユーザを作成し、その後AuthenticationModuleをコメントアウトして、
以前の管理者でログインして新しく出来たユーザを管理者にして、
それからAuthenticationModuleを再び有効化すれば、Shibboleth認証ユーザの管理者が出来上がります。
以上です。
細川
On 2013/10/24 16:18, TSUCHIYA Masatoshi wrote:
> 土屋です.
>
> 表題の通りなのですが,ざっと Movable Type 5.2.8 の認証周辺のロジックを眺
> めてみると,lib/MT/Auth/BasicAuth.pm というモジュールがあり,REMOTE_USER
> 環境変数を参照して認証を行っているように読み取れます.
>
> とすると,普通に Shibboleth 認証にしてやってもうまくいきそうな気がするの
> ですが,先行事例は存在しているでしょうか? もしも,先行事例とコツをご存じ
> でしたら,教えて頂けませんか.
>
> よろしくお願いします.
>
--
慶應義塾ITC本部 細川達己 xxxxxxxx@xxxxxxxxxxxxxx
Tel. 03-5427-1685 Fax. 03-5427-1722