인증

Table of Contents

SonarQube의 보안 전략 수립을 위해 다음 질문에 가장 먼저 대답해야 합니다:

  • 허가 받지 않은 사용자가 SonarQube 인스턴스에 접근해서 결과를 확인할 수 있는가?
  • 혹은, 별도의 인증이 필요한가?

사용자 인증(Authentication)을 설정하려면 Systems administrator 계정으로 로그인 한 후, Administration > Configuration > General Settings > Security 메뉴에서 Force user authentication 속성을 true로 설정합니다. 사용자가 SonarQube 계정으로 직접 가입을 할 수 있도록 하려면 Allow users to sign up 속성을 true로 설정합니다.

인증 매커니즘

사용자 인증은 다양한 방법으로 수행할 수 있습니다:

  • SonarQube에 내장된 users/groups 데이터베이스 활용
  • LDAP 서버(Active Directory의 LDAP Service 포함), GutHub 등과 같은 외부의 인증 식별 제공자 활용 (Plugin Library 페이지의 Authentication & Authorization 절 참조)
  • HTTP 헤더 활용: 이 기능은 sonar.properties 파일의 sonar.sso.enable 속성을 설정해 사용할 수 있습니다. Reverse Proxy 문서를 참조하여 적절한 헤더 사용법을 확인합니다..
     SONAR-5430 - User authentication by HTTP header CLOSED  

기술적인 사용자들

SonarQube의 데이터베이스에 사용자를 생성하면, 해당 사용자는 로컬 사용자로 인식되며 SonarQube 자체 user/group 데이터베이스를 통해서만 인증 가능합니다, 즉 외부의 인증 식별 도구(LDAP, Active Directory, Crowd 등)을 활용할 수 없습니다. admin은 기본적으로 로컬 데이터베이스 내의 계정입니다.

마찬가지로, 로컬 계정 이외의 모든 계정은 외부 인증 식별 도구를 통해서만 인증 가능합니다.

사용자 토큰을 관리하려면 Administrator는 Administration > Security > Users 메뉴를 사용합니다. 사용자의 현재 토큰 확인 및 삭제, 신규 토큰 생성이 가능합니다. 생성한 토큰은 코드 분석 수행시에만 필요하며, sonar.login 속성에 해당 토큰을 입력합니다.

기본 Admin 인증

SonarQube 설치 시, Administrator System 권한을 가진 기본 사용자를 자동으로 생성합니다:

  • Login: admin
  • Password: admin

FAQ

admin 비밀번호를 분실했습니다.

admin 계정의 비밀번호를 분실한 경우, 다음 쿼리를 수행해 비밀번호롤 초기화할 수 있습니다:

update users set crypted_password = '88c991e39bb88b94178123a849606905ebf440f5', salt='6522f3c5007ae910ad690bb1bdbf264a34884c6d' where login = 'admin'

비밀번호는 admin으로 초기화됩니다.

© 2017-2018 Moses Kim.

별도의 언급이 없는 한, 이 스페이스의 컨텐츠는 크리에이티브 커먼즈 저작자표시-비영리-동일조건변경허락 4.0 국제 라이선스에 따라 이용할 수 있습니다.
SONARQUBE는 SonarSource SA의 트레이드 마크입니다. 모든 트레이트 마크 및 저작권은 각 소유자의 소유물입니다.

::: SonarQube 관련 문의 : 이메일 :::