Compute
Elastic Cloud Server
Huawei Cloud Flexus
Bare Metal Server
Auto Scaling
Image Management Service
Dedicated Host
FunctionGraph
Cloud Phone Host
Huawei Cloud EulerOS
Networking
Virtual Private Cloud
Elastic IP
Elastic Load Balance
NAT Gateway
Direct Connect
Virtual Private Network
VPC Endpoint
Cloud Connect
Enterprise Router
Enterprise Switch
Global Accelerator
Management & Governance
Cloud Eye
Identity and Access Management
Cloud Trace Service
Resource Formation Service
Tag Management Service
Log Tank Service
Config
OneAccess
Resource Access Manager
Simple Message Notification
Application Performance Management
Application Operations Management
Organizations
Optimization Advisor
IAM Identity Center
Cloud Operations Center
Resource Governance Center
Migration
Server Migration Service
Object Storage Migration Service
Cloud Data Migration
Migration Center
Cloud Ecosystem
KooGallery
Partner Center
User Support
My Account
Billing Center
Cost Center
Resource Center
Enterprise Management
Service Tickets
HUAWEI CLOUD (International) FAQs
ICP Filing
Support Plans
My Credentials
Customer Operation Capabilities
Partner Support Plans
Professional Services
Analytics
MapReduce Service
Data Lake Insight
CloudTable Service
Cloud Search Service
Data Lake Visualization
Data Ingestion Service
GaussDB(DWS)
DataArts Studio
Data Lake Factory
DataArts Lake Formation
IoT
IoT Device Access
Others
Product Pricing Details
System Permissions
Console Quick Start
Common FAQs
Instructions for Associating with a HUAWEI CLOUD Partner
Message Center
Security & Compliance
Security Technologies and Applications
Web Application Firewall
Host Security Service
Cloud Firewall
SecMaster
Anti-DDoS Service
Data Encryption Workshop
Database Security Service
Cloud Bastion Host
Data Security Center
Cloud Certificate Manager
Edge Security
Managed Threat Detection
Blockchain
Blockchain Service
Web3 Node Engine Service
Media Services
Media Processing Center
Video On Demand
Live
SparkRTC
MetaStudio
Storage
Object Storage Service
Elastic Volume Service
Cloud Backup and Recovery
Storage Disaster Recovery Service
Scalable File Service Turbo
Scalable File Service
Volume Backup Service
Cloud Server Backup Service
Data Express Service
Dedicated Distributed Storage Service
Containers
Cloud Container Engine
SoftWare Repository for Container
Application Service Mesh
Ubiquitous Cloud Native Service
Cloud Container Instance
Databases
Relational Database Service
Document Database Service
Data Admin Service
Data Replication Service
GeminiDB
GaussDB
Distributed Database Middleware
Database and Application Migration UGO
TaurusDB
Middleware
Distributed Cache Service
API Gateway
Distributed Message Service for Kafka
Distributed Message Service for RabbitMQ
Distributed Message Service for RocketMQ
Cloud Service Engine
Multi-Site High Availability Service
EventGrid
Dedicated Cloud
Dedicated Computing Cluster
Business Applications
Workspace
ROMA Connect
Message & SMS
Domain Name Service
Edge Data Center Management
Meeting
AI
Face Recognition Service
Graph Engine Service
Content Moderation
Image Recognition
Optical Character Recognition
ModelArts
ImageSearch
Conversational Bot Service
Speech Interaction Service
Huawei HiLens
Video Intelligent Analysis Service
Developer Tools
SDK Developer Guide
API Request Signing Guide
Terraform
Koo Command Line Interface
Content Delivery & Edge Computing
Content Delivery Network
Intelligent EdgeFabric
CloudPond
Intelligent EdgeCloud
Solutions
SAP Cloud
High Performance Computing
Developer Services
ServiceStage
CodeArts
CodeArts PerfTest
CodeArts Req
CodeArts Pipeline
CodeArts Build
CodeArts Deploy
CodeArts Artifact
CodeArts TestPlan
CodeArts Check
CodeArts Repo
Cloud Application Engine
MacroVerse aPaaS
KooMessage
KooPhone
KooDrive
On this page

Introduction

Updated on 2024-08-09 GMT+08:00

You can use Identity and Access Management (IAM) for fine-grained permissions management of your CPH resources. If your Huawei Cloud account does not need individual IAM users, you can skip this section.

New IAM users do not have any permissions assigned by default. You need to first add them to one or more groups and attach policies or roles to these groups. The users then inherit permissions from the groups and can perform specified operations on cloud services based on the permissions they have been assigned.

