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

Azure DevOps Services

중요합니다

Azure DevOps 공용 프로젝트는 사용 중지됩니다. 2027년부터 기존 퍼블릭 프로젝트는 프라이빗으로 변환합니다. 자세한 내용은 공개 프로젝트 사용 중지공개 프로젝트에서 GitHub로 마이그레이션을 참조하세요.

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

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

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

중요합니다

프라이빗 프로젝트를 공개 표시 유형으로 변경하면 모든 프로젝트 콘텐츠에 공개적으로 액세스할 수 있게 됩니다. 특정 리포지토리, 영역 경로 또는 빌드 아티팩트를 공용 프로젝트 내에서 선택적으로 유지할 수 없습니다.

보안 및 권한 변경

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

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

액세스 수준 차이

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

비회원에 대한 기능 가용성

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

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

필수 조건

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

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

마이그레이션 전 보안 체크리스트

경고

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

조직 및 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 리포지토리 팁 마이그레이션

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

경고

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

# 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

비회원에 대한 제한 사항

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

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

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

일반적인 문제

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

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

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

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

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

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

다음 단계