Updated on 2024-03-15 GMT+08:00

Content Delivery Network (CDN)

The Organizations service provides Service Control Policies (SCPs) to set access control policies.

SCPs do not actually grant any permissions to a principal. They only set the permissions boundary for the principal. When SCPs are attached to a member account or an organizational unit (OU), they do not directly grant permissions to that member account or OU. Instead, the SCPs just determine what permissions are available for that member account or the member accounts under that OU.

This section describes the elements used by Organizations SCPs. The elements include actions, resources, and conditions.

For details about how to use these elements to create a custom SCP, see Creating an SCP.

Actions

Actions are specific operations that are allowed or denied in an SCP.

  • The Access Level column describes how the action is classified (List, Read, or Write). This classification helps you understand the level of access that an action grants when you use it in an SCP.
  • The Resource Type column indicates whether the action supports resource-level permissions.
    • You can use a wildcard (*) to indicate all resource types. If this column is empty (-), the action does not support resource-level permissions, and you must specify all resources ("*") in your SCP statements.
    • If this column includes a resource type, you must specify the URN in the Resource element of your statements.
    • Required resources are marked with asterisks (*) in the table. If you specify a resource in a statement using this action, then it must be of this type.

    For details about the resource types defined by CDN, see Resources.

  • The Condition Key column contains keys that you can specify in the Condition element of an SCP statement.
    • If the Resource Type column has values for an action, the condition key takes effect only for the listed resource types.
    • If the Resource Type column is empty (-) for an action, the condition key takes effect for all resources that action supports.
    • If the Condition Key column is empty (-) for an action, the action does not support any condition keys.

    For details about the condition keys defined by CDN, see Conditions.

The following table lists the actions that you can define in SCP statements for CDN.

Table 1 Actions supported by CDN

Action

Description

Access Level

Resource Type (*: required)

Condition Key

cdn:statistics:queryStats

Querying domain name statistics

list

domain *

g:EnterpriseProjectId

cdn:statistics:downloadExcel

Downloading domain name statistics

list

domain *

g:EnterpriseProjectId

cdn:log:queryLogs

Querying logs

read

domain *

g:EnterpriseProjectId

cdn:charge:modifyChargeMode

Creating or modifying the billing option

write

-

-

cdn:charge:queryChargeMode

Querying the billing option

list

-

-

cdn:statistics:querySubscriptionTasks

Listing operations reports

list

-

-

cdn:statistics:createSubscriptionTasks

Creating an operations report

write

domain *

-

cdn:statistics:updateSubscriptionTasks

Modifying an operations report

write

domain *

-

cdn:statistics:deleteSubscriptionTasks

Deleting an operations report

write

-

-

cdn:configuration:queryDomainList

Listing domain names

list

domain *

g:EnterpriseProjectId

cdn:configuration:queryDomains

Querying details about a domain name

read

domain *

  • g:ResourceTag/<tag-key>
  • g:EnterpriseProjectId

cdn:configuration:modifyDomainConfigs

Modifying domain name configuration

write

domain *

g:EnterpriseProjectId

cdn:configuration:modifyOriginConfInfo

Modifying the origin server settings

write

domain *

  • g:ResourceTag/<tag-key>
  • g:EnterpriseProjectId

cdn:log:queryLogs

Querying logs

read

domain *

g:EnterpriseProjectId

cdn:statistics:queryStats

Querying domain name statistics

list

domain *

g:EnterpriseProjectId

cdn:configuration:queryDomainList

Listing domain names

list

domain *

g:EnterpriseProjectId

cdn:configuration:createDomains

Creating a domain name

write

domain *

g:EnterpriseProjectId

cdn:configuration:queryDomains

Querying details about a domain name

read

domain *

  • g:ResourceTag/<tag-key>
  • g:EnterpriseProjectId

cdn:configuration:deleteDomains

Deleting a domain name

write

domain *

  • g:ResourceTag/<tag-key>
  • g:EnterpriseProjectId