You can grant users permissions using roles and policies. Roles are provided by IAM to define service-based permissions that match users' job responsibilities. Policies define API-based permissions for operations on specific resources under certain conditions, allowing for more fine-grained, secure access control of cloud resources.

NOTE:

If you want to allow or deny the access to an API, use policy-based authorization.

An account has all the permissions required to call all APIs, but IAM users must be assigned the required permissions. The permissions required for calling an API are determined by the actions supported by the API. Only users who have been granted permissions allowing the actions can call the API successfully. For example, if an IAM user wants to query ECSs using an API, the user must have been granted permissions that allow the cph:servers:list action.

Supported Actions

CPH provides system-defined policies that can be used in IAM. You can also create custom policies to supplement system-defined policies for more refined access control. Operations supported by policies are specific to APIs. The following are common concepts related to policies:

  • Permissions: statements in a policy that allow or deny certain operations
  • APIs: REST APIs that can be called by a user who has been granted specific permissions
  • Actions: specific operations that are allowed or denied
  • Dependencies: actions which a specific action depends on. When allowing an action for a user, you also need to allow any existing action dependencies for that user.
  • IAM projects/Enterprise projects: the authorization scope of a custom policy. A custom policy can be applied to IAM projects or enterprise projects or both. Policies that contain actions for both IAM and enterprise projects can be used and applied for both IAM and Enterprise Management. CPH does not support Enterprise Project. For details about the differences between IAM and enterprise management, see Differences Between IAM and Enterprise Management.
    NOTE:

    √: supported; x: not supported

    Table 1 describes the actions supported by CPH custom policies.

    Table 1 Actions supported by CPH custom policies

    Permission

    API

    Action

    IAM Project

    Enterprise Project

    Creating a cloud phone server

    POST /v2/{project_id}/cloud-phone/servers

    cph:servers:create

    Migrating workloads from a cloud phone server to another server

    POST /v2/{project_id}/cloud-phone/servers/{server_id}/change

    cph:servers:change

    Querying cloud phone servers

    GET /v1/{project_id}/cloud-phone/servers

    cph:servers:list

    Querying details of a cloud phone server

    GET /v1/{project_id}/cloud-phone/servers/{server_id}

    cph:servers:get

    Querying cloud phone server flavors

    GET /v1/{project_id}/cloud-phone/server-models

    cph:system:listServerTypes

    ×

    Renaming a cloud phone server

    PUT /v1/{project_id}/cloud-phone/servers/{server_id}

    cph:servers:updateName

    Changing the flavor of a cloud phone server

    POST /v1/{project_id}/cloud-phone/servers/change-server-model

    cph:servers:changeType

    Batch restarting cloud phone servers

    POST /v1/{project_id}/cloud-phone/servers/batch-restart

    cph:servers:restart

    Pushing a shared storage file

    POST /v1/{project_id}/cloud-phone/phones/share-files

    cph:servers:pushShareFiles

    Querying shared storage files

    GET /v1/{project_id}/cloud-phone/servers/share-files

    cph:servers:getShareFiles

    Deleting shared storage files

    POST /v1/{project_id}/cloud-phone/phones/share-files

    cph:servers:deleteShareFiles

    Pushing a shared application

    POST /v1/{project_id}/cloud-phone/phones/share-apps

    cph:servers:pushShareApps

    Deleting a shared application

    DELETE /v1/{project_id}/cloud-phone/phones/share-apps

    cph:servers:deleteShareApps

    Changing a key pair

    PUT /v1/{project_id}/cloud-phone/servers/open-access

    cph:servers:updateKeypair

    Querying encoding servers

    GET /v1/{project_id}/cloud-phone/encode-servers

    cph:servers:listEncodeServers

    Batch restarting the encoding servers

    POST /v1/{project_id}/cloud-phone/encode-servers/batch-restart

    cph:servers:restartEncodeServers

    Querying the bandwidth used by a cloud phone

    GET /v1/{project_id}/cloud-phone/bandwidths

    cph:bandwidths:list

    ×

    Modifying a shared bandwidth

    PUT /v1/{project_id}/cloud-phone/bandwidths/{band_width_id}

    cph:bandwidths:put

    ×

    Querying cloud phones

    GET /v1/{project_id}/cloud-phone/phones

    cph:phones:list

    Querying details of a cloud phone

    GET /v1/{project_id}/cloud-phone/phones/{phone_id}

    cph:phones:get

    Querying cloud phone flavors

    GET /v1/{project_id}/cloud-phone/phone-models

    cph:system:listPhoneSpecifications

    ×

    Resetting cloud phones

    POST /v1/{project_id}/cloud-phone/phones/batch-reset

    cph:phones:reset

    Restarting cloud phones

    POST /v1/{project_id}/cloud-phone/phones/batch-restart

    cph:phones:restart

    Stopping cloud phones

    POST /v1/{project_id}/cloud-phone/phones/batch-stop

    cph:phones:stop

    Renaming a cloud phone

    PUT /v1/{project_id}/cloud-phone/phones/{phone_id}

    cph:phones:updateName

    Updating cloud phone attributes

    POST /v1/{project_id}/cloud-phone/phones/batch-update-property

    cph:phones:updateProperty

    Exporting data on cloud phones

    POST /v1/{project_id}/cloud-phone/phones/batch-storage

    cph:phones:storage

    Restoring data of cloud phones

    POST /v1/{project_id}/cloud-phone/phones/batch-restore

    cph:phones:restore

    Diverting cloud phone traffic

    POST /v1/{project_id}/cloud-phone/phones-traffic

    cph:phones:createTrafficRoute

    Expanding the disk capacity of cloud phones

    POST /v1/{project_id}/cloud-phone/phones/expand-volume

    cph:phones:expandVolume

    Obtaining information about the cloud phones to be accessed

    POST /v1/{project_id}/cloud-phone/phones/batch-connection

    cph:phones:getConnections

    Asynchronously running the ADB shell commands

    POST /v1/{project_id}/cloud-phone/phones/commands

    cph:phones:execCommands

    Synchronously running the ADB shell commands

    POST /v1/{project_id}/cloud-phone/phones/sync-commands

    cph:phones:execSyncCommands

    Querying the execution status of a task

    GET /v1/{project_id}/cloud-phone/jobs/{job_id}

    cph:jobs:get

    ×

    Querying the execution statuses of all tasks

    GET /v1/{project_id}/cloud-phone/jobs

    cph:jobs:list

    ×

    Batch adding tags

    POST /v1/{project_id}/{resource_type}/{resource_id}/tags/action

    cph:resource:tagResource

    Batch deleting tags

    POST /v1/{project_id}/{resource_type}/{resource_id}/tags/action

    cph:resource:unTagResource

    Querying cloud phone servers by tag

    POST /v1/{project_id}/{resource_type}/resource_instances/action

    cph:resource:listResourcesByTag

    Querying tags of a cloud phone server

    GET /v1/{project_id}/{resource_type}/{resource_id}/tags

    cph:resource:listTagsForResource

    Querying cloud phone server tags in a specified project

    GET /v1/{project_id}/{resource_type}/tags

    cph:resource:listTags

    Querying cloud phone images

    GET /v1/{project_id}/cloud-phone/images

    cph:images:list

    ×

    Deleting a cloud phone image

    DELETE /v1/{project_id}/cloud-phone/images/{image_id}

    cph:images:delete

    ×

    Sharing a cloud phone image

    POST /v1/{project_id}/cloud-phone/images/{image_id}/members

    cph:images:addMembers

    ×

    Querying users with whom you shared a cloud phone image

    GET /v1/{project_id}/cloud-phone/images/{image_id}/members

    cph:images:listMembers

    ×

    Stopping sharing of a cloud phone image

    DELETE /v1/{project_id}/cloud-phone/images/{image_id}/members/{member_id}

    cph:images:deleteMembers

    ×

    Querying AZs

    GET /v1/{project_id}/cloud-phone/availability-zones

    cph:system:listServerTypesSoldOutStatus

    ×

    Querying subnets

    GET /v1/{project_id}/cloud-phone/subnets

    cph:system:listSubnets

    ×

    Querying VPC peering connections

    GET /v1/{project_id}/cloud-phone/peering-routes

    cph:system:listPeerings

    ×

    Deleting a VPC peering connection

    DELETE /v1/{project_id}/cloud-phone/peering-routes

    cph:system:deletePeerings

    ×

    Adding a VPC peering connection

    POST /v1/{project_id}/cloud-phone/peering-routes

    cph:system:createPeerings

    ×

    Exporting details of cloud phones

    GET /v1/{project_id}/cloud-phone/phones/phone-export

    cph:phones:exportDetails

    Creating agencies

    POST /v1/{project_id}/agencies

    cph:system:createAgencies

    ×

    Checking an agency

    GET /v1/{project_id}/agencies

    cph:system:checkAgencies

    ×

We use cookies to improve our site and your experience. By continuing to browse our site you accept our cookie policy. Find out more

Feedback

Feedback

Feedback

0/500

Selected Content

Submit selected content with the feedback