엣지 조회

Prev Next

Classic/VPC 환경에서 이용 가능합니다.

엣지의 상세 정보를 조회합니다.

요청

요청 형식을 설명합니다. 요청 형식은 다음과 같습니다.

메서드 URI
GET /api/v1/cdn-edge/{edgeId}

요청 헤더

Global Edge API에서 공통으로 사용하는 헤더에 대한 정보는 Global Edge 요청 헤더를 참조해 주십시오.

요청 경로 파라미터

요청 경로 파라미터에 대한 설명은 다음과 같습니다.

필드 타입 필수 여부 설명
edgeId Long Required 엣지 아이디

요청 예시

요청 예시는 다음과 같습니다.

curl --location --request GET 'https://edge.apigw.ntruss.com/api/v1/cdn-edges/123' \
--header 'x-ncp-apigw-timestamp: {Timestamp}' \
--header 'x-ncp-iam-access-key: {Access Key}' \
--header 'x-ncp-apigw-signature-v2: {API Gateway Signature}' \
--header 'Content-Type: application/json'

응답

응답 형식을 설명합니다.

응답 바디

응답 바디에 대한 설명은 다음과 같습니다.

필드 타입 필수 여부 설명
code String - 응답 코드
message String - 응답 메시지
result Object - 응답 결과

result

result에 대한 설명은 다음과 같습니다.

필드 타입 필수 여부 설명
profileId Long - 프로필 아이디
edgeName String - 엣지 이름
distributionConfig Object - 배포 설정: CdnDistributionConfig
originalCopyConfig Object - 오리진 설정: CdnOriginalCopyConfig
cachingConfig Object - 캐시 설정: CdnCachingConfig
managedRule Object - 매니지드 룰: ManagedRule
headerPolicies Array - 헤더 설정: HeaderPolicy
  • 미설정 시 빈 값 [] 표시
optimizationConfig Object - 최적화 설정: OptimizationConfig
accessControl Object - 접근 제어 설정: AccessControl
productType String - 서비스 구분 코드

CdnDistributionConfig

CdnDistributionConfig에 대한 설명은 다음과 같습니다.

필드 타입 필수 여부 설명
protocolType String - 서비스 프로토콜
regionType String - 서비스 지역
serviceDomain Object - 서비스 도메인 설정
serviceDomain.domainType String - 서비스 도메인 유형
  • NCP_DOMAIN_AUTO | NCP_DOMAIN_CUSTOM | CUSTOM_DOMAIN
    • NCP_DOMAIN_AUTO: 자동 생성된 네이버 클라우드 플랫폼 도메인
    • NCP_DOMAIN_CUSTOM: 사용자 입력값을 포함한 네이버 클라우드 플랫폼 도메인
    • CUSTOM_DOMAIN: 사용자 보유 도메인
serviceDomain.domainName String - 도메인 이름
serviceDomain.certificate Object - 인증서
  • 사용자 보유 도메인(CUSTOM_DOMAIN)이 HTTPS로 서비스되는 경우, 하위 정보 포함하여 표시
serviceDomain.certificate.id Number - 인증서 슬롯 아이디
edgeLogging Object - 엣지 로그 설정
edgeLogging.enabled Boolean - 기능 사용 여부
  • true | false
    • true: 사용
    • false: 사용 안 함
  • true인 경우, 관련 정보 추가 표시
edgeLogging.bucketPrefix String - 로그 저장 경로
edgeLogging.objectStorage Object - 로그 스토리지 정보
  • Object Storage에 등록된 버킷
edgeLogging.objectStorage.region String - 서비스 리전
edgeLogging.objectStorage.bucketName String - 버킷 이름

CdnOriginalCopyConfig

CdnOriginalCopyConfig에 대한 설명은 다음과 같습니다.

