Skip to main content
모든 클라우드 제공업체
  • 아마존 웹 서비스
  • 구글 클라우드
  • 마이크로소프트 애저
  • 모든 클라우드 제공업체
본 한국어 번역은 사용자 편의를 위해 제공되는 기계 번역입니다. 영어 버전과 한국어 버전이 서로 어긋나는 경우에는 언제나 영어 버전이 우선합니다.

AWS에서 고객 관리 키를 사용하도록 Cloud Volumes ONTAP 설정

기여자 netapp-manini

Amazon Web Services(AWS) 암호화를 Cloud Volumes ONTAP와 함께 사용하려면 AWS Key Management Service(KMS)를 설정해야 합니다.

고객 마스터 키(CMK)는 AWS 또는 고객이 관리할 수 있습니다. NetApp Console 및 Cloud Volumes ONTAP와 동일한 AWS 계정에 있거나 다른 AWS 계정(공유 계정)에 있을 수 있습니다. AWS는 AWS Console을 통해서만 키 관리를 지원합니다. 자세한 내용은 "AWS 키 관리 서비스"을 참조하십시오.

시작하기 전에
  • NetApp Console 에이전트 Identity and Access Management(IAM) 역할에 대한 정보를 AWS용으로 확보하십시오.

  • CMK가 활성화되어 있는지 확인하십시오.

단일 계정에 대해 고객 관리형 KMS 키 설정

콘솔 에이전트와 Cloud Volumes ONTAP이 동일한 AWS 계정에 있는 경우 다음 단계를 완료하십시오.

단계
  1. Console 에이전트의 IAM 역할에 S3 암호화 권한을 부여합니다. s3:PutEncryptionConfiguration 작업을 IAM 역할 정책에 추가합니다.

    {
      "Sid": "cvoServicePolicy",
      "Effect": "Allow",
      "Action": [
        "s3:PutEncryptionConfiguration"
      ],
      "Resource": "*"
    }
  2. Console 에이전트가 고객 관리 암호화 키(CMEK)에 액세스할 수 있도록 설정합니다. AWS Console에서 다음 방법 중 하나를 사용합니다.

해당 역할을 핵심 사용자로 추가(권장)
  1. AWS 콘솔에서 *KMS > 고객 관리 키*로 이동하여 CMEK 키를 선택합니다.

  2. 주요 사용자 섹션에서 *추가*를 선택합니다.

  3. 예를 들어 콘솔 에이전트 인스턴스 역할을 선택하고 occm-role, *추가*를 클릭합니다.

  4. 변경 사항을 저장합니다.

KMS 키 정책 업데이트
  1. AWS 콘솔에서 *KMS*로 이동하여 키를 검색합니다.

  2. 키 정책 탭을 선택하고 *편집*을 선택합니다.

  3. 키에 대한 액세스를 허용하는 구문을 찾아 AllowUseOfTheKey Console 에이전트 역할 Amazon Resource Name(ARN)을 Principal 배열에 추가합니다. 다음 예의 자리 표시자를 해당 값으로 바꿉니다.

    • YOUR-ACCOUNT-ID: 12자리 AWS 계정 ID

    • YOUR-AGENT-ROLE-NAME: Console 에이전트의 IAM 역할 이름

      {
        "Sid": "AllowUseOfTheKey",
        "Effect": "Allow",
        "Principal": {
          "AWS": [
            "arn:aws:iam::`YOUR-ACCOUNT-ID`:role/`YOUR-AGENT-ROLE-NAME`"
          ]
        },
        "Action": [
          "kms:Encrypt",
          "kms:Decrypt",
          "kms:ReEncrypt*",
          "kms:GenerateDataKey*",
          "kms:CreateGrant",
          "kms:DescribeKey",
          "kms:ListKeys"
        ],
        "Resource": "*"
      }
  4. 변경 사항을 저장합니다.

공유 계정에 대해 고객 관리형 KMS 키를 설정합니다.

콘솔 에이전트가 하나의 AWS 계정(계정 A)에서 실행되고 Cloud Volumes ONTAP이 다른 AWS 계정(계정 B)에 배포된 경우, 먼저 계정 A에 대한 단일 계정 단계를 모두 완료한 다음 이 단계를 완료하십시오.

