Dataform에서 비공개 패키지 인증

이 문서에서는 Dataform에서 비공개 NPM 패키지를 인증하여 Dataform 저장소에 설치하도록 설정하는 방법을 설명합니다.

Dataform 저장소에 비공개 NPM 패키지를 설치하고 이를 사용하여 SQL 워크플로를 개발하려면 먼저 Dataform에서 패키지를 인증해야 합니다. 저장소의 첫 번째 비공개 패키지저장소의 후속 비공개 패키지의 인증 프로세스는 다릅니다.

시작하기 전에

  1. Google Cloud 콘솔에서 Dataform 페이지로 이동합니다.

    Dataform 페이지로 이동

  2. 저장소를 선택하거나 만듭니다.

  3. 개발 작업공간을 선택하거나 만듭니다.

필요한 역할

Dataform에서 비공개 NPM 패키지를 인증하는 데 필요한 권한을 얻으려면 관리자에게 저장소 및 작업공간에 대한 Dataform 편집자(roles/dataform.editor) IAM 역할을 부여해 달라고 요청하세요. 역할 부여에 대한 자세한 내용은 프로젝트, 폴더, 조직에 대한 액세스 관리를 참조하세요.

커스텀 역할이나 다른 사전 정의된 역할을 통해 필요한 권한을 얻을 수도 있습니다.

Dataform 저장소에서 첫 번째 비공개 패키지 인증

Dataform에서 비공개 NPM 패키지를 인증하려면 Dataform 저장소에 첫 번째 비공개 NPM 패키지를 설치하기 전에 다음을 실행해야 합니다.

  1. Dataform 저장소에 비공개 NPM 패키지의 인증 토큰을 저장하는 전용 Secret Manager 보안 비밀을 만듭니다.

    1. NPM 레지스트리에서 가져온 패키지의 인증 토큰을 보안 비밀에 추가합니다.

    저장소의 비공개 NPM 패키지의 모든 인증 토큰을 단일 보안 비밀에 저장해야 합니다. Dataform 저장소당 전용 보안 비밀을 하나씩 만들어야 합니다. 보안 비밀은 JSON 형식이어야 합니다.

  2. Dataform 저장소에 보안 비밀을 업로드합니다.

  3. .npmrc 파일을 만들고 패키지의 인증 토큰을 파일에 추가합니다.

    .npmrc 파일의 인증 토큰이 업로드된 보안 비밀의 인증 토큰과 일치해야 합니다.

비공개 NPM 패키지를 인증한 후에는 Dataform 저장소에 패키지를 설치할 수 있습니다.

비공개 패키지 인증을 위한 보안 비밀 만들기

Dataform 저장소에서 비공개 NPM 패키지를 인증하려면 Secret Manager 보안 비밀을 만들고 보안 비밀 내의 Dataform 저장소에 설치하려는 모든 비공개 패키지의 인증 토큰을 정의해야 합니다. 비공개 NPM 패키지당 하나의 인증 토큰을 정의하고 저장소당 단일 보안 비밀에 모든 인증 토큰을 저장합니다. 보안 비밀은 JSON 형식이어야 합니다.

비공개 NPM 패키지의 인증 토큰으로 보안 비밀을 만들려면 다음 단계를 따르세요.

  1. Secret Manager에서 보안 비밀을 만듭니다.

    1. 보안 비밀 값 필드에 다음 형식으로 인증 토큰을 하나 이상 입력합니다.
    {
      "AUTHENTICATION_TOKEN_NAME": "TOKEN_VALUE"
    }
    

    다음을 바꿉니다.

    • AUTHENTICATION_TOKEN_NAME: 인증한 패키지를 식별하는 토큰의 고유한 이름
    • TOKEN_VALUE: NPM 레지스트리에서 가져온 인증 토큰의 값
  2. Dataform 서비스 계정에 보안 비밀에 대한 액세스 권한을 부여합니다.

    Dataform 서비스 계정의 형식은 다음과 같습니다.

    service-PROJECT_NUMBER@gcp-sa-dataform.iam.gserviceaccount.com
    
    1. 액세스 권한을 부여할 때는 Dataform 서비스 계정에 roles/secretmanager.secretAccessor 역할을 부여해야 합니다.

Dataform 저장소에 비공개 패키지 인증을 위한 보안 비밀 업로드

Dataform 저장소에 비공개 NPM 패키지를 처음 설치하기 전에 패키지의 인증 토큰이 포함된 보안 비밀을 저장소에 업로드합니다.

비공개 NPM 패키지 인증 토큰이 포함된 보안 비밀을 Dataform 저장소에 업로드하려면 다음 단계를 따르세요.

  1. Google Cloud 콘솔에서 Dataform 페이지로 이동합니다.

    Dataform으로 이동

  2. 비공개 NPM 패키지를 설치할 저장소를 선택합니다.

  3. 저장소 페이지에서 설정 > 비공개 NPM 패키지 구성을 클릭합니다.

  4. NPM 패키지 보안 비밀 토큰 추가 창의 보안 비밀 드롭다운에서 비공개 NPM 패키지의 인증 토큰이 포함된 보안 비밀을 선택합니다.

  5. 저장을 클릭합니다.

