SDK를 사용하여 Security Command Center 액세스

Security Command Center 클라이언트 라이브러리에서 서비스 계정을 만들고 설정합니다.

시작하기 전에

이 가이드를 완료하려면 다음이 필요합니다.

  • 서비스 계정 관리자 IAM 역할 Security Command Center IAM 역할에 대한 자세한 내용은 액세스 제어를 참조하세요.
  • 서비스 계정 비공개 키를 저장할 수 있는 기존 디렉터리 경로입니다. 이 경로는 /home/myuser/mykeys/와 같은 Cloud Shell 환경의 컨텍스트에 있습니다.
  • Security Command Center의 활성화 수준: 프로젝트 또는 조직 수준. 활성화 수준에 따라 SDK 액세스를 설정하는 데 사용하는 일부 명령어가 다릅니다. 활성화 수준을 확인하려면 Security Command Center의 활성화 수준 확인을 참조하세요.

Security Command Center 액세스

프로그래매틱 방식으로 Security Command Center에 액세스하려면 Cloud Shell을 사용하여 클라이언트 라이브러리를 가져오고 서비스 계정을 인증합니다.

환경 변수 설정

  1. Google Cloud Console로 이동합니다.
    Google Cloud Console로 이동
  2. Cloud Shell 활성화를 클릭합니다.
  3. 다음을 실행하여 환경 변수를 설정합니다.

    1. 조직 이름을 설정합니다.

      export ORG_ID=ORGANIZATION_ID
      

      ORGANIZATION_ID를 조직의 ID로 바꿉니다.

    2. 프로젝트 ID를 설정합니다.

      export PROJECT_ID=CLOUD_SCC_ENABLED_PROJECT_ID
      

      CLOUD_SCC_ENABLED_PROJECT_ID를 프로젝트 수준에서 Security Command Center가 활성 상태이거나 스캔이 사용 설정된 프로젝트의 ID로 바꿉니다.

    3. 새 서비스 계정에 사용할 커스텀 ID를 설정합니다(예: scc-sa). 서비스 계정 이름은 6~30자 사이여야 하고 문자로 시작해야 하며 모두 소문자 영숫자, 하이픈이어야 합니다.

      export SERVICE_ACCOUNT=CUSTOM_ID
      

      CUSTOM_ID를 선택한 ID로 바꿉니다.

    4. export KEY_LOCATION=/home/$USER/mykeys/$SERVICE_ACCOUNT.json와 같이 서비스 계정 키를 저장할 경로를 설정합니다.

      export KEY_LOCATION=FULL_PATH
      # This is used by client libraries to find the key
      export GOOGLE_APPLICATION_CREDENTIALS=$KEY_LOCATION
      

서비스 계정 설정

프로그래매틱 방식으로 Security Command Center에 액세스하려면 클라이언트가 사용할 서비스 계정의 비공개 키가 필요합니다.

또한 서비스 계정에 securitycenter.admin IAM 역할을 부여해야 합니다. 서비스 계정에 필요한 액세스 수준에 따라 프로젝트, 폴더 또는 조직 수준에서 역할을 부여할 수 있습니다.

  1. 프로젝트 ID와 연결된 서비스 계정을 만듭니다.

    gcloud iam service-accounts create $SERVICE_ACCOUNT  \
    --display-name "Service Account for USER"  \
    --project $PROJECT_ID
    

    USER를 서비스 계정을 사용할 개인 또는 항목의 사용자 이름으로 바꿉니다.

  2. 서비스 계정과 연결할 키를 만듭니다. 이 키는 서비스 계정의 수명 동안 사용되며 KEY_LOCATION에 할당된 경로에 영구적으로 저장됩니다.

    gcloud iam service-accounts keys create $KEY_LOCATION  \
    --iam-account $SERVICE_ACCOUNT@$PROJECT_ID.iam.gserviceaccount.com
    
  3. Security Command Center의 활성화 수준에 따라 서비스 계정에 조직 또는 프로젝트에 대한 securitycenter.admin 역할을 부여합니다.

    • 조직 수준 활성화의 경우 다음을 수행하세요.

      gcloud organizations add-iam-policy-binding $ORG_ID \
      --member="serviceAccount:$SERVICE_ACCOUNT@$PROJECT_ID.iam.gserviceaccount.com" \
      --role='roles/securitycenter.admin'
      
    • 프로젝트 수준 활성화의 경우 다음을 수행하세요.

      gcloud projects add-iam-policy-binding $PROJECT_ID \
      --member="serviceAccount:$SERVICE_ACCOUNT@$PROJECT_ID.iam.gserviceaccount.com" \
      --role='roles/securitycenter.admin'
      

Security Command Center용 클라이언트 라이브러리 설치

Python

Security Command Center Python 라이브러리를 프로젝트에 종속 항목으로 포함하려면 다음 프로세스를 따르세요.

  1. 선택사항: Python 라이브러리를 설치하기 전에 Virtualenv를 사용하여 격리된 Python 환경을 만드는 것이 좋습니다.

    virtualenv onboarding_example
    source onboarding_example/bin/activate
    
  2. pip를 설치하여 Python 라이브러리 설치를 관리합니다.

  3. 다음 명령어를 실행하여 Python 라이브러리를 설치합니다.

    pip install google-cloud-securitycenter
    

자바

Security Command Center 자바 라이브러리를 프로젝트의 종속 항목으로 포함하려면 Maven 저장소에서 아티팩트를 선택합니다.

Go

Go 라이브러리를 다운로드하려면 다음을 실행합니다.

go get cloud.google.com/go/securitycenter/apiv1

Node.js

Node.js 라이브러리를 설치하려면 다음을 실행합니다.

npm install --save @google-cloud/security-center

다음 단계

SDK 사용

Security Command Center가 지원하는 모든 기능에 대한 가이드를 확인하세요.

SDK 참조

전체 SDK 참조를 확인하세요.