Schematics 오브젝트 보안을 위한 우수 사례

IBM Cloud® Schematics 는 테라폼, Ansible, Red Hat OpenShift on IBM Cloud, 오퍼레이터, Helm 등 오픈 소스 프로젝트를 사용하며, 관리형 서비스로 제공됩니다. 로컬 시스템에 각 오픈 소스 프로젝트를 설치하고 API 또는 CLI를 학습하는 대신 IBM Cloud® 에서 실행할 태스크를 선언하고 Schematics 에서 이러한 태스크를 실행할 수 있습니다.

시간을 내어 클라우드 인프라의 모든 프로덕션, 스테이징 및 테스트 서버의 보안 위험을 줄이기 위한 권장 사례를 검토해 보세요. 이 목록은 클라우드 인프라의 보안을 강화하기 위한 탁월한 출발점입니다.

Git 저장소에서 Terraform 템플리트 또는 모듈 작성을 위한 우수 사례

Terraform 템플릿을 개발하고 Git 리포지토리에 게시할 때 따라야 하는 모범 사례는 무엇인가요?

Git 리포지토리에 Terraform 템플릿을 개발하고 게시할 때 다음 사례를 따르세요.

  • Terraform version1.4 이상 및 현재 IBM Cloud 제공자 를 사용하여 Terraform 템플리트를 작성하십시오.
  • 모든 자격 증명에 대한 환경 변수를 만듭니다.
  • 코드가 Terraform 표준을 충족하는지 검사하기 위해 사전 커미트 후크가 실행되는지 여부를 확인하십시오. 사전 커미트 후크를 포함하는 샘플 저장소 를 참조하십시오.
  • 저장소가 Terratest 프레임워크를 사용하여 프로비저닝할 Terraform 리소스 및 데이터 소스의 유효성을 검증하는지 여부를 확인하십시오. Terratest 를 실행하려면 샘플 유효성 검증된 Terraform 저장소 를 참조하십시오.
  • git이 추적하지 않은 파일이 추적되지 않은 상태로 남아 있는 경우 저장소에 gitignore이(가) 포함되어 있는지 확인하십시오.
  • 템플릿의 라이선스 파일을 추가합니다.
  • 사용자의 민감한 변수를 구성 파일에 기본값으로 설정하지 마십시오.
  • 보안 변수 또는 출력이 민감한지 확인하십시오.
  • 템플릿에서 null resources 을 사용하여 리소스를 프로비저닝하거나 구성하는 경우 스크립트 실행 시간이 60 minutes 보다 오래 걸리지 않는지 확인하세요.
  • 저장소에서 허용 목록 파일 확장자 만 사용하십시오.

IBM Cloud® 공급자 템플릿으로 tfvars 파일을 만들 수 있나요?

tfvars 파일은 Terraform을 사용할 때 IBM Cloud API 키 또는 클래식 인프라 사용자 이름과 같은 민감한 정보를 저장하는 데 사용할 수 있는 로컬 변수 파일입니다. 그러나 변수 데이터를 보안 설정하기 위해 Schematics에 tfvars 파일을 제공할 수 없습니다.

Terraform 개발자는 민감한 데이터가 로그 파일에 누출되지 않도록 하려면 어떻게 해야 합니까?

개발자는 로그 파일에서 데이터가 유출되지 않도록 변수 또는 출력 매개변수가 민감한지 여부를 확인해야 합니다.

Schematics 작업공간 관리의 우수 사례

테라폼 템플릿을 위한 작업 공간을 만들 때 따라야 하는 모범 사례는 무엇인가요?

테라폼 템플릿을 위한 작업 공간을 만들 때 다음 사례를 따르세요.

  • 작업공간을 작성할 수 있는 권한 이 있는지 확인하십시오.
  • Schematics 작업공간을 작성하거나 업데이트할 때 locationurl 엔드포인트가 동일한 지역을 가리키는지 확인하십시오. 위치 및 엔드포인트에 대한 자세한 정보는 정보 저장 위치 를 참조하십시오.
  • 작업공간을 삭제 하고 연관된 클라우드 리소스를 영구 삭제 할지 또는 둘 다를 수행할지 여부를 확인하십시오. 이 작업은 실행 취소할 수 없습니다. 워크스페이스를 제거하고 클라우드 리소스를 유지하는 경우 리소스 목록 또는 CLI를 사용하여 리소스를 관리해야 합니다.
  • 하나의 작업공간을 사용하여 전체 스테이징 또는 프로덕션 환경을 관리하지 마십시오. 모든 클라우드 리소스를 단일 작업 공간에 배포하면 여러 팀이 업데이트를 조정하고 이러한 리소스에 대한 액세스를 관리하는 것이 어려워질 수 있습니다.

테라폼 자동화에 사용되는 민감한 데이터가 로그나 출력물에서 유출되지 않도록 하려면 어떻게 해야 할까요?

그러한 데이터가 로그 또는 출력에서 누출되지 않도록 변수 또는 출력 매개변수를 민감한 항목으로 설정 해야 합니다.

워크스페이스와 그 데이터에 대한 액세스를 어떻게 보호할 수 있을까요?

계정 소유자 또는 권한이 부여된 계정 관리자로서 사용자에게 IBM Cloud® Identity and Access Management(IAM) 서비스 액세스 역할을 지정할 수 있습니다. IAM 서비스 액세스 역할에 따라 작업 영역 또는 작업과 같은 IBM Cloud Schematics 리소스에 설정할 수 있는 작업이 결정됩니다. 개별 사용자에게 액세스 정책을 지정하지 못하게 하려면 IAM 액세스 그룹을 고려하십시오.