비공개 패키지 인증을 위한 .npmrc 파일 만들기

Dataform 저장소에서 비공개 NPM 패키지를 인증하려면 저장소에 최상위 .npmrc 파일을 만들어야 합니다. 저장소에 설치할 모든 비공개 NPM 패키지의 인증 토큰을 .npmrc 파일 내에 저장해야 합니다. .npmrc 파일의 인증 토큰은 저장소에 업로드된 보안 비밀의 인증 토큰과 일치해야 합니다. .npmrc 파일에 관한 자세한 내용은 npmrc 문서를 참조하세요.

저장소에서 최상위 수준 .npmrc 파일을 만들려면 다음 단계를 따르세요.

  1. Google Cloud 콘솔에서 Dataform 페이지로 이동합니다.

    Dataform으로 이동

  2. 비공개 NPM 패키지를 설치할 저장소를 선택한 다음 작업공간을 선택합니다.

  3. 파일 창에서 더보기 메뉴를 클릭한 다음 파일 만들기를 클릭합니다.

  4. 새 파일 만들기 창에서 다음을 수행합니다.

    1. 파일 경로 추가 필드에 .npmrc를 입력합니다.

    2. 파일 만들기를 클릭합니다.

Dataform 저장소의 .npmrc 파일에 인증 토큰 추가

패키지 인증 토큰과 .npmrc 파일이 있는 보안 비밀이 이미 포함된 Dataform 저장소에서 비공개 NPM 패키지를 인증하려면 비공개 패키지의 인증 토큰을 저장소의 .npmrc 파일에 추가해야 합니다.

.npmrc 파일에서 NPM 레지스트리의 범위를 정의하고 해당 범위에서 액세스하는 비공개 패키지의 인증 토큰을 추가해야 합니다. .npmrc 파일에 관한 자세한 내용은 npmrc 문서를 참조하세요.

.npmrc 파일의 인증 토큰은 저장소에 업로드된 보안 비밀의 인증 토큰과 일치해야 합니다.

Dataform 저장소의 .npmrc 파일에 인증 토큰을 추가하려면 다음 단계를 따르세요.

  1. Google Cloud 콘솔에서 Dataform 페이지로 이동합니다.

    Dataform으로 이동

  2. 비공개 NPM 패키지를 설치할 저장소를 선택한 다음 작업공간을 선택합니다.

  3. 파일 창에서 .npmrc 파일을 선택합니다.

  4. .npmrc 파일에서 비공개 패키지의 NPM 레지스트리 범위와 인증 토큰을 다음 형식으로 정의합니다.

   @REGISTRY-SCOPE:registry=NPM-REGISTRY-URL
   NPM-REGISTRY-URL:_authToken=$AUTHENTICATION-TOKEN

다음을 바꿉니다.

  • REGISTRY-SCOPE: 인증 토큰을 적용할 NPM 레지스트리 범위
  • NPM-REGISTRY-URL: NPM 레지스트리의 URL(예: https://npm.pkg.github.com)
  • AUTHENTICATION-TOKEN: 비공개 NPM 패키지의 인증 토큰 .npmrc 파일의 인증 토큰이 업로드된 보안 비밀의 인증 토큰과 일치해야 합니다. 인증 토큰은 .npmrc 파일에 환경 변수로 제공되므로 여는 ${} 닫는 괄호를 추가해야 합니다.

    인증 토큰을 여러 개 입력할 수 있습니다.

다음 코드 샘플은 Dataform 저장소의 .npmrc 파일에 추가된 비공개 NPM 패키지의 인증 토큰을 보여줍니다.

@company:registry=https://npm.pkg.github.com
//npm.pkg.github.com/:_authToken=${AUTHENTICATION_TOKEN}

Dataform 저장소에서 후속 비공개 패키지 인증

패키지 인증 토큰과 .npmrc 파일이 있는 보안 비밀이 이미 포함된 Dataform 저장소에서 비공개 NPM 패키지를 인증하려면 다음 단계를 따르세요.

  1. Secret Manager에서 보안 비밀을 나열하고 저장소의 비공개 NPM 패키지의 인증 토큰을 저장하는 보안 비밀을 선택합니다.

  2. 보안 비밀에 새 버전을 추가합니다.

    Dataform은 기본적으로 최신 버전의 보안 비밀을 사용합니다.

    1. 다음 형식으로 비공개 패키지의 인증 토큰을 보안 비밀 값에 추가합니다.
    {
      "AUTHENTICATION_TOKEN_NAME": "TOKEN_VALUE"
    }
    

    다음을 바꿉니다.

    • AUTHENTICATION_TOKEN_NAME: 인증한 패키지를 식별하는 토큰의 고유한 이름
    • TOKEN_VALUE: NPM 레지스트리에서 가져온 인증 토큰의 값

    한 번에 여러 인증 토큰을 추가할 수 있습니다.

  3. Dataform에서 저장소의 .npmrc 파일에 인증 토큰을 추가합니다.

비공개 NPM 패키지를 인증한 후에는 Dataform 저장소에 패키지를 설치할 수 있습니다.

다음 단계