필드 타입 필수 여부 설명
originalCopyLocation Object - 오리진 서버 설정
originalCopyLocation.type String - 오리진 유형
  • OBJECT_STORAGE | LOAD_BALANCER | API_GATEWAY | CUSTOM
    • OBJECT_STORAGE: 네이버 클라우드 플랫폼의 Object Storage
    • LOAD_BALANCER: 네이버 클라우드 플랫폼의 Load Balancer
    • API_GATEWAY: 네이버 클라우드 플랫폼의 API Gateway
    • CUSTOM: 외부 오리진 도메인
originalCopyLocation.region String - 서비스 리전
  • originalCopyLocation.typeOBJECT_STORAGE이거나 LOAD_BALANCER인 경우, 표시
originalCopyLocation.bucketName String - 버킷 이름
  • originalCopyLocation.typeOBJECT_STORAGE인 경우, 표시
originalCopyLocation.customLocation String - 오리진 도메인 이름
  • originalCopyLocation.typeLOAD_BALANCER, API_GATEWAY, CUSTOM인 경우, 표시
forwardHostHeader Object - 호스트 헤더 포워딩 설정
forwardHostHeader.type String - 포워딩 유형
  • INCOMING_HOST_HEADER | ORIGIN_HOSTNAME | CUSTOM
    • INCOMING_HOST_HEADER: 클라이언트에서 전달받은 헤더 사용
    • ORIGIN_HOSTNAME: 특정 값으로 헤더 치환
    • CUSTOM: 헤더 값 지정
forwardHostHeader.customHostHeader String - 호스트 헤더 값
  • forwardHostHeader.typeCUSTOM인 경우, 표시
originalCopyProtocol Object - 오리진 프로토콜 설정
originalCopyProtocol.type String - 프로토콜 유형
  • HTTP | HTTPS
originalCopyProtocol.port Integer - 포트 번호
originalCopyPath String - 오리진 경로
originFailoverConfig Object - 오리진 페일오버 설정
originFailoverConfig.ruleName String - 페일오버 규칙 이름
originFailoverConfig.statusCodes Array - 오리진 응답 코드 목록
originFailoverConfig.originalCopyLocation Object - 요청을 포워딩할 백업 오리진 서버 정보
originFailoverConfig.originalCopyLocation.type String - 백업 오리진 유형
  • OBJECT_STORAGE | CUSTOM
    • OBJECT_STORAGE: Object Storage
    • CUSTOM: 외부 도메인
originFailoverConfig.originalCopyLocation.region String - 서비스 리전
  • originFailoverConfig.originalCopyLocation.typeOBJECT_STORAGE인 경우, 표시
originFailoverConfig.originalCopyLocation.bucketName String - 버킷 이름
  • originFailoverConfig.originalCopyLocation.typeOBJECT_STORAGE인 경우, 표시
originFailoverConfig.originalCopyLocation.customLocation String - 도메인 이름
  • originFailoverConfig.originalCopyLocation.typeCUSTOM인 경우, 표시

CdnCachingConfig

CdnCachingConfig에 대한 설명은 다음과 같습니다.

필드 타입 필수 여부 설명
defaultCaching Object - 캐시 기본 설정
defaultCaching.enabled Boolean - 기능 사용 여부
  • true | false
    • true: 사용
    • false: 사용 안 함
  • true인 경우, 관련 정보 추가 표시
defaultCaching.ruleDefinitionType String - 캐시 옵션
  • CACHING | BYPASS_CACHE | ORIGIN_CACHE_CONTROL_HEADER
    • CACHING: 캐시
    • BYPASS_CACHE: 오리진 서버로 바이패스
    • ORIGIN_CACHE_CONTROL_HEADER: 오리진 Cache-Control 헤더 기준으로 처리
defaultCaching.cacheRevalidateConfig Object - 오래된 객체 재검증 설정
  • 캐시 수명이 만료되고 오리진 사용 불가 시 수행 동작 지정
defaultCaching.cacheRevalidateConfig.type String - 재검증 유형
  • IF_POSSIBLE | ALWAYS
    • IF_POSSIBLE: 확인 불가 시 오래된 객체 서비스 제공
    • ALWAYS: 오리진 항상 검증
