Jenkins에서 익명 사용자가 작업 공간을 탐색하지 않고 작업 목록 만 볼 수 있도록 허용


15

우리는 Jenkins CI를 운영하고 있습니다. 일반적으로 우리는 제공하고 싶습니다

  1. 특정 그룹의 인증 된 사용자에 대한 전체 액세스
  2. 익명 사용자에 대한 전체 읽기 권한
  3. 익명 사용자가 특정 프로젝트에 액세스하지 못하도록 차단 (완전히)

우리는 Unix 사용자 / 그룹 데이터베이스프로젝트 기반 매트릭스 인증 전략을 사용 합니다. 포인트 (1)과 (2)는 잘 작동하지만 (3)을 달성하는 데 문제가 있습니다.

우리는 시도했다 :

  • 에서 글로벌 보안 에 부여 후 익명에 대한 모든 권리를 제거하고 프로젝트 기반 보안 하지만 (심지어 주요 젠킨스 페이지) 모든 익명 요청은 로그인 페이지를 산출 그 후
  • 에서 글로벌 보안 권한을 다음 단계에서 추가 :보기 - 읽기, 작업-발견은, 작업-읽기 (작동하지 않았다) (작동하지 않았다) (작동하지 않았다), Overal - 읽기 -이 마지막 그러나 일 듯 익명의 사용자에게 너무 많은 권한을 부여했으며 특정 프로젝트에 대한 액세스를 제한 할 수 없었습니다.

tl; dr

익명으로 완전히 숨기거나 차단 된 몇 가지 프로젝트를 통해 완전히 열린 (읽기) Jenkins CI를 원합니다.

답변:


20

좋아, 그래서 나는 그것을 관리했다.

  • 역할 기반 권한 부여 전략 플러그인 이 필요합니다.
  • 글로벌 보안 구성 에서이 인증 전략 사용
  • 관리 및 할당 역할 / 역할 관리 새 역할을 만들 익명을 하고 인증을 모두 글로벌프로젝트 역할
  • 전역 역할 에서 익명 / 역할 권한 만 전체 / 읽기 권한 으로 부여합니다 (이것은 탐색 프롬프트 및 로그인 페이지 링크가있는 익명 사용자 기본 젠킨스 화면에 액세스합니다. 즉시 로그인 프롬프트가 아님)
  • 에서 프로젝트 역할 추가 익명 오른쪽으로 부여 액세스에이 역할을 추가 한 후 익명 사용자가 원하는 프로젝트를 일치 정규 표현식 패턴과 역할 작업 / 읽기작업 / 발견을
  • 탐색을하는 관리 및 역할 할당 / 역할 할당 및 할당 익명 으로 사용자 그룹 익명 역할 (특정 그룹에 인증 된 사용자). 저장

관련된 전략은 역할 전략이 사용자 이름을 일치시킬 때 대소 문자를 구분한다는 것입니다. "역할 할당"페이지에서 대문자 사용자 이름을 입력했습니다. 소문자 사용자 이름으로 로그인했는데 사용자 이름이 대문자로 표시 되어도 사용자와 일치하는 역할이 없습니다. 허용되는 권한이 익명 사용자의 권한으로 대체되었습니다. 대문자 사용자 이름으로 로그인하면 작동합니다.
s_t_e_v_e

이 답변이 효과가있는 동안 "인증 된"역할의 목적 또는 구성을 설명했습니다.
Brad Wood

그것은 바로 가기 일뿐입니다. "익명"및 "권한"일 수 있습니다. 숨겨진 특정 작업을보고 편집하는 데 사용할 수있는 사람의 하위 집합이 실제로 계정이있는 작업과 동일하기 때문에 "인증 됨"을 사용했습니다.
Wojtek


2

위의 https://wiki.jenkins.io/display/JENKINS/Role+Strategy+Plugin플러그인으로

그러면 역할 관리 페이지 에서 역할을 추가 할 필요가 없습니다 .authenticated

스크린 샷 : 역할 관리역할 할당

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.