인증

Nami Cloud Storage는 요청 인증을 위해 AWS Signature Version 4를 사용하여 표준 S3 클라이언트 및 SDK와 호환됩니다.

자격 증명

요청을 인증하기 위해 두 가지 자격 증명이 필요합니다:
  • 액세스 키 ID
  • 비밀 액세스 키
이 자격 증명은 Nami Cloud 대시보드에서 얻을 수 있습니다.

인증 헤더

각 요청에는 다음 형식의 Authorization 헤더가 포함되어야 합니다:
Authorization: AWS4-HMAC-SHA256 
    Credential=${AccessKeyID}/${date}/${region}/s3/aws4_request,
    SignedHeaders=${headers},
    Signature=${signature}

예시

Authorization: AWS4-HMAC-SHA256 
    Credential=AKIAIOSFODNN7EXAMPLE/20231028/us-east-1/s3/aws4_request,
    SignedHeaders=host;x-amz-content-sha256;x-amz-date,
    Signature=fe5f80f77d5fa3beca038a248ff027d0445342fe2855ddc963176630326f1024

SDK와 함께 사용하기

대부분의 S3 SDK는 인증을 자동으로 처리합니다. 다음은 다양한 언어의 예시입니다:
import boto3

s3_client = boto3.client('s3',
    endpoint_url='https://storage.nami.cloud',
    aws_access_key_id='YOUR_ACCESS_KEY',
    aws_secret_access_key='YOUR_SECRET_KEY'
)

보안 모범 사례

  1. 자격 증명 보호
    • 자격 증명을 소스 제어에 커밋하지 마십시오
    • 자격 증명을 정기적으로 교체하십시오
    • 환경 변수 또는 안전한 자격 증명 저장소를 사용하십시오
  2. 액세스 제어
    • 최소 권한 원칙을 따르십시오
    • 가능할 경우 버킷 정책 및 IAM 역할을 사용하십시오
    • 액세스 패턴을 정기적으로 감사하십시오
  3. HTTPS
    • API 요청에 항상 HTTPS를 사용하십시오
    • SSL/TLS 인증서를 확인하십시오
    • 클라이언트 라이브러리를 최신 상태로 유지하십시오