cdn:configuration:disableDomains

Disabling CDN for a domain name

write

domain *

  • g:ResourceTag/<tag-key>
  • g:EnterpriseProjectId

cdn:configuration:enableDomains

Enabling CDN for a domain name

write

domain *

  • g:ResourceTag/<tag-key>
  • g:EnterpriseProjectId

cdn:configuration:modifyOriginServerInfo

Modifying the origin server information

write

domain *

  • g:ResourceTag/<tag-key>
  • g:EnterpriseProjectId

cdn:configuration:modifyOriginConfInfo

Modifying the origin server settings

write

domain *

  • g:ResourceTag/<tag-key>
  • g:EnterpriseProjectId

cdn:configuration:queryOriginConfInfo

Querying the origin server settings

read

domain *

  • g:ResourceTag/<tag-key>
  • g:EnterpriseProjectId

cdn:configuration:modifyReferConf

Modifying the referer whitelist

write

domain *

  • g:ResourceTag/<tag-key>
  • g:EnterpriseProjectId

cdn:configuration:queryReferConf

Querying the referer whitelist

read

domain *

  • g:ResourceTag/<tag-key>
  • g:EnterpriseProjectId

cdn:configuration:queryIpAcl

Querying the IP ACL

list

domain *

  • g:ResourceTag/<tag-key>
  • g:EnterpriseProjectId

cdn:configuration:modifyIpAcl

Modifying the IP ACL

write

domain *

  • g:ResourceTag/<tag-key>
  • g:EnterpriseProjectId

cdn:configuration:queryCacheRule

Listing cache rules

list

domain *

  • g:ResourceTag/<tag-key>
  • g:EnterpriseProjectId

cdn:configuration:modifyCacheRule

Modifying a cache rule

write

domain *

  • g:ResourceTag/<tag-key>
  • g:EnterpriseProjectId

cdn:configuration:modifyHttpsConf

Modifying the certificate of a domain name

write

domain *

  • g:ResourceTag/<tag-key>
  • g:EnterpriseProjectId

cdn:configuration:queryHttpsConf

Querying the HTTPS settings

read

domain

  • g:ResourceTag/<tag-key>
  • g:EnterpriseProjectId

cdn:configuration:queryIpInfo

Querying the IP address information

list

-

-

cdn:configuration:createResHeader

Creating a response header

write

domain *

  • g:ResourceTag/<tag-key>
  • g:EnterpriseProjectId

cdn:configuration:queryResponseHeaderList

Querying response headers

read

domain *

  • g:ResourceTag/<tag-key>
  • g:EnterpriseProjectId

cdn:configuration:batchModifyHttpsConf

Modifying certificates of domain names

write

domain *

g:EnterpriseProjectId

cdn:configuration:queryTags

Listing domain name tags

list

domain *

  • g:ResourceTag/<tag-key>
  • g:EnterpriseProjectId

cdn:configuration:modifyTags

Modifying resource tags

tagging

domain *

  • g:ResourceTag/<tag-key>
  • g:EnterpriseProjectId
  • g:RequestTag/<tag-key>
  • g:TagKeys

cdn:configuration:deleteTags

Deleting resource tags

tagging

domain *

  • g:ResourceTag/<tag-key>
  • g:EnterpriseProjectId
  • g:RequestTag/<tag-key>
  • g:TagKeys

cdn:configuration:refreshCache

Purging the cache

write

-

g:EnterpriseProjectId

cdn:configuration:queryRefreshAndPreheatHistoryTask

Querying a cache purge or prefetch task

list

-

-

cdn:configuration:queryCacheHistoryTask

Querying historical cache tasks

list

-

-

cdn:configuration:preheatCache

Modifying cache prefetch settings

write

-

g:EnterpriseProjectId

cdn:configuration:queryQuota

Querying quotas of domain names, cache purge by file, cache purge by directory, and cache prefetch

list

-

-

