버킷 IP 필터링 규칙 업데이트

이 페이지에서는 버킷 IP 필터링 규칙을 업데이트하는 방법을 설명합니다.

필요한 역할

버킷의 IP 필터링 규칙을 업데이트하는 데 필요한 권한을 얻으려면 관리자에게 버킷에 대한 스토리지 관리자 (roles/storage.admin) 역할을 부여해 달라고 요청하세요. 이 역할에는 버킷 IP 필터링 규칙을 업데이트하는 데 필요한 권한이 포함되어 있습니다.

필요한 정확한 권한을 보려면 필수 권한 섹션을 확장하세요.

필수 권한

  • storage.buckets.update
  • storage.buckets.setIpFilter

커스텀 역할로도 이러한 권한을 얻을 수 있습니다. 다른 사전 정의된 역할로도 이 권한을 얻을 수 있습니다. 어떤 역할이 어떤 권한과 연결되어 있는지 확인하려면 Cloud Storage에 대한 IAM 역할을 참조하세요.

프로젝트에 역할을 부여하는 방법은 프로젝트에 대한 액세스 관리를 참고하세요.

버킷 IP 필터링 규칙 업데이트

명령줄

  1. In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

  2. 수신 요청의 규칙을 정의하는 JSON 파일을 만듭니다. 버킷 IP 필터링 규칙을 구성하는 방법에 관한 예시와 자세한 내용은 버킷 IP 필터링 구성을 참고하세요.

    {
      "mode": "Enabled",
      "publicNetworkSource":
        {
        "allowedIpCidrRanges":
          [RANGE_CIDR,
          ...
          ]
        },
      "vpcNetworkSources":
          [
           {"network": "projects/PROJECT_ID/global/networks/NETWORK_NAME",
            "allowedIpCidrRanges":
              [RANGE_CIDR,
              ...
              ]
           },
          ...
          ]
       }

    각 항목의 의미는 다음과 같습니다.

    • mode는 IP 필터 구성의 모드입니다. 유효한 값은 Enabled, Disabled입니다. Enabled로 설정하면 IP 필터링 규칙이 버킷에 적용됩니다. 버킷에 들어오는 모든 요청은 이러한 규칙에 따라 평가됩니다. Disabled로 설정하면 모든 수신 요청이 버킷에 액세스할 수 있습니다.

    • RANGE_CIDR는 버킷에 액세스할 수 있는 공개 네트워크 IPv4 또는 IPv6 주소 범위입니다. 주소 범위를 하나 이상 목록으로 입력할 수 있습니다.

    • PROJECT_ID는 Virtual Private Cloud (VPC) 네트워크가 있는 프로젝트 ID입니다. 여러 VPC 네트워크를 구성하려면 각 네트워크가 있는 프로젝트를 지정해야 합니다.

    • NETWORK_NAME은 버킷에 액세스할 수 있는 VPC 네트워크의 이름입니다. 여러 VPC 네트워크를 구성하려면 각 네트워크의 이름을 지정해야 합니다.

  3. 버킷 IP 필터링 규칙을 업데이트하려면 개발 환경에서 gcloud alpha storage buckets update 명령어를 실행합니다.

    gcloud alpha storage buckets update gs://BUCKET_NAME --ip-filter-file=IP_FILTER_CONFIG_FILE

    각 항목의 의미는 다음과 같습니다.

    • BUCKET_NAME은 버킷의 이름입니다. 예를 들면 my-bucket입니다.
    • IP_FILTER_CONFIG_FILE은 이전 단계에서 만든 JSON 파일입니다.

REST API

JSON API

  1. Authorization 헤더에 대한 액세스 토큰을 생성하려면 gcloud CLI가 설치 및 초기화되어 있어야 합니다.

  2. 버킷의 설정이 포함된 JSON 파일을 만듭니다. 여기에는 버킷의 nameipFilter 구성 필드가 포함되어야 합니다. 버킷 IP 필터링 규칙을 구성하는 방법에 관한 예시와 정보는 버킷 IP 필터링 구성을 참고하세요.

    {
      "name": "BUCKET_NAME"
      "ipFilter": {
        "mode": "Enabled",
        "publicNetworkSource":
          {
            "allowedipCidrRanges":
              [RANGE_CIDR,
                ...
              ]
              },
              "vpcNetworkSources":
              [
              {"network": "projects/PROJECT_ID/global/networks/NETWORK_NAME",
                "allowedipCidrRanges":
                [RANGE_CIDR,
                  ...
                ]
              },
              ...
              ]
            }
           }
          

    각 항목의 의미는 다음과 같습니다.

    • mode은 IP 필터 구성의 상태입니다. 유효한 값은 Enabled, Disabled입니다. Enabled로 설정하면 IP 필터링 규칙이 버킷에 적용되고 버킷에 들어오는 모든 요청이 이러한 규칙에 따라 평가됩니다. Disabled로 설정하면 들어오는 모든 요청이 평가 없이 버킷과 해당 데이터에 액세스할 수 있습니다.

    • RANGE_CIDR는 버킷에 액세스할 수 있는 공개 네트워크 IPv4 또는 IPv6 주소 범위입니다. 주소 범위를 하나 이상 목록으로 입력할 수 있습니다.

    • PROJECT_ID는 VPC 네트워크가 있는 프로젝트 ID입니다. 여러 VPC 네트워크를 구성하려면 각 네트워크가 있는 프로젝트를 지정해야 합니다.

    • NETWORK_NAME은 버킷에 액세스할 수 있는 VPC 네트워크의 이름입니다. 여러 VPC 네트워크를 구성하려면 각 네트워크의 이름을 지정해야 합니다.

  3. cURL을 사용하여 버킷 PATCH 요청으로 JSON API를 호출합니다.

    curl -X PATCH --data-binary @JSON_FILE_NAME \
     -H "Authorization: Bearer $(gcloud auth print-access-token)" \
     -H "Content-Type: application/json" \
     "https://storage.googleapis.com/storage/v1/b?project=PROJECT_IDENTIFIER&projection=full"

    각 항목의 의미는 다음과 같습니다.

    • JSON_FILE_NAME은 이전 단계에서 만든 JSON 파일의 이름입니다.
    • PROJECT_IDENTIFIER는 버킷과 연결된 프로젝트의 ID 또는 번호입니다. 예를 들면 my-project입니다.

다음 단계

직접 사용해 보기

Google Cloud를 처음 사용하는 경우 계정을 만들어 실제 시나리오에서 Cloud Storage의 성능을 평가할 수 있습니다. 신규 고객에게는 워크로드를 실행, 테스트, 배포하는 데 사용할 수 있는 $300의 무료 크레딧이 제공됩니다.

Cloud Storage 무료로 사용해 보기