2013-07-24 5 views
1

내 대학의 부서 용 자식 서버에 gitlab을 사용하고 있습니다. 우리는 조직의 다른 부분이 관리하는 기존 사용자 기반을 보유하고 있습니다. 필자의 IT 관리자는 직선 LDAP보다 PAM을 사용하여 인증합니다.gitlab : PAM 인증 문제

unix_chkpwd 바이너리를 대체하여 우분투 12.04에서 PAM을 작동 시켰습니다. 바로 지금 Omniauth를 통해서입니다. 로그에는 인증 된 것으로 표시됩니다. 성공적으로 로그인하면 라우팅 오류가 발생합니다.

ActionController::RoutingError (No route matches [POST] "https://stackoverflow.com/users/auth/pam/callback"): 

이 문제를 해결하는 방법을 모르겠습니다.

대학 계정이 있어야하므로 모든 사용자가 PAM을 통해서만 가능하기 때문에 PAM을 직접 사용하고 싶습니다. 나는 folowing gem https://github.com/jwilson511/devise_pam_authenticatable을 사용하고 있습니다. 설치가되었지만 PAM을 통해 로그인을 시도하지 않는 것 같습니다.

도움을 주시면 감사하겠습니다.

편집 : PAM을 올바르게 구성했습니다. 라우팅 오류가 문제입니다. 공급자가

답변

2

https://github.com/nickcharlton/omniauth-pam 내가 해결책을 발견 볼 omniauth omniauth 공급자에 대한 자세한 내용은 당신이 omniauth 공급자를 사용할 수 있습니다

+0

나는 비슷한 질문을 던지고 있습니다 : http://stackoverflow.com/questions/19938781/gitlab -and-omniauth-pam-authentication https://github.com/raphendyr/gitlabhq/tree/6-3-pam을 gitlab에 넣기를 바랍니다. – vanthome

0

,

는 PAM에 대한

https://github.com/gitlabhq/gitlabhq/wiki/Using-Custom-Omniauth-Providers를 참조하십시오. gitlab이 올바르게 구문 분석 할 수있는 이름 옵션을 사용하려면 gem을 설정해야합니다.

gem도 info 해시에 전자 메일 필드를 추가하여 사용자가 처음 로그인 할 때 만들어 지도록 설정해야했습니다.

코드 정리를하고 풀 요청을 할 것입니다.

+0

지금 Omniauth로 테스트 중입니다. 라우팅 오류는 Omniauth를 사용한 것입니다. –

+0

Omniauth에 대한 설정 권한이 없을 수도 있습니다. 나는 보석을 설치하고 의 제공자 인 gitlab.yml을 추가했습니다. - {name : 'PAM'} –