0
我正在將RT的舊版本從4.0.x移至4.4.2的最新版本。舊的安裝使用的Shibboleth和一直很好做這麼多年,RT_SiteConfig.pm設置:Shibboleth on Request Tracker 4.4.x
Set($ExternalAuthPriority, ['Shibboleth']);
Set($ExternalInfoPriority, [ 'Shibboleth' ]);
Set($ExternalServiceUsesSSLorTLS, 0);
Set($AutoCreateNonExternalUsers, 1);
Set($ExternalSettings,
{ 'Shibboleth' =>
{ 'type' => 'shib',
'auth' => 0,
'info' => 1,
'attr_match_list' =>
[ 'Name', 'EmailAddress', 'RealName' ],
'attr_map' =>
{ 'Name' => 'REMOTE_USER',
'EmailAddress' => 'mail',
'RealName' => 'displayName' }
}
}
着Apache虛擬主機,如:
< Location />
Require all granted
SetHandler modperl
PerlResponseHandler Plack::Handler::Apache2
PerlSetVar psgi_app /opt/rt4/sbin/rt-server
AuthType shibboleth
ShibRequireSession On
require valid-user
ShibRequestSetting requireSession 1
Options FollowSymLinks
< /Location>
< Location "/Shibboleth.sso">
Require all granted
SetHandler shib
AuthType None
< /Location>
當我去使用相同的配置設置數據庫我得到:
make initialize-database
Password:
Working with:
Type: mysql
Host: localhost
Port:
Name: rtdb
User: rtdbuser
DBA: root
Now creating a mysql database rtdb for RT.
Done.
Now populating database schema.
Done.
Now inserting database ACLs.
Done.
Now inserting RT core system objects.
Done.
[error]: Service 'Shibboleth' in ExternalInfoPriority is not ldap, db, or cookie; removing. (/usr/local/src/rt-4.4.2/sbin/../lib/RT/Config.pm:1094)
Now inserting data.
Done inserting data.
Done.
,唯一不同的是我能看到的是在做安裝的是,我不能再安裝RT ::認證介紹:: ExternalAuth時。當我嘗試,我得到:
**** Error: Your installed version of RT (4.4.2) is too new; this extension
only works with versions older than 4.4.0.
我查了資料,並從我讀它看起來像ExternalAuth功能現在內置,你不再需要插件。如果事實如此,你如何在RT中使用Shibboleth?如果不是這種情況,你會如何解決這個問題?