Each API of CDN usually supports one or more actions. Table 2 lists the supported actions and dependencies.

Table 2 Actions and dependencies supported by CDN APIs

API

Action

Dependencies

GET /v1.0/cdn/domains

cdn:configuration:queryDomainList

-

POST /v1.0/cdn/domains

cdn:configuration:createDomains

-

DELETE /v1.0/cdn/domains/{domain_id}

cdn:configuration:deleteDomains

-

PUT /v1.0/cdn/domains/{domain_id}/disable

cdn:configuration:disableDomains

-

PUT /v1.0/cdn/domains/{domain_id}/enable

cdn:configuration:enableDomains

-

GET /v1.0/cdn/ip-info

cdn:configuration:queryIpInfo

-

PUT /v1.0/cdn/domains/{domain_id}/private-bucket-access

cdn:configuration:modifyOriginConfInfo

-

PUT /v1.0/cdn/domains/config-https-info

cdn:configuration:batchModifyHttpsConf

-

GET /v1.0/cdn/domains/https-certificate-info

cdn:configuration:queryDomainList

-

PUT /v1.1/cdn/configuration/domains/{domain_name}/configs

cdn:configuration:modifyOriginConfInfo

  • cdn:configuration:modifyBusinessType
  • cdn:configuration:modifyOriginServerInfo
  • cdn:configuration:modifyBackSourceUrlConfig
  • cdn:configuration:modifyHttpsConf
  • cdn:configuration:modifyCacheRule
  • cdn:configuration:modifyReferConf
  • cdn:configuration:modifyIpAcl
  • cdn:configuration:modifyUserAgent
  • cdn:configuration:modifyUrlAuth
  • cdn:configuration:createResHeader
  • cdn:configuration:modifyErrorCodeRedirectRule
  • cdn:configuration:modifyVideoSeek
  • cdn:configuration:modifyRemoteAuth
  • cdn:configuration:modifyServiceArea

GET /v1.1/cdn/configuration/domains/{domain_name}/configs

cdn:configuration:queryDomains

-

GET /v1.0/cdn/configuration/tags

cdn:configuration:queryTags

-

POST /v1.0/cdn/configuration/tags

cdn:configuration:modifyTags

-

POST /v1.0/cdn/configuration/tags/batch-delete

cdn:configuration:deleteTags

-

POST /v1.0/cdn/content/refresh-tasks

cdn:configuration:refreshCache

-

POST /v1.0/cdn/content/preheating-tasks

cdn:configuration:preheatCache

-

GET /v1.0/cdn/historytasks

cdn:configuration:queryCacheHistoryTask

-

GET /v1.0/cdn/historytasks/{history_tasks_id}/detail

cdn:configuration:queryCacheHistoryTask

-

GET /v1.0/cdn/contentgateway/url-tasks

cdn:configuration:queryRefreshAndPreheatHistoryTask

-

GET /v1.0/cdn/quota

cdn:configuration:queryQuota

-

GET /v1.0/cdn/statistics/top-url

cdn:statistics:queryStats

-

GET /v1.0/cdn/statistics/domain-location-stats

cdn:statistics:queryStats

-

GET /v1.0/cdn/statistics/domain-stats

cdn:statistics:queryStats

-

GET /v1.0/cdn/logs

cdn:log:queryLogs

-

Resources

A resource type indicates the resources that an SCP policy applies to. If you specify a resource type for any action in Table 3, the resource URN must be specified in the SCP statements using that action, and the SCP applies only to resources of this type. If no resource type is specified, the Resource element is marked with an asterisk (*) and the SCP applies to all resources. You can also set condition keys in an SCP to define resource types.

The following table lists the resource types that you can define in SCP statements for CDN.

Table 3 Resource types supported by CDN

Resource Type

URN

domain

cdn::<account-id>:domain:<domain-name>

Conditions

CDN does not support service-specific condition keys in SCPs. It can only use global condition keys applicable to all services. For details, see Global Condition Keys.