defaultCaching.cacheRevalidateConfig.ageType String - 캐시 최대 보관 기간 단위
defaultCaching.cacheRevalidateConfig.age Integer - 캐시 최대 보관 기간
negativeTtl Boolean - 네거티브 TTL 사용 여부
  • true | false
    • true: 사용
    • false: 사용 안 함
  • 오리진 서버에서 오류 응답 반환 시 응답 캐싱
bypassQueryString Object - 바이패스 쿼리 스트링 설정
  • 캐싱 없이 오리진 서버로 바이패스하는 조건 문자열 지정
bypassQueryString.enabled Boolean - 기능 사용 여부
  • true | false
    • true: 사용
    • false: 사용 안 함
  • true인 경우, 관련 정보 추가 표시
bypassQueryString.queryStrings Array - 대상 문자열 목록
cacheKeyHostname String - 캐시 키 호스트 이름 유형
  • INCOMING_HOST_HEADER | ORIGIN_HOSTNAME
    • INCOMING_HOST_HEADER: 캐시 키에 서비스 도메인 포함
    • ORIGIN_HOSTNAME: 캐시 키에 오리진 서버의 호스트 이름 포함
cacheKeyIgnoreQueryString Object - 캐시 키 쿼리 스트링 설정
  • 캐시 키 생성 시 쿼리 문자열의 포함/무시 방식 지정
cacheKeyIgnoreQueryString.type String - 설정 유형
  • ALL_IGNORED | ALL_ALLOWED | ALLOW_SPECIFIC_STRING
    • ALL_IGNORED: 전체 무시
    • ALL_ALLOWED: 전체 허용
    • ALLOW_SPECIFIC_STRING: 특정 문자열 허용
cacheKeyIgnoreQueryString.queryStrings Array - 대상 문자열 목록
  • cacheKeyIgnoreQueryString.typeALLOW_SPECIFIC_STRING인 경우, 표시
urlLetterCaseIgnoreUse Boolean - 캐시 키 대소문자 구분 무시 여부
  • true | false
    • true: 무시
    • false: 무시 안 함
  • 오리진이 대소문자를 구분하지 않는 경우, URL 및 파일 이름의 대소문자를 무시하고 캐싱 가능
removeVaryHeader Boolean - Vary 헤더 제거 사용 여부
  • true | false
    • true: 사용
    • false: 사용 안 함
  • 사용 시 오리진 서버 응답의 Accept-Encoding 외 Vary 헤더 제거 후 캐싱
edgeAuth Object - 요청 인증 설정
  • 토큰으로 요청을 인증하여 통과된 경우에만 응답
edgeAuth.enabled Boolean - 기능 사용 여부
  • true | false
    • true: 사용
    • false: 사용 안 함
  • true인 경우, 관련 정보 추가 표시
edgeAuth.type String - 인증 유형
  • SIGNED_URL | JWT | MEDIA_VAULT
    • SIGNED_URL: URL에 인증 정보 포함
    • JWT: JSON 토큰을 생성해 HTTP 헤더에 포함
    • MEDIA_VAULT: URL에 인증 정보 포함
edgeAuth.tokenName String - 토큰 이름
edgeAuth.tokenKey String - 토큰 키 값
edgeAuth.bypassValues Array - 인증 제외 확장자 목록
edgeAuth.tokenBypassValues Array - 인증값을 오리진에 전달하는 확장자 목록
cachingRules Array - 캐시 상세 룰 설정: CachingRule
  • 룰 존재 시 하위 정보 포함하여 표시

CachingRule

CachingRule에 대한 설명은 다음과 같습니다.

필드 타입 필수 여부 설명
ruleName String - 캐시 상세 룰 이름
ruleType String - 룰 조건 유형
  • DIRECTORY | FILE_EXTENSION | ADVANCED
    • DIRECTORY: 디렉터리
    • FILE_EXTENSION: 파일 확장자
    • ADVANCED: 디렉터리 및 파일 확장자
