다음을 통해 공유


프로젝트 가시성을 퍼블릭 또는 프라이빗으로 변경

Azure DevOps Services

퍼블릭과 프라이빗 간에 Azure DevOps 프로젝트의 가시성을 변경하고 각 표시 유형 설정의 보안 및 액세스 의미를 이해하는 방법을 알아봅니다.

중요합니다

  • 프라이빗 프로젝트를 공개 표시 유형으로 변경하면 모든 프로젝트 콘텐츠에 공개적으로 액세스할 수 있게 됩니다. 특정 리포지토리, 영역 경로 또는 빌드 아티팩트를 공용 프로젝트 내에서 선택적으로 유지할 수 없습니다.
  • 공용 프로젝트 허용 정책이 이미 설정된 조직만 프로젝트의 표시 유형을 공개로 변경하는 프로젝트를 만들 수 있습니다. 정책을 사용하지 않는 조직에서는 이 정책을 더 이상 사용할 수 없습니다. Microsoft는 모든 공용 프로젝트 요구 사항에 대해 GitHub 를 사용하는 것이 좋습니다.

프로젝트를 퍼블릭으로 만들 때 변경되는 내용

프로젝트를 공개하는 것은 사용 권한, 액세스 수준 및 사용 가능한 기능에 영향을 줍니다.

보안 및 권한 변경

프로젝트 가시성을 프라이빗에서 퍼블릭으로 전환하면 다음과 같은 변경 내용이 발생합니다.

  • 거부 권한은 무시됩니다. 명시적으로 "거부"로 설정된 모든 권한은 공용 사용자에게 적용되지 않습니다.
  • 최소 액세스 권한 부여: 비회원은 공용 콘텐츠에 대한 기준 읽기 권한을 자동으로 받습니다.
  • 빌드 파이프라인 범위: Project 컬렉션 범위로 설정된 파이프라인은 Project 범위와 함께 자동으로 실행하여 보안을 강화합니다.

액세스 수준 차이

사용자 유형 프라이빗 프로젝트 액세스 공용 프로젝트 액세스
익명 사용자 액세스 권한 없음 대부분의 콘텐츠에 대한 읽기 전용 액세스
관련자 제한된 보드 액세스, 리포지토리 액세스 없음 리포지토리 및 보드에 대한 모든 권한
기본 사용자 테스트 계획을 제외한 모든 권한 테스트 계획을 제외한 모든 권한
기본 + 테스트 계획 테스트 계획을 포함한 모든 권한 테스트 계획을 포함한 모든 권한

비회원에 대한 기능 가용성

다음 표에서는 프로젝트 멤버가 아닌 사용자가 사용할 수 있는 기능을 보여줍니다.

서비스 영역 비회원 액세스 비고
대시보드 읽기 전용, 제한된 위젯 많은 위젯을 사용할 수 없음
Wiki 읽기 전용 전체 콘텐츠 표시
Boards 작업 항목만 읽습니다. 백로그, 보드, 숨겨진 스프린트
Repos 읽기 전용 Git 리포지토리 숨겨진 TFVC 리포지토리
파이프라인 빌드/릴리스 결과 읽기 숨겨진 편집기 및 라이브러리
테스트 계획 액세스 권한 없음 수동 테스트를 사용할 수 없음
Search 전체 검색 기능 접근성 있는 콘텐츠 간
설정 액세스 권한 없음 숨겨진 관리 기능

필수 조건

프로젝트 가시성을 변경하기 전에 다음 요구 사항을 충족하는지 확인합니다.

요구 사항 세부 정보
사용 권한 프로젝트 컬렉션 관리자 또는 조직 소유자
조직 설정 "공용 프로젝트 허용" 정책을 사용하도록 설정해야 합니다.
보안 검토 마이그레이션 검사 목록 완료

미리 배포 보안 검사 목록

Warning

공용 프로젝트는 이전 커밋, 작업 항목 및 빌드 로그를 포함한 기록 데이터를 노출합니다. 프로젝트를 공개하기 전에 모든 콘텐츠를 신중하게 검토합니다.

조직 및 ID 노출

  • [ ] 구성원 정보: 모든 조직 구성원의 이름과 전자 메일 주소가 표시됩니다.
  • [ ] 조직 설정: 노출된 모든 조직 및 프로젝트 설정의 읽기 전용 보기
  • [ ] 프로세스 메타데이터: 조직 프로젝트의 모든 선택 목록 값이 표시됩니다.
  • [ ] 빌드 기록: 빌드 트리거 및 Git 커밋의 이름 및 이메일 주소가 노출됨

프로젝트 간 고려 사항

  • [ ] 연결된 아티팩트: 중요한 정보를 노출할 수 있는 프라이빗 프로젝트에 대한 링크 확인
  • [ ] 공유 리소스: 프로젝트에서 액세스하는 조직 수준 리소스 검토

콘텐츠 보안 검토

작업 항목 및 Agile 도구

  • [ ] 기록 작업 항목: 닫힌 작업 항목을 포함한 모든 작업 항목을 검토하여 중요한 정보를 확인합니다.
  • [ ] 영역 경로 보안: 영역 경로에 특별한 보안 제한이 없는지 확인합니다(공용 프로젝트에서 거부된 권한은 무시됨).
  • [ ] 토론 및 의견: 모든 작업 항목 토론에서 중요하거나 부적절한 콘텐츠를 확인합니다.

소스 코드 리포지토리

  • [ ] 커밋 기록: 자격 증명, 보안 취약성 또는 독점 코드에 대한 전체 Git 기록 검토
  • [ ] 메시지 커밋: 모든 커밋 메시지에서 중요한 정보 또는 부적절한 콘텐츠 확인
  • [ ] 파일 내용: 자격 증명, API 키 또는 기밀 데이터를 포함하는 파일이 없는지 확인합니다.

