MENU
      Edgeの作成

        Edgeの作成


        記事の要約

        概要

        CDN Edgeを新規作成します。

        • アカウントごとに Edgeを最大100個まで作成できます。

        リクエスト

        リクエスト URL

        POST
        https://edge.apigw.ntruss.com/api/v1/cdn-edge
        Plain text

        リクエストボディ

        EdgeConfig

        パラメータ名必須の有無タイプ制限事項説明
        profileIdYesLongプロファイル ID
        edgeNameYesString英数字と記号の「-」、「_」のみ使用可能
        distributionConfigYesCdnDistributionConfigデプロイの設定
        originalCopyConfigYesCdnOriginalCopyConfigオリジンの設定
        cachingConfigYesCdnCachingConfigキャッシュの設定
        managedRuleYesManagedRuleマネージドルールの設定
        headerPoliciesYesList<HeaderPolicy>ヘッダの設定
        optimizationConfigYesOptimizationConfig最適化の設定
        accessControlYesAccessControlアクセス制御の設定

        CdnDistributionConfig

        パラメータ名必須の有無タイプ制限事項説明
        protocolTypeYesStringHTTP, HTTPS, ALLサービスプロトコル
        regionTypeYesStringKOREA、JAPAN、GLOBAL(性能優先)、GLOBAL(可用性優先)サービス地域
        serviceDomainYesServiceDomainサービスドメイン
        edgeLoggingYesEdgeLoggingEdgeロギングの設定

        ServiceDomain

        パラメータ名必須の有無タイプ制限事項説明
        domainTypeYesStringNCP_DOMAIN_AUTO, NCP_DOMAIN_CUSTOM, CUSTOM_DOMAINドメインの使用タイプ
        domainNameYesStringdomainTypeを custom domain使用時にドメイン形式を使用
        certificateNoCertificateHTTPSとプライベートドメインを一緒に使用する場合は必須

        Certificate

        パラメータ名必須の有無タイプ制限事項説明
        idYesLongCertificate Managerに登録された証明書の certificateNo

        EdgeLogging

        パラメータ名必須の有無タイプ制限事項説明
        enabledYesbooleantrue, false使用の有無
        bucketPrefixNoString
        objectStorageNoObjectStorageenabledを trueに設定時、必須

        ObjectStorage

        パラメータ名必須の有無タイプ制限事項説明
        regionYesStringKR, USWN, SGN, JPN, DEN韓国(KR)、米国西部(USWN)、シンガポール(SGN)、日本(JPN)、ドイツ(DEN)
        bucketNameYesStringObject Storageバケット名

        CdnOriginalCopyConfig

        パラメータ名必須の有無タイプ制限事項説明
        originalCopyLocationYesOriginalCopyLocationオリジンドメインの設定
        forwardHostHeaderYesForwardHostHeaderForward Host Header
        originalCopyProtocolYesOriginalCopyProtocolオリジンプロトコルの設定
        originalCopyPathNoStringオリジンのパス
        originShieldYesOriginShieldオリジンシールドの設定
        originFailoverConfigNoOriginFailoverConfigフェイルオーバーポリシーの設定

        OriginalCopyLocation

        パラメータ名必須の有無タイプ制限事項説明
        typeYesStringOBJECT_STORAGE, CUSTOM, NONEオリジンのタイプ
        regionNoStringKR, SGN, JPN, USWN, DEN韓国(KR)、シンガポール(SGN)、日本(JPN)、米国西部(USWN)、ドイツ(DEN)、Object Storage使用時に必須
        bucketNameNoStringtypeが Object Storageの場合、必須Object Storageバケット名
        customLocationNoStringtypeが customの場合、必須bucketName、customLocationは typeに応じて1つだけ使用可能

        ForwardHostHeader

        パラメータ名必須の有無タイプ制限事項説明
        typeYesStringINCOMING_HOST_HEADER, ORIGIN_HOSTNAME, CUSTOM
        customHostHeaderNoStringtypeが customの場合、必須

        OriginalCopyProtocol

        パラメータ名必須の有無タイプ制限事項説明
        typeYesStringHTTP, HTTPSオリジンのプロトコル
        portYesIntegerオリジンのポート

        OriginShield

        パラメータ名必須の有無タイプ制限事項説明
        enabledYesbooleantrue, false使用の有無
        regionNoStringKR, SGN, JPN, USWN, DEN韓国(KR)、シンガポール(SGN)、日本(JPN)、米国西部(USWN)、ドイツ(DEN)、enabledを trueに設定時に必須

        OriginFailoverConfig

        パラメータ名必須の有無タイプ制限事項説明
        ruleNameYesString
        statusCodesYesList<Integer>404, 500, 502, 503, 504
        originalCopyLocationYesOriginalCopyLocation

        CdnCachingConfig

        パラメータ名必須の有無タイプ制限事項説明
        defaultCachingYesDefaultCaching基本キャッシュ設定
        negativeTtlYesbooleantrue, false使用の有無、エラーレスポンスキャッシュの設定
        bypassQueryStringYesBypassQueryString
        cacheKeyHostnameYesStringINCOMING_HOST_HEADER, ORIGIN_HOSTNAME
        cacheKeyIgnoreQueryStringYesCacheKeyIgnoreQueryString
        removeVaryHeaderYesbooleantrue, false使用の有無
        edgeAuthYesEdgeAuthトークンを利用してユーザーのリクエストを検証
        cachingRulesYesList<CachingRule>キャッシュの詳細設定

        DefaultCaching

        パラメータ名必須の有無タイプ制限事項説明
        enabledYesbooleantrue, false使用の有無
        ruleDefinitionTypeYesStringCACHING, BYPASS_CACHE, ORIGIN_CACHE_CONTROL_HEADER
        cacheRevalidateConfigYesCacheRevalidateConfig

        CacheRevalidateConfig

        パラメータ名必須の有無タイプ制限事項説明
        typeYesStringIF_POSSIBLE, ALWAYSServe stale if unable to validate(IF_POSSIBLE), Always revalidate with origin(ALWAYS)
        ageTypeYesStringSECONDS, MINUTES, HOURS, DAYS
        ageYesIntegerageTypeに応じて時間単位を変更

        BypassQueryString

        パラメータ名必須の有無タイプ制限事項説明
        enabledYesbooleantrue, false使用の有無
        queryStringsNoList<String>enabledを trueに設定時、必須

        CacheKeyIgnoreQueryString

        パラメータ名必須の有無タイプ制限事項説明
        typeYesStringALL_IGNORED, ALL_ALLOWED, ALLOW_SPECIFIC_STRING
        queryStringsNoList<String>typeを ALLOW_SPECIFIC_STRINGにすると必須

        EdgeAuth

        パラメータ名必須の有無タイプ制限事項説明
        enabledYesbooleantrue, false使用の有無
        typeYesStringSIGNED_URL, JWT, MEDIA_VAULTサービス地域でグローバルを選択すると MEDIA_VAULTのみ使用可能
        サービス地域が韓国/日本の場合はすべて使用可能
        tokenNameNoStringスペースは使用できず、英字の小文字のみ使用可能、enabledを trueに設定すると必須
        tokenKeyNoStringenabledを trueに設定時、必須
        bypassValuesNoList<String>MEDIA_VAULTはサポートしない認証対象外の拡張子(最大20個)
        例) .ts、.jpg、.exe
        tokenBypassValuesNoList<String>MEDIA_VAULTはサポートしない認証値をオリジンに渡す拡張子(最大20個)
        例) playlist.m3u8, index.m3u8, .ts, .png

        CachingRule

        パラメータ名必須の有無タイプ制限事項説明
        ruleNameYesString
        ruleTypeYesStringDIRECTORY, FILE_EXTENSION, ADVANCED
        ruleConditionsYesList<String>
        ruleDefinitionTypeYesStringCACHING, BYPASS_CACHE, ORIGIN_CACHE_CONTROL_HEADER
        cacheRevalidateConfigYesCacheRevalidateConfig
        ruleBasedRoutingConfigYesRuleBasedRoutingConfig
        browserCacheYesBrowserCache
        cacheKeyQueryParameterYesCacheKeyQueryParameter
        accessDenyYesbooleantrue, false
        urlRedirectYesUrlRedirect
        urlRewriteYesUrlRewrite

        RuleBasedRoutingConfig

        パラメータ名必須の有無タイプ制限事項説明
        enabledYesbooleantrue, false使用の有無
        originalCopyLocationNoOriginalCopyLocationenabledを trueに設定時、必須

        BrowserCache

        パラメータ名必須の有無タイプ制限事項説明
        enabledYesbooleantrue, false使用の有無
        typeNoStringALLOW_CACHE、NO_CACHE、enabledを trueに設定すると必須
        ageTypeNoStringSECONDS、MINUTES、HOURS、DAYS、enabledを trueに設定すると必須
        ageNoIntegerenabledを trueに設定時、必須

        CacheKeyQueryParameter

        パラメータ名必須の有無タイプ制限事項説明
        enabledYesbooleantrue, false使用の有無
        typeYesStringALL_IGNORED, ALL_ALLOWED, ALLOW_SPECIFIC_STRING, IGNORE_SPECIFIC_STRING
        queryParametersNoList<String>typeを ALLOW_SPECIFIC_STRING、IGNORE_SPECIFIC_STRINGにすると必須

        UrlRedirect

        パラメータ名必須の有無タイプ制限事項説明
        enabledYesbooleantrue, false使用の有無、UrlRedirectと UrlRewriteは同時使用できない
        destinationProtocolNoStringHTTP、HTTPS、enabledを trueに設定すると必須
        destinationHostnameNoStringenabledを trueに設定時、必須
        destinationPathNoStringenabledを trueに設定時、必須
        responseCodeNoStringMOVED_PERMANENTLY_301、FOUND_302、enabledを trueに設定すると必須

        UrlRewrite

        パラメータ名必須の有無タイプ制限事項説明
        enabledYesbooleantrue, false使用の有無、UrlRedirectと UrlRewriteは同時使用できない
        rewriteTargetNoStringenabledを trueに設定時、必須

        ManagedRule

        パラメータ名必須の有無タイプ制限事項説明
        corsYesbooleantrue, false使用の有無
        http2Yesbooleantrue, false使用の有無
        trueClientIpHeaderYesbooleantrue, false使用の有無
        hstsYesbooleantrue, false使用の有無

        HeaderPolicy

        パラメータ名必須の有無タイプ制限事項説明
        typeYesStringORIGIN_REQUEST, CLIENT_RESPONSE
        ruleNameYesString
        headerYesHeader

        Header

        パラメータ名必須の有無タイプ制限事項説明
        typeYesStringADD, MODIFY, REMOVE
        nameYesString
        valueYesString

        OptimizationConfig

        パラメータ名必須の有無タイプ制限事項説明
        httpCompressionYesbooleantrue, false使用の有無
        largeFileOptimizationYesbooleantrue, false使用の有無

        AccessControl

        パラメータ名必須の有無タイプ制限事項説明
        typeYesWHITELIST, BLACKLISTすべてのアクセス制御ルールは1つのポリシーのみ使用可能
        ipPoliciesYesList<String>IPアドレス形式のみ使用可能
        geoPoliciesYesList<String>ISO 3166-1 alpha-2国コードを使用可能
        refererPoliciesYesList<String>ドメイン形式のみ使用可能

        レスポンス

        すべてのレスポンスは、HTTP Status Codeで成功または失敗を返します。

        HTTPステータスコードコードのメッセージ説明
        200Success照会成功
        401Unauthorized認証失敗
        500Internal Server Errorサーバエラー

        リクエスト例

        https://edge.apigw.ntruss.com/api/v1/cdn-edge
        Plain text
        {
            "profileId": 234,
            "edgeName": "sample-edge",
            "distributionConfig": {
                "protocolType": "ALL",
                "regionType": "KOREA",
                "serviceDomain": {
                    "domainType": "NCP_DOMAIN_AUTO",
                    "domainName": null,
                    "certificate": null
                },
                "edgeLogging": {
                    "enabled": true,
                    "objectStorage": {
                        "region": "KR",
                        "bucketName": "sample-bucket"
                    },
                    "bucketPrefix": "log/sample"
                }
            },
            "originalCopyConfig": {
                "originalCopyLocation": {
                    "type": "OBJECT_STORAGE",
                    "region": "KR",
                    "bucketName":"sample-bucket",
                    "customLocation": null
                },
                "forwardHostHeader": {
                    "type": "ORIGIN_HOSTNAME",
                    "customHostHeader": null
                },
                "originalCopyProtocol": {
                    "type": "HTTP",
                    "port": 80
                },
                "originalCopyPath": null,
                "originShield": {
                    "enabled": true,
                    "region": "USWN"
                },
                "originFailoverConfig": null
            },
            "cachingConfig": {
                "defaultCaching": {
                    "enabled": true,
                    "ruleDefinitionType": "CACHING",
                    "cacheRevalidateConfig": {
                        "type": "IF_POSSIBLE",
                        "ageType": "HOURS",
                        "age": "10"
                    }
                },
                "negativeTtl": true,
                "bypassQueryString": {
                    "enabled": true,
                    "queryStrings": ["aaa", "bbb", "ccc"]
                },
                "cacheKeyHostname": "INCOMING_HOST_HEADER",
                "cacheKeyIgnoreQueryString": {
                    "type": "ALL_ALLOWED",
                    "queryStrings": []
                },
                "removeVaryHeader": true,
                "edgeAuth": {
                    "enabled": true,
                    "type": "SIGNED_URL",
                    "tokenName": "name",
                    "tokenKey": "902bceb96b2139771716910ff0b9befb"
                },
                "cachingRules": [{
                    "ruleName": "sample",
                    "ruleType": "DIRECTORY",
                    "ruleConditions": ["/sample/*"],
                    "ruleDefinitionType": "CACHING",
                    "cacheRevalidateConfig": {
                        "type": "IF_POSSIBLE",
                        "ageType": "SECONDS",
                        "age": 100
                    },
                    "ruleBasedRoutingConfig": {
                        "enabled": true,
                        "originalCopyLocation": {
                            "type": "OBJECT_STORAGE",
                            "region": "KR",
                            "bucketName": "sample-bucket",
                            "customLocation": null
                        }
                    },
                    "browserCache": {
                        "enabled": true,
                        "type": "ALLOW_CACHE",
                        "age": 100,
                        "ageType": "SECONDS"
                    },
                    "cacheKeyQueryParameter": {
                        "enabled": true,
                        "type": "IGNORE_SPECIFIC_STRING",
                        "queryParameters": ["aaa", "bbb", "ccc"]
                    },
                    "accessDeny": false,
                    "urlRedirect": {
                        "enabled": true,
                        "destinationProtocol": "HTTP",
                        "destinationHostname": "ncloud.com",
                        "destinationPath": "/home",
                        "responseCode": "FOUND_302"
                    },
                    "urlRewrite": {
                        "enabled": false,
                        "rewriteTarget": null
                    }
                }]
            },
            "managedRule": {
                "cors": true,
                "http2": true,
                "trueClientIpHeader": true,
                "hsts": false
            },
            "headerPolicies": [{
                "type": "ORIGIN_REQUEST",
                "ruleName": "Modify Origin Reqeust Header",
                "header": {
                    "type": "ADD",
                    "name": "name",
                    "value": "value"
                }
            }, {
                "type": "CLIENT_RESPONSE",
                "ruleName": "Modify Client Response Header",
                "header": {
                    "type": "MODIFY",
                    "name": "name",
                    "value": "value"
                }
            }],
            "optimizationConfig": {
                "httpCompression": true,
                "largeFileOptimization": true
            },
            "accessControl": {
                "type": "WHITELIST",
                "ipPolicies": ["1.1.1.1", "2.2.2.2", "3.3.3.3"],
                "geoPolicies": ["AL", "SK", "ZM"],
                "refererPolicies": ["ncloud.com", "naver.com"]
            }
        }
        JSON

        レスポンス例

        {
            "code": "0000",
            "message": "Success",
            "result": {
                "edgeId": 123
            }
        }
        JSON

        エラーコード

        Errorコード説明
        0032許可されていないリクエスト
        9999サーバエラー発生

        この記事は役に立ちましたか?

        Changing your password will log you out immediately. Use the new password to log back in.
        First name must have atleast 2 characters. Numbers and special characters are not allowed.
        Last name must have atleast 1 characters. Numbers and special characters are not allowed.
        Enter a valid email
        Enter a valid password
        Your profile has been successfully updated.