ruleConditions Array - 룰 조건 목록
ruleDefinitionType String - 캐시 옵션
  • CACHING | BYPASS_CACHE | ORIGIN_CACHE_CONTROL_HEADER
    • CACHING: 캐시
    • BYPASS_CACHE: 오리진 서버로 바이패스
    • ORIGIN_CACHE_CONTROL_HEADER: 오리진 Cache-Control 헤더 기준으로 처리
cacheRevalidateConfig Object - 오래된 객체 재검증 설정
  • 캐시 수명이 만료되고 오리진 사용 불가 시 수행 동작 지정
cacheRevalidateConfig.type String - 재검증 유형
  • IF_POSSIBLE | ALWAYS
    • IF_POSSIBLE: 확인 불가 시 오래된 객체 서비스 제공
    • ALWAYS: 오리진 항상 검증
cacheRevalidateConfig.ageType String - 캐시 최대 보관 기간 단위
cacheRevalidateConfig.age String - 캐시 최대 보관 기간
ruleBasedRoutingConfig Object - 룰 기반 오리진 라우팅 설정
  • 룰 조건에 부합하면 지정 위치로 오리진 라우팅
ruleBasedRoutingConfig.enabled Boolean - 기능 사용 여부
  • true | false
    • true: 사용
    • false: 사용 안 함
  • true인 경우, 관련 정보 추가 표시
ruleBasedRoutingConfig.originalCopyLocation Object - 오리진 서버 설정
ruleBasedRoutingConfig.originalCopyLocation.type String - 오리진 유형
  • OBJECT_STORAGE | CUSTOM
    • OBJECT_STORAGE: Object Storage
    • CUSTOM: 외부 도메인
ruleBasedRoutingConfig.originalCopyLocation.region String - 서비스 리전
  • ruleBasedRoutingConfig.originalCopyLocation.typeOBJECT_STORAGE인 경우, 표시
ruleBasedRoutingConfig.originalCopyLocation.bucketName String - 버킷 이름
  • ruleBasedRoutingConfig.originalCopyLocation.typeOBJECT_STORAGE인 경우, 표시
ruleBasedRoutingConfig.originalCopyLocation.customLocation String - 도메인 이름
  • ruleBasedRoutingConfig.originalCopyLocation.typeCUSTOM인 경우, 표시
browserCache Object - 브라우저 캐시 설정
  • 엣지에서 클라이언트에 보낼 캐싱 동작 지정
browserCache.enabled Boolean - 기능 사용 여부
  • true | false
    • true: 사용
    • false: 사용 안 함
  • true인 경우, 관련 정보 추가 표시
browserCache.type String - 브라우저 캐시 허용 유형
  • ALLOW_CACHE | NO_CACHE
    • ALLOW_CACHE: 캐시 허용
    • NO_CACHE: 캐시 허용하지 않음
browserCache.ageType String - 캐시 최대 보관 기간 단위
browserCache.age Integer - 캐시 최대 보관 기간
cacheKeyQueryParameter Object - 캐시 키 쿼리 파라미터 설정
  • 캐시 키 생성 시 쿼리 문자열의 포함/무시 방식 지정
cacheKeyQueryParameter.enabled Boolean - 기능 사용 여부
  • true | false
    • true: 사용
    • false: 사용 안 함
  • true인 경우, 관련 정보 추가 표시
cacheKeyQueryParameter.type String - 설정 유형
  • ALL_IGNORED | ALL_ALLOWED | IGNORE_SPECIFIC_STRING | ALLOW_SPECIFIC_STRING
    • ALL_IGNORED: 모두 무시
    • ALL_ALLOWED: 모두 허용
    • IGNORE_SPECIFIC_STRING: 특정 문자열 무시
    • ALLOW_SPECIFIC_STRING: 특정 문자열 허용
cacheKeyQueryParameter.queryParameters Array - 대상 문자열 목록
  • cacheKeyQueryParameter.typeALLOW_SPECIFIC_STRING 또는 IGNORE_SPECIFIC_STRING인 경우, 표시
