2012-01-20 2 views
4

mod_auth_cas를 사용하여 내 tsdb 사이트를 보호합니다. 예는 다음과 같습니다. "require valid-user"를 사용하면 잘 작동합니다. 하지만 일부 사람들 만 내 사이트를 볼 수 있도록 허용하고 싶기 때문에 아파치 conf에서 "foobar 그룹 필요"를 사용하지만 작동 방식을 모릅니다. 내 rubycas 서버에 추가 "그룹"속성을 추가하려했지만 작동하지 않습니다.mod_auth_cas에서 "require foobar"를 지원하는 방법

<VirtualHost *:80> 
CASLoginURL https://cas.example.com/login 
CASValidateURL https://cas.example.com/serviceValidate 
CASValidateServer Off 
CASDebug On 

ServerName tsdb.example.com 
ProxyPass/http://127.0.0.1:4242/ 
ProxyPassReverse/http://127.0.0.1:4242/ 
ProxyPreserveHost On 

<Location /> 
AuthType CAS 
require group foobar 
# require valid-user 
</Location> 
</VirtualHost> 

감사

답변

0

나는 전혀 그룹과 CAS의 거래를 생각하지 않습니다. 인증 만 처리하기 때문에 로그인했음을 알릴 수 있지만 권한 부여는하지 않습니다.

1

mod_auth_cas의 최신 개발 버전은 현재 지원하는 그룹 멤버를 테스트하는데 사용될 수있다

Require cas-attribute <attribute>~<value> 

(소스 [1]). 이 속성 및 정규 표현식의 형식은 CAS 서버에 따라 다를 수 있습니다.

AuthType CAS 
AuthLDAPURL "ldap://ldap.example.com/ou=Users,dc=example,dc=com?uid?sub?(objectClass=*)" STARTTLS 
AuthLDAPGroupAttribute member 
Require ldap-group cn=my_role,ou=Groups,dc=example,dc=com 

사용 "LDAP 그룹 필요"하려면, 권한을 부여 할 것이다 : 당신의 그룹이 LDAP에있는 경우, 당신은 또한 CAS는 인증을 제공하고, LDAP, 예를 들어, 권한을 제공하여, mod_authnz_ldap와 mod_auth_cas을 결합 할 수 있습니다 mod_auth_cas를 사용하여 권한을 부여하는 "Require user"와 함께 mod_authnz_ldap을 통해 "AuthzLDAPAuthoritative off"를 포함 시키십시오 (CASAuthoritative는 기본적으로 off로 기본 설정되어 있음).

[1] https://github.com/Jasig/mod_auth_cas (버전 1.0.10은 아직 실제로 출시되지 않았습니다.)