파이프라인 빌드 및 릴리스

  • [ ] 파이프라인 정의: 노출된 자격 증명, 내부 URL 또는 환경 세부 정보 검토
  • [ ] 빌드 로그: 기록 빌드 로그에서 중요한 정보를 확인합니다.
  • [ ] 서비스 연결: 비회원에서 액세스할 수 없는 프라이빗 피드 종속성이 없는지 확인

아티팩트 및 패키지

  • [ ] 패키지 콘텐츠: 개인 정보 보호 문제에 대한 프로젝트 범위 피드의 모든 패키지 검토
  • [ ] 피드 설정: 퍼블릭 프로젝트 피드에 대해 업스트림 설정을 사용할 수 없음 이해

확장 및 사용자 지정

  • [ ] 사용자 지정 확장: 비회원에 대해 확장이 제대로 작동하는지 확인
  • [ ] 작업 항목 양식 사용자 지정: 비회원 액세스 권한이 있는 사용자 지정 컨트롤 및 필드 테스트

1단계: 조직에 공용 프로젝트 사용

  1. 조직에 로그인합니다(https://dev.azure.com/{yourorganization}).

  2. 조직 설정을 선택합니다.

    조직 설정 단추를 보여 주는 스크린샷

  3. 정책을 선택합니다.

  4. 보안 정책에서 공개 프로젝트 허용을 켭니다.

    조직 설정, 정책 페이지, 보안 정책을 보여 주는 스크린샷

2단계: 프로젝트 표시 유형 변경

  1. 프로젝트(https://dev.azure.com/{yourorganization}/{yourproject})로 이동합니다.

  2. 프로젝트 설정을 선택합니다.

  3. 개요를 선택합니다.

  4. 표시 유형 드롭다운 메뉴에서 공용 또는 비공개를 선택합니다.

  5. 저장을 선택합니다.

    프로젝트 설정, 개요, 표시 유형 옵션을 보여 주는 스크린샷

퍼블릭 프로젝트에서 기여자 관리

프로젝트 멤버 추가

프라이빗 프로젝트와 동일한 방식으로 퍼블릭 프로젝트에 기여자를 추가합니다.

  1. 프로젝트 설정>사용 권한으로 이동합니다.
  2. 추가를 선택하여 사용자를 초대합니다.
  3. 적절한 액세스 수준(이해 관계자, 기본 또는 기본 + 테스트 계획)을 할당합니다.

자세한 내용은 조직에 사용자 추가를 참조하세요.

외부 사용자 고려 사항

공개 프로젝트에 외부 사용자를 초대 하는 경우:

  • 조직의 모든 공개 콘텐츠에 대한 액세스 권한을 얻습니다.
  • 다른 곳에 중요한 콘텐츠가 있는 경우 퍼블릭 프로젝트에 대해 별도의 조직을 만드는 것이 좋습니다.

중요한 콘텐츠에 대한 대체 방법

옵션 1: 공용 프로젝트에 대한 별도의 조직

현재 조직에 중요한 자료가 포함된 경우:

  1. 퍼블릭 프로젝트를 위한 새 조직 만들기
  2. 민감하지 않은 콘텐츠만 새 조직으로 마이그레이션
  3. 원래 프라이빗 조직에서 중요한 프로젝트 유지

옵션 2: 선택적 콘텐츠 마이그레이션

중요한 작업 항목 이동

  • 작업 항목 이동 기능을 사용하여 중요한 항목을 프라이빗 프로젝트로 전송
  • 프로젝트 간 링크는 멤버에 대해 계속 작동하지만 비회원에서 숨겨진 상태로 유지됩니다.

Git 리포지토리 팁 마이그레이션

문제가 있는 기록이 있는 리포지토리의 경우 현재 상태만 마이그레이션합니다.

Warning

이 작업은 원본에 연결되지 않은 새 리포지토리를 만듭니다. 끌어오기 요청 기록 및 변경 내용 추적이 손실됩니다.

# Clone the existing repository
git clone <original_clone_URL>
cd <repository_name>

# Ensure you're on the desired branch
git checkout main

# Remove Git history
rm -rf .git  # On Windows: rmdir /s .git

# Initialize new repository
git init

# Connect to new repository in public project
git remote add origin <new_public_repo_URL>

# Push current state as initial commit
git add .
git commit -m "Initial public release"
git push --set-upstream origin main

비회원에 대한 제한 사항

공용 프로젝트의 비회원은 다음 작업을 수행할 수 없습니다.

  • 콘텐츠 편집 또는 만들기(파일, 작업 항목, 파이프라인)
  • 프로젝트 멤버의 전자 메일 주소 또는 연락처 정보 보기
  • 관리 설정 또는 구성 페이지에 액세스
  • 조직 전체에서 고급 검색 기능 사용
  • 동일한 조직의 여러 공용 프로젝트 간 탐색
  • 아티팩트 즐겨찾기 또는 팔로우

공용 프로젝트 액세스 문제 해결

일반적인 문제

문제: 비회원은 공개한 후 프로젝트에 액세스할 수 없습니다.

  • 해결 방법: 조직의 "공개 프로젝트 허용" 정책이 사용하도록 설정되어 있는지 확인합니다.

문제: 일부 콘텐츠가 계속 제한됨으로 표시됨

  • 해결 방법: 특정 영역에 영향을 줄 수 있는 거부 권한 확인

문제: 외부 사용자가 기여할 수 없습니다.

  • 해결 방법: 적절한 액세스 수준을 가진 프로젝트 멤버로 추가되었는지 확인

다음 단계