accessDeny Boolean - 룰 조건(ruleConditions)에 대해 접근 차단 여부
  • true | false
    • true: 차단
    • false: 차단하지 않음
urlRedirect Object - URL 리디렉션 설정
  • 룰 조건에 부합하면 오리진 서버가 아닌 리디렉션으로 응답
urlRedirect.enabled Boolean - 기능 사용 여부
  • true | false
    • true: 사용
    • false: 사용 안 함
  • true인 경우, 관련 정보 추가 표시
urlRedirect.destinationProtocol String - 리디렉션 목적지 프로토콜
  • HTTP | HTTPS
urlRedirect.destinationHostname String - 리디렉션 목적지 호스트
urlRedirect.destinationPath String - 리디렉션 목적지 상세 경로
urlRedirect.responseCode String - 리디렉션 상태 코드
  • MOVED_PERMANENTLY_301 | FOUND_302
    • MOVED_PERMANENTLY_301: 영구적 URL 이동
    • FOUND_302: 일시적 URL 이동
urlRewrite Object - URL 리라이팅 설정
  • 룰 조건 부합 시 요청의 URL 자동 수정
urlRewrite.enabled Boolean - 기능 사용 여부
  • true | false
    • true: 사용
    • false: 사용 안 함
  • true인 경우, 관련 정보 추가 표시
urlRewrite.rewriteTarget String - 목적지 상세 경로

ManagedRule

ManagedRule에 대한 설명은 다음과 같습니다.

필드 타입 필수 여부 설명
cors Boolean - CORS 헤더(교차 오리진 리소스 공유 헤더) 추가 여부
  • true | false
    • true: 추가
    • false: 추가 안 함
http2 Boolean - HTTP/2(개방형 네트워크 프로토콜) 사용 여부
  • true | false
    • true: 사용
    • false: 사용 안 함
trueClientIpHeader Boolean - 오리진 서버로 요청 포워딩 시 헤더에 클라이언트 IP 헤더 추가 여부
  • true | false
    • true: 추가
    • false: 추가 안 함
hsts Boolean - 브라우저 연결에 HTTPS 사용 여부
  • true | false
    • true: 사용
    • false: 사용 안 함

HeaderPolicy

HeaderPolicy에 대한 설명은 다음과 같습니다.

필드 타입 필수 여부 설명
type String - 헤더 유형
  • ORIGIN_REQUEST | CLIENT_RESPONSE
    • ORIGIN_REQUEST: 오리진 서버에 포워딩되는 요청 헤더
    • CLIENT_RESPONSE: 서버에서 클라이언트로 전송되는 응답 헤더
ruleName String - 헤더 설정 이름
header Object - 헤더 상세 설정
header.type String - 액션 유형
  • ADD | MODIFY | REMOVE
    • ADD: 추가
    • MODIFY: 수정
    • REMOVE: 삭제
header.name String - 헤더 이름
header.value String - 헤더 값
  • header.typeADD 또는 MODIFY인 경우, 표시

OptimizationConfig

OptimizationConfig에 대한 설명은 다음과 같습니다.

필드 타입 필수 여부 설명
httpCompression Boolean - Gzip, Brotli 압축 전송 사용 여부
  • true | false
    • true: 사용
    • false: 사용 안 함
  • 사용 시 응답 시간 단축
largeFileOptimization Boolean - 대용량 파일 전송 사용 여부
  • true | false
    • true: 사용
    • false: 사용 안 함
  • 사용 시 대용량 파일 전송 성능 및 안정성 최적화

AccessControl

AccessControl에 대한 설명은 다음과 같습니다.

필드 타입 필수 여부 설명
type String - 접근 제어 유형
  • WHITELIST | BLACKLIST
    • WHITELIST: 화이트리스트
    • BLACKLIST: 블랙리스트
ipPolicies Array - 클라이언트 IP 또는 CIDR 블록
  • IP 형식
  • 미설정 시 빈 값 [] 표시
