μ΄ λ¬Έμλ SonarQube v6.4 κΈ°λ°μ λ¬Έμλ‘ μμΉ΄μ΄λΈ λμμ΅λλ€.
μ΅μ λ¬Έμλ₯Ό μ°Έμ‘°νμμμ€.
κΆν
SQ Official Doc Link: https://docs.sonarqube.org/display/SONAR/Authorization
Table of Contents
κΆν κ΄λ¦¬
SonarQubeμ κΆν(Authorization) κ΄λ¦¬ 맀컀λμ¦μ λ§€μ° νμ€μ μ λλ€. κ΄λ¦¬μλ νμν λ§νΌ μ¬μ©μ(User) λ° κ·Έλ£Ή(Group)μ μΆκ°ν μ μμΌλ©°, μ¬μ©μλ€μ νλ νΉμ κ·Έ μ΄μμ κ·Έλ£Ήμ μνκ±°λ μνμ§ μμ μ μμ΅λλ€. κ° μ¬μ©μ λ° κ·Έλ£Ήμ νλ νΉμ κ·Έ μ΄μμ κΆνμ κ°μ§λ©°, μ΄ κΆνμ λ°λΌ νλ‘μ νΈ, μλΉμ€ λ° κΈ°ν κΈ°λ₯μ λν μ κ·Όμ΄ μ νλ©λλ€.
κ·Έλ£Ή λ° μ¬μ©μλ₯Ό κ΄λ¦¬νλ €λ©΄, Administration > Security λ©λ΄λ₯Ό μ¬μ©ν©λλ€
μ¬μ©μ
λ€μν λ°©λ²μΌλ‘ κΆνμ μ€μ νμ¬ μ¬μ©μμκ² μμν μ μμ΅λλ€(νλ¬κ·ΈμΈ λΌμ΄λΈλ¬λ¦¬ λ° κΈ°ν νλ¬κ·ΈμΈ μ°Έμ‘°). μ°μ Settings > Security > Users λ©λ΄μμ μλμΌλ‘ μμμλ₯Ό μμ±νκ±°λ, κΈ°λ³Έ μ¬μ©μ μ 보λ₯Ό μμ ν©λλ€. μλμΌλ‘ μ¬μ©μλ₯Ό μμ±νλ κ²½μ°, λ‘κ·ΈμΈ κ³μ λ° λΉλ°λ²νΈλ₯Ό ν¨κ» μμ±ν μ μμΌλ©°, μ΄ν ν΄λΉ κ³μ μ μ 보λ₯Ό μμ ν μ μμ΅λλ€.
μ¬μ©μ μμ± λ° μ 보 μμ λ¨κ³μμ νλΉ κ³μ μ μ¬μ©μ μΈν°νμ΄μ€ νμ μ΄λ¦κ³Ό μ΄λ©μΌ μ£Όμλ₯Ό μ€μ ν μ μμ΅λλ€. λ‘κ·ΈμΈ κ³μ λ° μ΄λ©μΌ μ£Όμλ κ°λ₯ν κ²½μ° SCM κ³μ κ³Ό λμΌνκ² κ°μ£Όλμ΄Β μ΄μ ν λΉΒ κΈ°λ₯μμ νμ©λ©λλ€. μ΄λ₯Ό μν΄μλ μΆκ°μ μΈ SCM κ³μ μ€μ μ΄ νμν©λλ€.
κ·Έλ£Ή
κ·Έλ£Ήμ μ¬μ©μμ μ§ν©μ λλ€.
μ κ· κ·Έλ£Ήμ μμ±νλ €λ©΄, Administration > Security > Groups > Add new groupΒ λ©λ΄λ₯Ό μ¬μ©ν©λλ€.
κ·Έλ£Ήμ ꡬμ±μμ μμ νλ €λ©΄, membership total μμ μμ΄μ½μ ν΄λ¦ν©λλ€.
λ€μμ 2κ° κ·Έλ£Ήμ νΉλ³ν μλ―Έλ₯Ό κ°μ§λλ€:
- Anyone: μ΄ κ·Έλ£Ήμ μμ€ν μλ μ‘΄μ¬νλ κ΄λ¦¬λ₯Ό ν μλ μμ΅λλ€. Anonymous userλ₯Ό ν¬ν¨ν λͺ¨λ μ¬μ©μλ κΈ°λ³Έμ μΌλ‘ μ΄ κ·Έλ£Ήμ μν©λλ€.
- sonar-users: μ΄ κ·Έλ£Ήμ λͺ¨λ μ¬μ©μκ° μλμΌλ‘ μμλλ κΈ°λ³Έ κ·Έλ£Ήμ λλ€. μ΄ κ·Έλ£Ήμ λ³κ²½νλ €λ©΄ Settings > General Settings > Security λ©λ΄μμ Default user group μμ±μ λ³κ²½ν©λλ€.
κΈλ‘λ² κΆν
κΈλ‘λ² κΆνμ μ€μ νλ €λ©΄, System administrator κ³μ μΌλ‘ μ μν ν Administration > Security > Global Permissions λ©λ΄λ₯Ό μ¬μ©ν©λλ€.
- Administer System: SonarQube μΈμ€ν΄μ€μ λͺ¨λ κ΄λ¦¬ κΈ°λ₯(global configuration)μ μ¬μ©ν©λλ€.
- Administer Quality Profiles: νμ§ νλ‘νμΌκ³Ό κ΄λ ¨λ λͺ¨λ κΈ°λ₯μ μ¬μ©ν©λλ€.
- Administer Quality Gates: νμ§ κ²μ΄νΈμ κ΄λ ¨λ λͺ¨λ κΈ°λ₯μ μ¬μ©ν©λλ€.
- Execute Analysis: λΆμμ μ€ννκ³ , λΆμμ μννλ λ° νμν λͺ¨λ μ 보μ μ κ·Όν©λλ€(μ΄ μ 보μλ SCM κ³μ λΉλ°λ²νΈμ κ°μ 보μ μ 보λ ν¬ν¨λ©λλ€).
- Create Projects: λΆμ μν μ λΆμ λμμΈ μ κ· νλ‘μ νΈμ ꡬ쑰λ₯Ό μμ±ν©λλ€. SonarQube GUIλ₯Ό ν΅ν΄ μμ±νμ§ μμ νλ‘μ νΈλ₯Ό μ²μμΌλ‘ λΆμνλ κ²½μ°μλ μ΄ κΆνμ΄ νμν©λλ€.
νλ‘μ νΈ κΆν
νλ‘μ νΈ κΆνμ νλ‘μ νΈ λ 벨μ Administration λ©λ΄(Administration > Permissions)μμ μ¬μ©ν©λλ€. Administration > Projects > Management > Actions(νΉμ νλ‘μ νΈ μ ν) > Edit Permissions λ©λ΄μμ νλ‘μ νΈ κΆνμ μμ ν μ μμ΅λλ€.
νλ‘μ νΈ λ 벨 μμ(projects, views, developers)μ λν΄ λ€μκ³Ό κ°μ 5κ°μ§ κΆνμ μ€μ ν μ μμ΅λλ€:
- Browse: νλ‘μ νΈμ μ μν΄ λ€μν μ§νλ€μ νμΈνκ³ , μ΄μλ₯Ό μμ±/ μμ ν©λλ€.Β
- See Source Code: νλ‘μ νΈμ μμ€ μ½λλ₯Ό νμΈν©λλ€.
- Administer Issues: μ΄μμ κ³ κΈ μ 보λ₯Ό μμ ν©λλ€. μ΄μλ₯Ό False Positiveλ‘ μ€μ νκ±°λ, μ΄μμ μ¬κ°λ λ±μ λ³κ²½ν©λλ€.
- Administer: νλ‘μ νΈ μ€μ λ©λ΄μ μ κ·Όνκ³ κ΄λ¦¬ νμ€ν¬λ₯Ό μνν©λλ€.
- Execute Analysis: λΆμμ μ€ννκ³ , λΆμμ μννλ λ° νμν λͺ¨λ μ 보μ μ κ·Όν©λλ€(μ΄ μ 보μλ SCM κ³μ λΉλ°λ²νΈ, jira κ³μ λΉλ°λ²νΈ λ±κ³Ό κ°μ 보μ μ 보λ ν¬ν¨λ©λλ€).
κΆνλ€μ λμ λμ΄ μ μ©λμ§ μμ΅λλ€. μλ₯Ό λ€μ΄, νλ‘μ νΈλ₯Ό κ΄λ¦¬ν΄μΌ νλ κ²½μ°, νλ‘μ νΈμ μ κ·ΌνκΈ° μν΄μλ Browse κΆνλ ν¨κ» κ°μ§κ³ μμ΄μΌ ν©λλ€.
κ° νλ‘μ νΈμ λν κΆνμ μ¬μ©μ νΉμ κ·Έλ£Ήμ μλμΌλ‘ λΆμ¬νκ±°λ, νλ‘μ νΈμ κΆν ν νλ¦Ώ(Permission Templates)μ μ μ©ν΄ λΆμ¬ν μ μμ΅λλ€.
κΈ°λ³Έ νλ‘μ νΈ κΆν λΆμ¬λ₯Ό μν κΆν ν νλ¦Ώ
SonarQubeλ κΈ°λ³Έ κΆν ν νλ¦Ώ(Permission Template)μ μ 곡νλ©°, νλ‘μ νΈ(νΉμ developer, view) μμ± μ μλμΌλ‘ νΉμ ν κΆνμ νΉμ κ·Έλ£Ήμκ² λΆμ¬ν©λλ€. κΆν ν νλ¦Ώμ μμ λ‘κ² μμ /μμ±ν μ μμΌλ©°, μΌλΆμ μ κ· νλ‘μ νΈμλ§ ν νλ¦Ώμ μ μ©ν μλ μμ΅λλ€.
κΆν ν νλ¦Ώμ μ¬μ©νλ €λ©΄, Administration > Security > Permission Templates λ©λ΄λ‘ μ΄λν©λλ€.
κΆν ν νλ¦Ώ μμ±νκΈ°
μλ‘μ΄ ν νλ¦Ώμ μμ±νλ €λ©΄ Administration > Security > Permission Templates λ©λ΄μμ "Create" λ²νΌμ ν΄λ¦ν©λλ€. Project Key Patternμ μ λ ₯ν΄ μλ‘κ² μμ±νλ νλ‘μ νΈλ€μ΄ νΉμ ν κΆν ν νλ¦Ώμ μλ μ μ©νλλ‘ ν μ μμ΅λλ€.
νλ‘μ νΈ ν νλ¦Ώ μμ νκΈ°
μ κ· ν νλ¦Ώ μμ± μ ν΄λΉ ν νλ¦Ώμ μλ¬΄λ° μ 보λ κ°μ§κ³ μμ§ μμ΅λλ€. ν νλ¦Ώ μ΄λ¦μ ν΄λ¦νλ©΄ κΆν μμ μΈν°νμ΄μ€λ‘ μ΄λν©λλ€.
νλ‘μ νΈ μμ±μ κΆν
νλ‘μ νΈ μμ±μ(Project Creator)λ λ§€μ° νΉλ³ν κ·Έλ£ΉμΌλ‘, μ΄ κ·Έλ£Ήμ ν νλ¦Ώ κΆν μμ μΈν°νμ΄μ€μλ§ νμλ©λλ€. νλ‘μ νΈ μμ±μ ν΄λΉ νλ‘μ νΈλ₯Ό μμ±ν μ¬μ©μμκ² λΆμ¬λλ κΆνμΌλ‘, κΈλ‘λ² λ 벨μ Project Creation κΆνμ΄ νμν μ¬μ©μμκ² μ μ©ν©λλ€. SonarQube κ΄λ¦¬μλ νΉμ μ¬μ©μλ€μ΄ μμ¨μ μΌλ‘ νλ‘μ νΈλ₯Ό μμ±νκ³ κ΄λ¦¬ν μ μλλ‘ κΆνμ λΆμ¬ν μ μμ΅λλ€.
νλ‘μ νΈλ₯Ό μμ±ν μ΄ν λ³λλ‘ νλ‘μ νΈ ν νλ¦Ώμ μ μ©ν μ μμ§λ§, "Project Creators" κΆνμ ν¬ν¨ν ν νλ¦Ώμ κΈ°μ‘΄ νλ‘μ νΈμ μ μ©νλλΌλ ν΄λΉ νλ‘μ νΈλ₯Ό μ΅μ΄λ‘ μμ±ν μ¬μ©μμκ² κ΄λ ¨ κΆνμ λΆμ¬νμ§λ μμ΅λλ€.
ν νλ¦Ώμ μ€μ λ νλ‘μ νΈ κΆν μ΄κΈ°ν
νλ‘μ νΈμ κΆν ν νλ¦Ώμ μ μ©νλ €λ©΄ Projects > Management λ©λ΄λ₯Ό μ¬μ©ν©λλ€. νλ‘μ νΈμ Actions > Apply Permission Template μ΅μ μμ νΉμ ν νλ‘μ νΈμ κΆν ν νλ¦Ώμ μ μ©νκ±°λ, Bulk Apply Permission Templateλ₯Ό νμ©ν΄ 볡μμ νλ‘μ νΈμ κΆν ν νλ¦Ώμ μ μ©ν μ μμ΅λλ€.
νλ‘μ νΈμ κΆν ν νλ¦Ώ μ¬μ΄μλ μλ¬΄λ° μ°κ΄μ±μ΄ μμ΅λλ€. μ¦:
- νλ‘μ νΈμ κ΄λ ¨λ κΆνμ ν΄λΉ νλ‘μ νΈμ κΆν ν νλ¦Ώμ μ μ©ν μ΄ν μμ κ°λ₯ν©λλ€.
- κΆν ν νλ¦Ώμ μλ©νλλΌλ νλ‘μ νΈμ κΆνμ λ³κ²½λμ§ μμ΅λλ€.
FAQ
μ κ° μ κ³μ μ κΆνμ μ κΆμ΅λλ€.
λ€μ λ°μ΄ν° λ² μ΄μ€ λͺ λ Ήμ΄λ₯Ό μ€ννμ¬ System administratorλ₯Ό λ€μ μμ±ν©λλ€:
INSERT INTO user_roles(user_id, role) VALUES ((select id from users where login='mylogin'), 'admin');
Related content
Β© 2017-2018 Moses Kim.
λ³λμ μΈκΈμ΄ μλ ν, μ΄ μ€νμ΄μ€μ 컨ν
μΈ λ ν¬λ¦¬μμ΄ν°λΈ μ»€λ¨Όμ¦ μ μμνμ-λΉμ리-λμΌμ‘°κ±΄λ³κ²½νλ½ 4.0 κ΅μ λΌμ΄μ μ€μ λ°λΌ μ΄μ©ν μ μμ΅λλ€.
SONARQUBEλ SonarSource SAμ νΈλ μ΄λ λ§ν¬μ
λλ€. λͺ¨λ νΈλ μ΄νΈ λ§ν¬ λ° μ μκΆμ κ° μμ μμ μμ λ¬Όμ
λλ€.
::: SonarQube κ΄λ ¨ λ¬Έμ : μ΄λ©μΌ :::