이 페이지에서는 보안 비밀을 만드는 방법을 설명합니다. 보안 비밀에는 라벨 및 복제 정책과 같은 메타데이터와 함께 보안 비밀 버전이 한 개 이상 포함됩니다. 보안 비밀의 실제 콘텐츠는 보안 비밀 버전에 저장됩니다.
시작하기 전에
-
인증을 설정합니다.
이 페이지의 샘플 사용 방법에 대한 탭을 선택하세요.
콘솔
Google Cloud 콘솔을 사용하여 Google Cloud 서비스 및 API에 액세스하는 경우 인증을 설정할 필요가 없습니다.
gcloud
Google Cloud 콘솔에서 Cloud Shell을 활성화합니다.
Google Cloud 콘솔 하단에 Cloud Shell 세션이 시작되고 명령줄 프롬프트가 표시됩니다. Cloud Shell은 Google Cloud CLI가 사전 설치된 셸 환경으로, 현재 프로젝트의 값이 이미 설정되어 있습니다. 세션이 초기화되는 데 몇 초 정도 걸릴 수 있습니다.
REST
로컬 개발 환경에서 이 페이지의 REST API 샘플을 사용하려면 gcloud CLI에 제공한 사용자 인증 정보를 사용합니다.
Google Cloud CLI를 설치합니다.
외부 ID 공급업체(IdP)를 사용하는 경우 먼저 제휴 ID로 gcloud CLI에 로그인해야 합니다.
자세한 내용은 Google Cloud 인증 문서의 REST 사용을 위한 인증을 참조하세요.
필요한 역할
보안 비밀을 만드는 데 필요한 권한을 얻으려면 관리자에게 프로젝트, 폴더 또는 조직에 대한 Secret Manager 관리자 (roles/secretmanager.admin) IAM 역할을 부여해 달라고 요청하세요.
역할 부여에 대한 자세한 내용은 프로젝트, 폴더, 조직에 대한 액세스 관리를 참조하세요.
커스텀 역할이나 다른 사전 정의된 역할을 통해 필요한 권한을 얻을 수도 있습니다.
보안 비밀 만들기
Google Cloud 콘솔, Google Cloud CLI, Secret Manager API, Secret Manager 클라이언트 라이브러리를 사용하여 보안 비밀을 만들 수 있습니다.
콘솔
-
Google Cloud 콘솔에서 Secret Manager 페이지로 이동합니다.
-
Secret Manager 페이지에서 보안 비밀 만들기를 클릭합니다.
-
보안 비밀 만들기 페이지에서 이름 필드에 보안 비밀 이름을 입력합니다. 보안 비밀 이름은 대문자, 소문자, 숫자, 하이픈, 밑줄을 포함할 수 있습니다. 이름의 최대 허용 길이는 255자입니다.
-
보안 비밀의 값을 입력합니다(예:
abcd1234). 보안 비밀 값은 어떤 형식도 가능하지만 64KiB보다 크지 않아야 합니다. 파일 업로드 옵션을 사용하여 보안 비밀 값이 포함된 텍스트 파일을 업로드할 수도 있습니다. 이 작업은 보안 비밀 버전을 자동으로 만듭니다. -
보안 비밀 만들기를 클릭합니다.
gcloud
아래의 명령어 데이터를 사용하기 전에 다음을 바꿉니다.
- SECRET_ID: 보안 비밀의 ID입니다.
- REPLICATION_POLICY: 보안 비밀의 복제 정책입니다. 자동 또는 사용자 관리일 수 있습니다.
다음 명령어를 실행합니다.
Linux, macOS 또는 Cloud Shell
gcloud secrets create SECRET_ID \ --replication-policy="REPLICATION_POLICY"
Windows(PowerShell)
gcloud secrets create SECRET_ID ` --replication-policy="REPLICATION_POLICY"
Windows(cmd.exe)
gcloud secrets create SECRET_ID ^ --replication-policy="REPLICATION_POLICY"
REST
요청 데이터를 사용하기 전에 다음을 바꿉니다.
- PROJECT_ID: Google Cloud 프로젝트 ID
- SECRET_ID: 보안 비밀의 ID입니다.
- REPLICATION_POLICY: 보안 비밀의 복제 정책입니다. 자동 또는 사용자 관리일 수 있습니다.
HTTP 메서드 및 URL:
POST https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets?secretId=SECRET_ID
JSON 요청 본문:
{
"replication": {
"REPLICATION_POLICY": {}
}
}
요청을 보내려면 다음 옵션 중 하나를 선택합니다.
curl
요청 본문을 request.json 파일에 저장하고 다음 명령어를 실행합니다.
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets?secretId=SECRET_ID"
PowerShell
요청 본문을 request.json 파일에 저장하고 다음 명령어를 실행합니다.
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets?secretId=SECRET_ID" | Select-Object -Expand Content
다음과 비슷한 JSON 응답이 표시됩니다.
{
"name": "projects/PROJECT_ID/secrets/SECRET_ID",
"createTime": "2024-03-25T08:24:13.153705Z",
"etag": "\"161477e6071da9\""
}
C#
이 코드를 실행하려면 먼저 C# 개발 환경을 설정하고 Secret Manager C# SDK를 설치합니다. Compute Engine 또는 GKE에서는 cloud-platform 범위로 인증해야 합니다.
Go
이 코드를 실행하려면 먼저 Go 개발 환경을 설정하고 Secret Manager Go SDK를 설치합니다. Compute Engine 또는 GKE에서는 cloud-platform 범위로 인증해야 합니다.
Java
이 코드를 실행하려면 먼저 자바 개발 환경을 설정하고 Secret Manager 자바 SDK를 설치합니다. Compute Engine 또는 GKE에서는 cloud-platform 범위로 인증해야 합니다.
Node.js
이 코드를 실행하려면 먼저 Node.js 개발 환경을 설정하고 Secret Manager Node.js SDK를 설치합니다. Compute Engine 또는 GKE에서는 cloud-platform 범위로 인증해야 합니다.
PHP
이 코드를 실행하려면 먼저 Google Cloud에서 PHP 사용하는 방법을 알아보고 Secret Manager PHP SDK를 설치합니다. Compute Engine 또는 GKE에서는 cloud-platform 범위로 인증해야 합니다.
Python
이 코드를 실행하려면 먼저 Python 개발 환경을 설정하고 Secret Manager Python SDK를 설치합니다. Compute Engine 또는 GKE에서는 cloud-platform 범위로 인증해야 합니다.
Ruby
이 코드를 실행하려면 먼저 Ruby 개발 환경을 설정하고 Secret Manager Ruby SDK를 설치합니다. Compute Engine 또는 GKE에서는 cloud-platform 범위로 인증해야 합니다.
보안 비밀에 적합한 복제 정책을 선택하려면 복제 정책 선택을 참조하세요.
보안 비밀 버전 추가
Secret Manager는 보안 비밀 버전을 사용하여 보안 비밀 데이터 버전을 자동으로 관리합니다. 액세스, 폐기, 사용 중지, 사용 설정과 같은 주요 작업은 특정 보안 비밀 버전에 적용됩니다. Secret Manager를 사용하면 보안 비밀을 42와 같은 특정 버전과 연결하거나 latest와 같은 동적 별칭과 연결할 수 있습니다. 자세한 내용은 보안 비밀 버전 추가를 참조하세요.
보안 비밀 버전에 액세스
인증을 위해 특정 보안 비밀 버전에서 보안 비밀 데이터에 액세스하려면 보안 비밀 버전 액세스를 참고하세요.
다음 단계
- 프로젝트별 다양한 유형의 API 요청 (액세스, 읽기, 쓰기)의 할당량 및 비율 제한을 확인합니다.
- 보안 비밀 액세스 관리 방법 알아보기
- 보안 비밀에 알림을 설정하는 방법 알아보기