geoPolicies Array - 클라이언트 국가 코드
  • ISO 3166-1 alpha-2 국가 코드 기준
  • 미설정 시 빈 값 [] 표시
refererPolicies Array - HTTP 요청 레퍼러 헤더
  • 도메인 형식
  • 미설정 시 빈 값 [] 표시

응답 상태 코드

Global Edge API에서 공통으로 사용하는 응답 상태 코드에 대한 정보는 Global Edge 응답 상태 코드를 참조해 주십시오.

응답 예시

응답 예시는 다음과 같습니다.

{
    "code": "0000",
    "message": "Success",
    "result": {
        "profileId": 4207,
        "edgeName": "edge2",
        "distributionConfig": {
            "protocolType": "HTTP",
            "regionType": "KOREA",
            "serviceDomain": {
                "domainType": "NCP_DOMAIN_AUTO",
                "domainName": "jze******.edge.naverncp.com"
            },
            "edgeLogging": {
                "enabled": false
            }
        },
        "originalCopyConfig": {
            "originalCopyLocation": {
                "type": "LOAD_BALANCER",
                "region": "KR",
                "customLocation": "LB-********.kr.lb.naverncp.com"
            },
            "forwardHostHeader": {
                "type": "INCOMING_HOST_HEADER",
                "customHostHeader": ""
            },
            "originalCopyProtocol": {
                "type": "HTTP",
                "port": 80
            },
            "originalCopyPath": ""
        },
        "cachingConfig": {
            "defaultCaching": {
                "enabled": true,
                "ruleDefinitionType": "CACHING",
                "cacheRevalidateConfig": {
                    "type": "ALWAYS",
                    "ageType": "DAYS",
                    "age": 30
                }
            },
            "negativeTtl": true,
            "bypassQueryString": {
                "enabled": false
            },
            "cacheKeyHostname": "INCOMING_HOST_HEADER",
            "cacheKeyIgnoreQueryString": {
                "type": "ALL_IGNORED"
            },
            "urlLetterCaseIgnoreUse": false,
            "removeVaryHeader": true,
            "edgeAuth": {
                "enabled": false
            },
            "cachingRules": [
                {
                    "ruleName": "cachedetailrule",
                    "ruleType": "DIRECTORY",
                    "ruleConditions": [
                        "/dir/*"
                    ],
                    "ruleDefinitionType": "CACHING",
                    "cacheRevalidateConfig": {
                        "type": "IF_POSSIBLE",
                        "ageType": "DAYS",
                        "age": 30
                    },
                    "ruleBasedRoutingConfig": {
                        "enabled": true,
                        "originalCopyLocation": {
                            "type": "CUSTOM",
                            "customLocation": "admin.example.com"
                        }
                    },
                    "browserCache": {
                        "enabled": true,
                        "type": "ALLOW_CACHE",
                        "ageType": "MINUTES",
                        "age": 1
                    },
                    "cacheKeyQueryParameter": {
                        "enabled": true,
                        "type": "IGNORE_SPECIFIC_STRING",
                        "queryParameters": [
                            "param"
                        ]
                    },
                    "accessDeny": true,
                    "urlRedirect": {
                        "enabled": true,
                        "destinationProtocol": "HTTP",
                        "destinationHostname": "host.com",
                        "destinationPath": "/directory",
                        "responseCode": "FOUND_302"
                    },
                    "urlRewrite": {
                        "enabled": false
                    }
                }
            ]
        },
        "managedRule": {
            "cors": false,
            "http2": false,
            "trueClientIpHeader": false,
            "hsts": false
        },
        "headerPolicies": [],
        "optimizationConfig": {
            "httpCompression": true,
            "largeFileOptimization": true
        },
        "accessControl": {
            "type": "WHITELIST",
            "ipPolicies": [
                "1**.***.***.**0"
            ],
            "geoPolicies": [
                "AF",
                "AL"
            ],
            "refererPolicies": [
                "*.test.com"
            ]
        },
        "productType": "GLOBAL_EDGE"
    }
}