작업공간 및 조치 데이터 저장소는 작업공간 또는 조치를 작성하는 위치에 따라 다릅니다. 자세한 정보는 Schematics에서 데이터 보안을 참조하십시오.

Schematics 은 Terraform 상태 파일 또는 로그 파일을 통해 워크스페이스 데이터를 어떻게 보호하나요?

Terraform 상태 파일 또는 로그 파일을 통해 작업공간 데이터를 보호하려면 다음 사례를 따르십시오.

  • Schematics 워크스페이스 및 관련 클라우드 리소스에 대한 액세스를 제어하려면 Cloud Identity and Access Management 을 사용하세요.
  • 액세스 제어, 보안 설정, 협업 및 버전 제어를 포함하여 Terraform 템플리트에 대한 소스 저장소의 보안을 설정합니다.
  • 리소스 오퍼링에서 제공하는 보안 기능을 사용하여 생성한 클라우드 리소스를 보호하세요.
  • 클라우드 리소스에 제공된 도구를 사용하여 리소스에 보안 수정, 액세스 제어 및 암호화를 적용하세요.

상태 파일을 제어하는 사용자에게 역할 및 권한 을 지정해야 합니다. Schematics 서비스 액세스 역할 및 권한에 대한 자세한 내용은 작업공간 권한KMS 권한 를 참조하세요

Schematics 조치 관리의 우수 사례

Ansible 템플릿에 대한 작업을 만들 때 따라야 하는 모범 사례는 무엇인가요?

Ansible 템플릿에 대한 Schematics 액션을 만들 때 다음 사례를 따르세요.

  • Schematics 작업공간을 작성하거나 업데이트할 때 locationurl 엔드포인트가 동일한 지역을 가리키는지 확인하십시오. 위치 및 엔드포인트에 대한 자세한 정보는 정보 저장 위치 를 참조하십시오.
  • Schematics 조치의 실행 중인 작업은 삭제하거나 중지할 수 없습니다. 작업이 완료될 때까지 기다린 다음 설정을 변경하고 작업 확인 또는 작업 실행을 다시 클릭합니다.
  • 계정 소유자 또는 권한 부여된 계정 관리자가 사용자에게 IAM 서비스 액세스 역할을 지정할 수 있습니다. IAM 서비스 액세스 역할에 따라 작업 영역 또는 작업과 같은 IBM Cloud Schematics 리소스에 설정할 수 있는 작업이 결정됩니다. 개별 사용자에게 액세스 정책을 지정하지 못하게 하려면 IAM 액세스 그룹을 고려하십시오.

작업 및 해당 데이터에 대한 액세스를 어떻게 보호할 수 있나요?

계정 소유자 또는 권한 부여된 계정 관리자가 사용자에게 IAM 서비스 액세스 역할을 지정할 수 있습니다. IAM 서비스 액세스 역할에 따라 작업 영역 또는 작업과 같은 IBM Cloud Schematics 리소스에 설정할 수 있는 작업이 결정됩니다. 개별 사용자에게 액세스 정책을 지정하지 못하게 하려면 IAM 액세스 그룹을 고려하십시오.

작업공간 및 조치 데이터 저장소는 작업공간 또는 조치를 작성하는 위치에 따라 다릅니다. 자세한 정보는 Schematics에서 데이터 보안을 참조하십시오.

Schematics 에서는 입력 자격 증명 상태 파일 또는 로그 파일을 통해 작업 데이터를 어떻게 보호하나요?

다음 사례에 따라 입력 자격 증명 상태 파일 또는 로그 파일을 통해 워크스페이스 데이터를 보호하세요.

  • Schematics 동작에 대한 액세스를 제어하려면 Cloud Identity and Access Management 을 사용합니다.
  • 액세스 제어, 보안 설정, 협업 및 버전 제어를 포함하여 Terraform 템플리트의 소스 저장소를 보안 설정합니다.
  • 클라우드 리소스에 제공된 도구를 사용하여 리소스에 보안 수정, 액세스 제어 및 암호화를 적용하세요.
  • 상태 파일을 제어하는 사용자에게 역할 및 권한 을 지정해야 합니다. Schematics 서비스 액세스 역할 및 권한에 대한 자세한 내용은 다음을 참조하세요
  • 조치 권한
  • KMS 권한

Schematics의 데이터 보호

다음은 Schematics 데이터를 보호할 수 있는 다양한 방법입니다.

  • Cloud Identity and Access Management 을 사용하여 액세스 보호.
  • Activity Tracker 을 사용하여 거부하지 않음.
  • 키 관리 시스템(KMS)을 사용하여 데이터를 보호합니다.

IAM(Identity and Access Management)을 사용한 액세스 보호

사용자에 대한 IAM 액세스 그룹을 작성하고 IBM Cloud Schematics 및 사용자가 작업할 리소스에 서비스 액세스 정책을 지정하십시오. IAM 사용자는 액세스 그룹에 연결됩니다. 자세한 정보는 사용자에 대한 액세스 설정 을 참조하십시오.

Activity Tracker를 사용한 부인 방지

IBM Cloud® Activity Tracker를 사용하여 사용자 및 애플리케이션이 IBM Cloud Schematics과(와) 상호작용하는 방법을 추적하고 감사할 수 있습니다. Schematics 워크스페이스 인스턴스 이벤트, 액세스, 이벤트 및 액세스 감사 로그에 대한 감사 추적을 생성하고 유지할 수 있습니다. 자세한 정보는 감사 이벤트를 참조하십시오.

KMS를 사용한 데이터 보호

다음을 통해 Schematics의 손상, 침해 또는 손실로부터 정보를 보호하고 암호화할 수 있습니다.

다음 단계

Schematics 사용 사례를 확인하십시오.