조직에 속한 누구나 Secret을 조회하고 새로 만들 수 있고, 배치 잡을 만들 때 이름으로 참조해서 사용할 수 있어요. Secret을 수정하거나 삭제하려면 Organization admin 권한이 필요해요. Secret 관리를 참고하세요.
VESSL Cloud는 SOC 2 Type II 보안 attestation을 완료했어요. 전체 보고서와 보안 운영 현황은 trust.vessl.ai에서 확인할 수 있어요.

자주 쓰는 예시
동작 방식
- 전송 전에 암호화돼요: Secret을 만들 때 값이 사용자 컴퓨터에서 조직 공개 키로 봉인(sealed-box)돼서, 평문이 요청 본문이나 접근 로그에 남지 않아요. VESSL Cloud는 저장할 때 master key로 다시 암호화해서 암호문만 보관해요.
- 제출 시점에 주입돼요: 워크로드를 제출하면 VESSL Cloud가 서버에서 값을 복호화해 Kubernetes Secret으로 컨테이너에 전달하고, 컨테이너가 시작될 때 환경 변수로 주입돼요.
- 값은 다시 볼 수 없어요: Secret을 저장하고 나면 VESSL Cloud는 값을 멤버든 admin이든 누구에게도 다시 보여주지 않아요. 목록과 상세 화면에는 메타데이터만 보여요. 값을 바꾸려면 admin이 새 값으로 덮어써야 해요(rotation). 이전 값은 다시 가져올 수 없어요.
- 조직 단위로 공유돼요: 한 조직 안의 모든 팀이 같은 Secret을 공유해요. 조직 내 어떤 배치 잡에서든 이름으로 참조할 수 있어요.
- 생성은 누구나, 변경은 관리자만 할 수 있어요: 조직에 속한 누구나 Secret을 조회하고 새로 만들 수 있어요. 수정과 삭제는 Organization admin만 할 수 있고, 멤버가 만든 Secret도 마찬가지예요. 멤버 화면의 Secret 목록에는 수정과 삭제 메뉴가 보이지 않아요.
Secret 만들기
Secret은 세 가지 핵심 필드를 가져요.
Secret name과 Key는 같게(
HF_TOKEN/HF_TOKEN) 두면 직관적이에요. 같은 환경 변수가 필요하지만 환경별로 다른 Secret을 쓰고 싶을 때(예: hf-prod와 hf-staging, 둘 다 키는 HF_TOKEN)는 이름만 다르게 두면 돼요.
GUI
- 사이드바에서 Settings를 선택해요.
- Account 메뉴에서 Secrets를 선택해요.
- New Secret을 클릭해요.
- Secret name, Key, Value를 입력해요.
- Create를 눌러 등록해요.

CLI
--from-env나 --from-stdin을 쓰면 셸 히스토리에도 남지 않아요.
Job에서 Secret 사용하기
GUI
Job 생성 화면의 Environment variables 섹션에서 Secrets 드롭다운으로 사용할 Secret을 선택해요. Add secret을 눌러 여러 개를 한 번에 연결할 수 있어요. 같은 환경 변수 키를 일반 Variable과 Secret에 동시에 쓰면 일반 Variable 값이 우선해요.
CLI
Job을 만들 때--secret으로 하나 이상의 Secret을 주입해요.
--secret NAME은 Secret을 같은 이름의 환경 변수로 주입해요.--secret KEY=NAME은KEY라는 환경 변수로 주입하고,NAME이라는 Secret을 참조해요.- 같은 환경 변수 키를
--env와--secret에서 둘 다 지정할 수는 없어요. CLI가 명령을 거부하니 키마다 한쪽 플래그만 사용하세요.
Workspace는 아직 Secret 주입을 지원하지 않아요. 현재 Job에서만 사용할 수 있고, Workspace 지원은 후속 릴리스로 예정돼 있어요.
Secret 목록 보기
FAQ
Secret은 누가 관리할 수 있나요?
Secret은 누가 관리할 수 있나요?
조직에 속한 누구나 Secret을 조회하고 새로 만들 수 있어요. 수정과 삭제는 직접 만든 Secret이라도 Organization admin만 할 수 있어서, 멤버 화면의 Secret 목록에는 수정과 삭제 메뉴가 보이지 않아요. 배치 잡을 만들 때 이름으로 참조하는 데는 admin 권한이 필요 없어요. (저장된 값은 멤버든 admin이든 누구도 다시 볼 수 없어요. 멤버만의 제약이 아니에요.)
VESSL Cloud는 Secret 값을 어떻게 보호하나요?
VESSL Cloud는 Secret 값을 어떻게 보호하나요?
값은 사용자 컴퓨터에서 조직 공개 키로 봉인(sealed-box)된 뒤 전송돼서, 평문이 요청 본문이나 접근 로그에 남지 않아요. VESSL Cloud는 암호문만 저장하고(저장할 때 master key로 다시 암호화), 워크로드에 주입하기 위해서만 Job을 제출할 때 서버에서 복호화해요. 접근은 SOC 2 Type II 통제를 따라요.
왜 Secret name과 Key를 따로 두나요?
왜 Secret name과 Key를 따로 두나요?
Secret name은 조직 안에서 Secret을 식별하는 이름(중복 불가)이고, Key는 워크로드에 주입할 때 기본으로 쓰이는 환경 변수 이름이에요. 단순하게 쓰려면 둘을 같게 두면 되고, 같은 환경 변수가 필요하지만 환경별로 다른 Secret을 쓰고 싶을 때(예:
hf-prod와 hf-staging, 둘 다 키는 HF_TOKEN)는 이름을 따로 둘 수 있어요.같은 환경 변수 키를 --env와 --secret에 동시에 쓰면 어떻게 되나요?
같은 환경 변수 키를 --env와 --secret에 동시에 쓰면 어떻게 되나요?
CLI에서는 에러가 나요.
vesslctl job create는 같은 키가 두 플래그에 모두 있으면 명령을 거부하니, 키마다 한쪽만 사용하세요. GUI에서는 둘을 같이 쓸 수 있는데, 같은 키라면 일반 Variable 값이 우선하고 Secret 참조는 무시돼요.이미 돌고 있는 워크로드가 갱신된 값을 받나요?
이미 돌고 있는 워크로드가 갱신된 값을 받나요?
아니요. Secret은 컨테이너가 시작될 때 주입돼요. 새 값을 적용하려면 워크로드를 재시작해야 해요.