> ## Documentation Index
> Fetch the complete documentation index at: https://docs.coreweave.com/llms.txt
> Use this file to discover all available pages before exploring further.

# 레지스트리 액세스 설정

> 사용자와 팀을 관리하고 역할을 부여하며 역할 기반 권한을 설정하여 레지스트리 액세스를 설정합니다.

레지스트리 관리자는 레지스트리 설정에서 [레지스트리 역할을 설정](/ko/products/registry/configure_registry#configure-registry-roles)하거나, 레지스트리에 [사용자를 추가](/ko/products/registry/configure_registry#add-a-user-or-a-team-to-a-registry)하거나, 레지스트리에서 [사용자를 제거](/ko/products/registry/configure_registry#remove-a-user-or-team-from-a-registry)할 수 있습니다.

<h2 id="manage-users">
  사용자 관리
</h2>

<h3 id="add-a-user-or-a-team">
  사용자 또는 팀 추가
</h3>

레지스트리 관리자는 개별 사용자나 팀 전체를 레지스트리에 추가할 수 있습니다. 레지스트리에 사용자 또는 팀을 추가하려면 다음 단계를 따르세요.

1. [https://forge.coreweave.com/registry/](https://forge.coreweave.com/registry/) 에서 레지스트리로 이동하세요.
2. 사용자 또는 팀을 추가할 레지스트리를 선택하세요.
3. 오른쪽 상단의 톱니바퀴 아이콘을 클릭하여 레지스트리 설정을 여세요.
4. **레지스트리 액세스** 섹션에서 **Add access**를 클릭하세요.
5. **Include users and teams** 필드에 사용자 이름, 이메일 또는 팀 이름을 하나 이상 입력하세요.
6. **Add access**를 클릭하세요.

자세한 내용은 [레지스트리에서 사용자 역할 설정하기](/ko/products/registry/configure_registry#configure-registry-roles) 또는 [레지스트리 역할 권한](/ko/products/registry/configure_registry#role-permissions)을 참조하세요.

<h3 id="remove-a-user-or-team">
  사용자 또는 팀 제거
</h3>

레지스트리 관리자는 레지스트리에서 개별 사용자나 팀 전체를 제거할 수 있습니다. 레지스트리에서 사용자 또는 팀을 제거하려면 다음 단계를 따르세요.

1. [https://forge.coreweave.com/registry/](https://forge.coreweave.com/registry/) 에서 레지스트리로 이동하세요.
2. 사용자를 제거할 레지스트리를 선택하세요.
3. 오른쪽 상단의 톱니바퀴 아이콘을 클릭하여 레지스트리 설정을 여세요.
4. **레지스트리 액세스** 섹션으로 이동한 후 제거할 사용자 이름, 이메일 또는 팀을 입력하세요.
5. **Delete** 버튼을 클릭하세요.

<Note>
  팀에서 사용자를 제거하면 해당 사용자의 레지스트리 액세스 권한도 함께 제거됩니다.
</Note>

<h3 id="change-the-owner-of-a-registry">
  레지스트리 소유자 변경
</h3>

레지스트리 관리자는 **Restricted Viewer** 또는 **Viewer**를 포함한 모든 구성원을 레지스트리 소유자로 지정할 수 있습니다. 레지스트리 소유권은 주로 책임 소재를 명확히 하기 위한 것이며, 사용자에게 부여된 역할의 권한 외에 추가 권한을 제공하지 않습니다.

소유자를 변경하려면 다음 단계를 따르세요.

1. [https://forge.coreweave.com/registry/](https://forge.coreweave.com/registry/) 에서 레지스트리로 이동하세요.
2. 설정할 레지스트리를 선택하세요.
3. 오른쪽 상단의 톱니바퀴 아이콘을 클릭하세요.
4. **Registry members and roles** 섹션까지 스크롤하세요.
5. 구성원의 행에 마우스를 올리세요.
6. 행 끝에 있는 **액션(<Icon icon="ellipsis" iconType="solid" />)** 메뉴를 클릭한 다음 **Make owner**를 클릭하세요.

<h2 id="configure-registry-roles">
  레지스트리 역할 설정
</h2>

이 섹션에서는 레지스트리 구성원의 역할을 설정하는 방법을 설명합니다. 각 역할의 권한, 우선순위, 기본값 등 레지스트리 역할에 대한 자세한 내용은 [레지스트리 역할 세부 정보](#details-about-registry-roles)를 참조하세요.

1. [https://forge.coreweave.com/registry/](https://forge.coreweave.com/registry/) 에서 레지스트리로 이동하세요.
2. 설정할 레지스트리를 선택하세요.
3. 오른쪽 상단의 톱니바퀴 아이콘을 클릭하세요.
4. 스크롤하여 **Registry members and roles** 섹션으로 이동하세요.
5. **Member** 필드에서 권한을 편집할 사용자 또는 팀을 검색하세요.
6. **Registry role** 열에서 해당 사용자의 역할을 클릭하세요.
7. 드롭다운에서 사용자에게 부여할 역할을 선택하세요.

<h2 id="details-about-registry-roles">
  레지스트리 역할 세부 정보
</h2>

다음 섹션에서는 레지스트리 역할에 대해 자세히 설명합니다.

<Note>
  팀의 레지스트리 역할은 각 구성원의 [팀 역할](/ko/products/wandb/platform/app/settings-page/teams#team-roles-and-permissions)과 별개입니다. 레지스트리에 추가된 팀에 속해 있다면, W\&B는 사용자의 유효 레지스트리 역할을 계산할 때 팀 내 사용자의 역할이 아닌 팀에 부여된 레지스트리 역할을 기준으로 합니다.
</Note>

<h3 id="role-types">
  역할 유형
</h3>

레지스트리에는 다음과 같은 역할이 있습니다.

* **Restricted Viewer**: 레지스트리 아티팩트 메타데이터에 대한 읽기 전용 액세스 권한을 제공합니다. Restricted Viewer는 아티팩트 세부 정보를 볼 수 있지만, 아티팩트 파일 내용에 액세스하거나 컬렉션, 자동화 및 기타 레지스트리 리소스를 생성, 업데이트, 삭제할 수는 없습니다. [이 역할은 Dedicated Cloud 및 Self-Managed Server v0.75.0 이상에서 사용할 수 있습니다](/ko/products/registry/configure_registry#restricted-viewer-role-details).
* **Viewer**: 레지스트리 아티팩트에 대한 읽기 전용 액세스 권한을 제공합니다. 컬렉션 세부 정보와 연결된 아티팩트의 세부 정보를 볼 수 있으며, 아티팩트를 다운로드하거나 W\&B SDK의 `wandb.Run.use_artifact()`로 아티팩트를 사용할 수 있습니다.
* **Member**: 컬렉션, 자동화 및 기타 레지스트리 리소스를 생성, 업데이트, 삭제할 수 있는 권한을 제공합니다. 레지스트리 아티팩트에 대한 읽기 액세스 권한도 제공합니다.
* **Admin**: Member의 모든 권한에 더해 레지스트리 설정과 사용자 역할을 관리할 수 있는 권한을 제공합니다.

각 역할에 부여되는 권한에 대한 자세한 내용은 [역할 권한](#role-permissions)을 참조하세요.

<h3 id="role-permissions">
  역할 권한
</h3>

다음 표는 각 레지스트리 역할과 역할별로 부여되는 권한을 보여 줍니다.

| 권한 | 권한 그룹 | Restricted Viewer<br />(Multi-tenant Cloud, 초대 전용) | Viewer | Member | Admin |
| - | - | - | :-: | :-: | :-: |
| 컬렉션 세부 정보 보기 | 조회 | ✓ | ✓ | ✓ | ✓ |
| 연결된 아티팩트 세부 정보 보기 | 조회 | ✓ | ✓ | ✓ | ✓ |
| 사용: use\_artifact로 레지스트리의 아티팩트 사용 | 조회 | | ✓ | ✓ | ✓ |
| 연결된 아티팩트 다운로드 | 조회 | | ✓ | ✓ | ✓ |
| 아티팩트 파일 뷰어에서 파일 다운로드 | 조회 | | ✓ | ✓ | ✓ |
| 레지스트리 검색 | 조회 | ✓ | ✓ | ✓ | ✓ |
| 레지스트리 설정 및 사용자 목록 보기 | 조회 | ✓ | ✓ | ✓ | ✓ |
| 컬렉션에 새 자동화 생성 | 생성 | | | ✓ | ✓ |
| 새 버전 추가 시 Slack 알림 켜기 | 생성 | | | ✓ | ✓ |
| 새 컬렉션 생성 | 생성 | | | ✓ | ✓ |
| 새 레지스트리 생성 | 생성 | | | ✓ | ✓ |
| 컬렉션 Card(설명) 편집 | 업데이트 | | | ✓ | ✓ |
| 연결된 아티팩트 설명 편집 | 업데이트 | | | ✓ | ✓ |
| 컬렉션 태그 추가 또는 삭제 | 업데이트 | | | ✓ | ✓ |
| 연결된 아티팩트의 별칭 추가 또는 삭제 | 업데이트 | | | ✓ | ✓ |
| 연결된 아티팩트의 [보호된 별칭](/ko/products/registry/aliases#protected-aliases) 추가 또는 삭제 | 업데이트 | | | | ✓ |
| [보호된 별칭](/ko/products/registry/aliases#protected-aliases) 생성 또는 삭제 | 업데이트 | | | | ✓ |
| 새 아티팩트 연결 | 업데이트 | | | ✓ | ✓ |
| 레지스트리의 허용 유형 목록 편집 | 업데이트 | | | ✓ | ✓ |
| 레지스트리 이름 편집 | 업데이트 | | | ✓ | ✓ |
| 컬렉션 삭제 | 삭제 | | | ✓ | ✓ |
| 자동화 삭제 | 삭제 | | | ✓ | ✓ |
| 레지스트리에서 아티팩트 연결 해제 | 삭제 | | | ✓ | ✓ |
| 레지스트리에서 허용하는 아티팩트 유형 편집 | Admin | | | | ✓ |
| 레지스트리 가시성 변경(Organization 또는 Restricted) | Admin | | | | ✓ |
| 레지스트리에 사용자 추가 | Admin | | | | ✓ |
| 레지스트리에서 사용자 역할 부여 또는 변경 | Admin | | | | ✓ |

<h3 id="default-roles">
  기본 역할
</h3>

사용자 또는 팀이 레지스트리에 추가되면 W\&B가 기본 **레지스트리 역할**을 자동으로 부여합니다. 기본 역할은 레지스트리의 역할 드롭다운에 처음 표시되는 역할로, 반드시 사용자에게 최종적으로 적용되는 역할과 같지는 않습니다.

기본 역할은 배포 유형과 entity 유형에 따라 다릅니다.

| Entity | 기본 레지스트리 역할<br />(Dedicated Cloud / Self-Managed) | 기본 레지스트리 역할<br />(Multi-tenant Cloud) |
| - | - | - |
| 팀 | Restricted Viewer (Server v0.75.0+) <br />Viewer (Server v0.74.x 이하) | Restricted Viewer |
| 사용자(관리자 제외) | Restricted Viewer (Server v0.75.0+) <br />Viewer (Server v0.74.x 이하) | Restricted Viewer |
| 서비스 계정(관리자 제외) | Member<sup><a href="#service_account_footnote">1</a></sup> | Member<sup><a href="#service_account_footnote">1</a></sup> |
| 조직 관리자 | Admin | Admin |

<a id="service_account_footnote">1</a>: 서비스 계정에는 **Viewer** 또는 **Restricted Viewer** 역할을 부여할 수 없습니다. 서비스 계정의 액세스가 결정되는 방식은 [서비스 계정 액세스](#service-account-access)를 참조하세요.

레지스트리 관리자는 레지스트리에서 사용자와 팀의 역할을 부여하거나 변경할 수 있습니다.
자세한 내용은 [레지스트리에서 사용자 역할 설정하기](/ko/products/registry/configure_registry#configure-registry-roles)를 참조하세요.

<h3 id="effective-and-inherited-registry-roles">
  유효 레지스트리 역할과 상속된 레지스트리 역할
</h3>

사용자의 *유효 레지스트리 역할*은 사용자가 레지스트리에서 실제로 수행할 수 있는 작업을 결정하는 역할입니다. 레지스트리의 구성원 목록에서는 사용자 행의 역할 드롭다운 옆에 이 역할이 연한 회색으로 표시됩니다.

<Frame>
  <img src="https://mintcdn.com/coreweave-dbfa0e8d/3Dv_sw2eg8feUJlx/products/registry/_media/role_conflict.png?fit=max&auto=format&n=3Dv_sw2eg8feUJlx&q=85&s=58bdc72510f9e1a3afacb9b7ba422801" alt="사용자의 유효 레지스트리 역할을 보여 주는 레지스트리 구성원 목록" width="2286" height="598" data-path="products/registry/_media/role_conflict.png" />
</Frame>

W\&B는 다음 소스에서 사용자에게 적용되는 역할 중 가장 높은 역할을 선택하여 유효 역할을 계산합니다.

* 조직의 기본 레지스트리 역할(제한된 레지스트리가 아닌 경우)
* 레지스트리에서 사용자에게 부여된 역할
* 사용자가 속한 팀에 레지스트리에서 부여된 역할

조직의 기본 레지스트리 역할이나 레지스트리에 추가된 팀의 역할이 더 높으면 사용자는 그 역할을 상속합니다. 예를 들면 다음과 같습니다.

* 레지스트리에서 **Viewer** 역할을 가진 사용자가 해당 레지스트리에서 **Admin** 역할을 가진 팀에 속해 있으면 실질적으로 **Admin** 역할을 갖습니다.
* 레지스트리에서 **Viewer** 역할을 가진 사용자가 해당 레지스트리에서 **Member** 역할을 가진 팀에 속해 있으면 실질적으로 **Member** 역할을 갖습니다.
* 레지스트리에서 **Member** 역할을 가진 사용자는 해당 레지스트리에서 **Viewer** 역할을 가진 팀에 속해 있더라도 실질적으로 **Member** 역할을 갖습니다.

즉, 기본 레지스트리 역할이나 부여된 레지스트리 역할이 사용자의 유효 역할보다 낮을 수 있습니다.

<Note>
  서비스 계정은 소속 팀의 더 높은 레지스트리 권한을 상속하지 않습니다. 자세한 내용은 [서비스 계정 액세스](#service-account-access)를 참조하세요.
</Note>

<h3 id="service-account-access">
  서비스 계정 액세스
</h3>

서비스 계정은 레지스트리 역할 상속의 예외입니다. 서비스 계정은 소속 팀으로부터 상위 레지스트리 권한을 상속받지 않습니다. 예를 들어 팀에 레지스트리에 대한 **Admin** 액세스 권한이 있더라도, 해당 팀의 서비스 계정에는 **Admin** 액세스가 아닌 자동 서비스 계정 액세스 수준만 부여됩니다.

레지스트리 관리자는 [서비스 계정을 Member 또는 Admin 역할로 레지스트리에 추가](/ko/products/registry/configure_registry#role-types)하여 서비스 계정에 더 높은 액세스 권한을 명시적으로 부여할 수 있습니다.

자동 서비스 계정 액세스는 레지스트리 가시성에 따라 달라집니다.

* **조직 가시성**: 서비스 계정에 자동으로 **Member** 액세스 권한이 부여됩니다.
* **제한된 가시성**: 서비스 계정이 속한 팀 중 하나라도 레지스트리에 대해 **Member** 또는 **Admin** 액세스 권한을 가진 경우에만 서비스 계정에 자동으로 **Member** 액세스 권한이 부여됩니다. 서비스 계정이 속한 모든 팀이 **Viewer** 또는 **Restricted Viewer** 액세스 권한만 가진 경우에는 서비스 계정에 액세스 권한이 자동으로 부여되지 않습니다.

레지스트리 가시성 유형에 대한 자세한 내용은 [가시성 유형](/ko/products/registry/create_registry#visibility-types)을 참조하세요.

<h3 id="restricted-viewer-role-details">
  Restricted Viewer 역할 세부 정보
</h3>

**Restricted Viewer** 역할은 정식 출시(GA)되었습니다. Dedicated Cloud 및 Self-Managed의 경우 Server v0.75.0 이상이 필요합니다.

이 역할은 레지스트리 아티팩트에 대한 읽기 전용 액세스 권한을 제공합니다. 컬렉션, 자동화 또는 기타 레지스트리 리소스를 생성, 업데이트, 삭제할 수는 없습니다.

**Restricted Viewer**는 **Viewer**와 달리 다음 작업을 수행할 수 없습니다.

* 아티팩트 파일을 다운로드하거나 파일 내용에 액세스할 수 없습니다.
* W\&B SDK에서 `wandb.Run.use_artifact()`로 아티팩트를 사용할 수 없습니다.

<h4 id="sdk-compatibility">
  SDK 호환성
</h4>

<Note>
  **SDK 버전 요구 사항**

  **Restricted Viewer** 역할로 W\&B SDK를 사용해 아티팩트에 액세스하려면 W\&B SDK 버전 0.19.9 이상을 사용해야 합니다. 그렇지 않으면 일부 SDK 명령어에서 권한 오류가 발생합니다.
</Note>

**Restricted Viewer**가 W\&B Python SDK를 사용하면 일부 함수를 사용할 수 없거나 함수가 다르게 작동합니다.

다음 메서드는 사용할 수 없으며, 호출하면 권한 오류가 발생합니다.

* [`wandb.Run.use_artifact()`](/ko/products/wandb/ref/python/experiments/run#method-run-use_artifact)
* [`wandb.Artifact.download()`](/ko/products/wandb/ref/python/experiments/artifact#method-artifact-download)
* [`wandb.Artifact.file()`](/ko/products/wandb/ref/python/experiments/artifact#method-artifact-file)
* [`wandb.Artifact.files()`](/ko/products/wandb/ref/python/experiments/artifact#method-artifact-files)

다음 메서드는 아티팩트 메타데이터에만 액세스할 수 있습니다.

* [`wandb.Artifact.get_entry()`](/ko/products/wandb/ref/python/experiments/artifact#method-artifact-get_entry)
* [`wandb.Artifact.get_path()`](/ko/products/wandb/ref/python/experiments/artifact#method-artifact-get_path)
* [`wandb.Artifact.get()`](/ko/products/wandb/ref/python/experiments/artifact#method-artifact-get)
* [`wandb.Artifact.verify()`](/ko/products/wandb/ref/python/experiments/artifact#method-artifact-verify)

<h3 id="cross-registry-permissions">
  레지스트리 간 권한
</h3>

사용자는 레지스트리마다 서로 다른 역할을 가질 수 있습니다. 예를 들어 한 사용자가 레지스트리 A에서는 **Restricted Viewer**이고 레지스트리 B에서는 **Viewer**일 수 있습니다. 이 경우 다음과 같이 적용됩니다.

* 두 레지스트리에 모두 연결된 동일한 아티팩트라도 레지스트리에 따라 액세스 수준이 다릅니다
* 레지스트리 A에서는 사용자가 **Restricted Viewer**이므로 파일을 다운로드하거나 아티팩트를 사용할 수 없습니다
* 레지스트리 B에서는 사용자가 **Viewer**이므로 파일을 다운로드하고 아티팩트를 사용할 수 있습니다
* 즉, 액세스 권한은 아티팩트에 액세스하는 레지스트리를 기준으로 확인됩니다