단계
  1. 계정 B의 가정된 역할에 s3:PutEncryptionConfiguration 작업을 추가하십시오. FabricPool 버킷 암호화 호출이 계정 B의 가정된 역할로 실행되기 때문에 이 작업이 필요합니다. 이 권한은 티어링에 사용되는 S3 버킷의 기본 암호화를 활성화하는 데 적용됩니다.

    {
      "Sid": "cvoServicePolicy",
      "Effect": "Allow",
      "Action": [
        "s3:PutEncryptionConfiguration"
      ],
      "Resource": "*"
    }
  2. CMEK 키가 계정 B에 저장된 경우, 계정 A의 에이전트 역할은 해당 키를 사용하기 위해 직접 액세스 권한이 필요합니다. 계정 B의 KMS 키 정책은 이러한 계정 간 액세스 권한을 부여합니다.

    1. 계정 B의 AWS 콘솔에서 *KMS > 고객 관리 키*로 이동하여 Cloud Volumes ONTAP 배포에 사용된 CMEK 키를 선택합니다.

    2. 키 정책 탭을 열고 *편집*을 선택합니다.

    3. 계정 A에 대한 IAM 역할에 키에 대한 액세스 권한을 부여하는 문을 추가합니다.

      {
        "Sid": "Allow use of the key from the agent account",
        "Effect": "Allow",
        "Principal": {
          "AWS": "arn:aws:iam::ACCOUNT-A-ID:role/`YOUR-AGENT-ROLE-NAME`"
        },
        "Action": [
          "kms:Encrypt",
          "kms:Decrypt",
          "kms:ReEncrypt*",
          "kms:GenerateDataKey*",
          "kms:CreateGrant",
          "kms:DescribeKey",
          "kms:ListKeys",
          "kms:ListAliases"
        ],
        "Resource": "*"
      }
      참고 계정 B에 대한 키 정책은 계정 A의 Console 에이전트 역할이 해당 키를 사용할 수 있도록 신뢰할 수 있는지 여부를 제어합니다. 이 정책 문은 계정 A에 대한 IAM 정책 외에 추가로 필요합니다.
  3. 계정 A의 Console 에이전트에 대한 IAM 정책을 업데이트하여 계정 B의 키에 대한 KMS API 호출을 허용하십시오.

    1. 계정 A의 AWS 콘솔에서 *IAM > 역할*로 이동하여 콘솔 에이전트 역할을 선택합니다(예: occm-role 또는 NetAppCloudManagerRole).

    2. 계정 B 키에 대한 KMS 권한을 추가하거나 업데이트합니다.

      {
        "Version": "2012-10-17",
        "Statement": [
          {
            "Effect": "Allow",
            "Action": [
              "kms:List*",
              "kms:Describe*",
              "kms:Encrypt",
              "kms:Decrypt",
              "kms:ReEncrypt*",
              "kms:GenerateDataKey*",
              "kms:CreateGrant"
            ],
            "Resource": [
              "arn:aws:kms:*:ACCOUNT-B-ID:key/*",
              "arn:aws:kms:*:ACCOUNT-B-ID:alias/*"
            ]
          }
        ]
      }
      참고 계정 B의 키 정책은 키에 대한 액세스를 제어합니다. 계정 A의 IAM 정책은 Console 에이전트 역할이 KMS API를 호출할 수 있도록 허용합니다. 두 계정 중 하나라도 구성이 누락된 경우 AWS는 액세스를 제한합니다.
  4. 계정 B의 CMEK에 계정 A를 허용된 외부 AWS 계정으로 추가합니다.

    1. 계정 B의 AWS KMS 콘솔에서 대상 KMS 키를 열고 기타 AWS 계정 섹션을 찾습니다.

    2. *다른 AWS 계정 추가*를 선택하고 계정 A의 AWS 계정 ID를 입력합니다.

      이 스크린샷은 AWS KMS 콘솔의 "다른 AWS 계정 추가" 버튼을 보여줍니다.

    이 스크린샷은 AWS KMS 콘솔의 "다른 AWS 계정" 대화 상자를 보여줍니다.