华为云用户手册

  • 响应参数 状态码: 200 表7 响应Body参数 参数 参数类型 描述 firewall UpdateFirewallRuleResp object 更新网络ACL返回体,当更新操作为delete时,返回体中的policy策略中不再包含任何firewall_rule,只包含策略ID。 表8 UpdateFirewallRuleResp 参数 参数类型 描述 id String 网络ACL ID status String 网络ACL状态。 枚举值: INACTIVE egress_firewall_policy FirewallPolicy object 出方向网络ACL策略返回体,当该返回体有值时,则ingress_firewall_policy为{} ingress_firewall_policy FirewallPolicy object 入方向网络ACL策略返回体,当该返回体有值时,则egress_firewall_policy为{} 表9 FirewallPolicy 参数 参数类型 描述 id String 网络ACL策略ID。 name String 网络ACL策略名称。 最小长度:0 最大长度:64 firewall_rules Array of FirewallRule objects 网络ACL规则列表对象。 insert_after String ACL规则ID,表示在此ACL规则之后添加ACL规则 insert_before String ACL规则ID,表示在此ACL规则之前添加ACL规则 表10 FirewallRule 参数 参数类型 描述 action String 策略是否允许 取值范围:allow,deny,reject 枚举值: allow deny reject description String 网络ACL规则描述。 最小长度:0 最大长度:64 destination_ip_address String 目的地IP地址,IPv4的CIDR格式 destination_port String 目的地端口范围 取值范围:整数,比如80,或者以"-"隔开的范围,比如80-90 enabled Boolean 网络ACL规则使能开关。 取值范围:true,false 缺省值:true id String 网络ACL规则ID。 进行更新规则时,如果operate_type为add,则该值为空。 ip_version Integer IP协议版本 取值范围:4 name String 网络ACL规则名称。 最小长度:0 最大长度:64 operate_type String 网络ACL规则操作状态,作为请求时取值为"add"/"modify"/"delete",作为返回值时为"normal"。 当请求更新规则时,本参数值为delete时,除id之外,本请求体其他参数均可为空。 枚举值: add modify delete protocol String IP协议,为any时代表所有协议 取值范围:icmp,tcp,udp,any 枚举值: icmp tcp udp any source_ip_address String 源IP地址,IPv4的CIDR格式 source_port String 源地端口范围 取值范围:整数,比如80,或者以"-"隔开的范围,比如80-90
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。 通过调用 IAM 服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 表3 请求Body参数 参数 是否必选 参数类型 描述 firewall 否 UpdateFirewallRuleOption object 防火墙 表4 UpdateFirewallRuleOption 参数 是否必选 参数类型 描述 egress_firewall_policy 是 FirewallPolicy object 出方向防火墙策略,不能与ingress_firewall_policy同时存在 ingress_firewall_policy 是 FirewallPolicy object 入方向防火墙策略,不能与egress_firewall_policy同时存在 表5 FirewallPolicy 参数 是否必选 参数类型 描述 id 是 String 网络ACL策略ID。 name 否 String 网络ACL策略名称。 最小长度:0 最大长度:64 firewall_rules 是 Array of FirewallRule objects 网络ACL规则列表对象。 insert_after 否 String ACL规则ID,表示在此ACL规则之后添加ACL规则 insert_before 否 String ACL规则ID,表示在此ACL规则之前添加ACL规则 表6 FirewallRule 参数 是否必选 参数类型 描述 action 是 String 策略是否允许 取值范围:allow,deny,reject 枚举值: allow deny reject description 否 String 网络ACL规则描述。 最小长度:0 最大长度:64 destination_ip_address 是 String 目的地IP地址,IPv4的CIDR格式 destination_port 是 String 目的地端口范围 取值范围:整数,比如80,或者以"-"隔开的范围,比如80-90 enabled 是 Boolean 网络ACL规则使能开关。 取值范围:true,false 缺省值:true id 是 String 网络ACL规则ID。 进行更新规则时,如果operate_type为add,则该值为空。 ip_version 是 Integer IP协议版本 取值范围:4 name 是 String 网络ACL规则名称。 最小长度:0 最大长度:64 operate_type 是 String 网络ACL规则操作状态,作为请求时取值为"add"/"modify"/"delete",作为返回值时为"normal"。 当请求更新规则时,本参数值为delete时,除id之外,本请求体其他参数均可为空。 枚举值: add modify delete protocol 是 String IP协议,为any时代表所有协议 取值范围:icmp,tcp,udp,any 枚举值: icmp tcp udp any source_ip_address 是 String 源IP地址,IPv4的CIDR格式 source_port 是 String 源地端口范围 取值范围:整数,比如80,或者以"-"隔开的范围,比如80-90
  • 操作步骤 确定待创建边缘业务的区域。 查询边缘站点列表。 接口相关信息 URI格式:GET /v1/sites 详情请参见查询边缘站点列表。 请求示例 GET https://{endpoint}/v1/sites {endpoint}信息请从地区和终端节点获取。 响应示例 { "count": 1, "sites": [ { "id": "4789fe21-3c90-11eb-8801-fa165cf67eaf", "name": "dongguan-cdn-tri-lan", "city": "dongguan", "i18n_city": "东莞市", "province": "guangdong", "i18n_province": "广东", "area": "south", "i18n_area": "华南地区", "country": "china", "i18n_country": "中国", "status": "Normal", "city_short_name": "DG", "pools": [ { "id": "630c665d-3c92-11eb-86c6-fa165eb5c534", "site_id": "4789fe21-3c90-11eb-8801-fa165cf67eaf", "display_name": "东莞移动", "operator": { "id": "3", "name": "chinamobile", "i18n_name": "中国移动", "sa": "CMCC" }, "pool_id": "5_900y_mobile", "ip_version": "4" }, { "id": "613c730a-3c94-11eb-ab1c-fa165c13ae1a", "site_id": "4789fe21-3c90-11eb-8801-fa165cf67eaf", "display_name": "东莞电信", "operator": { "id": "1", "name": "chinatelecom", "i18n_name": "中国电信", "sa": "CTCC" }, "pool_id": "5_900y_telcom", "ip_version": "4" }, { "id": "27d87b7f-3c95-11eb-8801-fa165cf67eaf", "site_id": "4789fe21-3c90-11eb-8801-fa165cf67eaf", "display_name": "东莞联通", "operator": { "id": "2", "name": "chinaunicom", "i18n_name": "中国联通", "sa": "CUCC" }, "pool_id": "5_900y_union", "ip_version": "4" } ] } ]} 根据实际需要选择站点、城市、省份或大区信息,并记录相关信息。 确定待创建边缘业务的规格。 查询边缘实例规格列表。 接口相关信息 URI格式:GET /v1/cloudservers/flavors 详情请参见查询边缘实例规格列表。 请求示例 GET https://{endpoint}/v1/cloudservers/flavors {endpoint}信息请从地区和终端节点获取。 响应示例 { "count": 1, "flavors": [ { "id": "c6.large.2", "name": "c6.large.2", "vcpus": "2", "ram": 4096, "disk": "0", "links": [ { "rel": "self", "href": "https://compute-ext.region.cn-north-900.myhuaweicloud.com/v1.0/08fab6922f8010b82fe6c004b5b26d04/flavors/c6.large.2", "type": "" }, { "rel": "bookmark", "href": "https://compute-ext.region.cn-north-900.myhuaweicloud.com/08fab6922f8010b82fe6c004b5b26d04/flavors/c6.large.2", "type": "" } ], "os_extra_specs": { "ecs:performancetype": "computingv3", "resource_type": "IOoptimizedC6_HV602", "ecs:generation": "c6", "ecs:virtualization_env_types": "CloudCompute", "pci_passthrough:enable_gpu": "", "pci_passthrough:gpu_specs": "", "pci_passthrough:alias": "", "info:cpu:name": "Intel Cascade Lake 3.0GHz", "cond:operation:status": "abandon", "cond:compute": "autorecovery", "cond:image": "__support_kvm=true&__support_kvm_hi1822_hiovs=true", "cond:network": "", "quota:vif_max_num": "2", "quota:physics_max_rate": "44000", "quota:vif_multiqueue_num": "2", "quota:min_rate": "1200", "quota:max_rate": "4000", "quota:max_pps": "400000", "hw:cpu_sockets": "1", "hw:numa_nodes": "1", "hw:cpu_threads": "2", "hw:mem_page_size": "1048576", "quota:conn_limit_total": "2000000", "hw:cpu_cores": "1", "cond:spot_block:operation:az": "", "cond:spot_block:operation:longest_duration_hours": "", "cond:spot_block:operation:longest_duration_count": "", "cond:spot_block:operation:interrupt_policy": "", "cond:spot:operation:az": "", "cond:spot:operation:status": "" }, "swap": "", "OS-FLV-EXT-DATA:ephemeral": 0, "OS-FLV-DISABLED:disabled": false, "rxtx_factor": 1, "rxtx_quota": "", "rxtx_cap": "", "os-flavor-access:is_public": true } ]} 根据实际需要选择规格,并记录规格的ID。 确定待创建边缘业务的镜像。 查询边缘镜像列表。 接口相关信息 URI格式:GET /v1/images 详情请参见查询边缘镜像列表。 请求示例 GET https://{endpoint}/v1/images {endpoint}信息请从地区和终端节点获取。 响应示例 { "images": [ { "id": "b76b5e98-b30b-11ea-a45e-fa165cec2c7a", "name": "EulerOS 2.2 64bit", "status": "active", "disk_format": "zvhd2", "min_disk": 40, "min_ram": 1024, "owner": "0756fdcb2f00261d0fb6c0049e7e7fa0", "protected": true, "visibility": "public", "created_at": "2020-06-20T15:35:49Z", "updated_at": "2020-06-20T15:37:09Z", "self": "/v1/images/b76b5e98-b30b-11ea-a45e-fa165cec2c7a", "deleted": false, "virtual_env_type": "FusionCompute", "deleted_at": "", "related_job_id": "", "__imagetype": "gold", "__platform": "EulerOS", "__os_type": "Linux", "__os_version": "EulerOS 2.2 64bit", "__isregistered": true, "__support_kvm": "true", "__support_kvm_hi1822_hiovs": "true" } ], "total": 1} 根据需要选择镜像,并记录镜像ID。 确定边缘业务的网络信息。 查询虚拟私有云列表。 接口相关信息 URI格式:GET /v1/vpcs 详情请参见查询虚拟私有云列表。 请求示例 GET https://{endpoint}/v1/vpcs {endpoint}信息请从地区和终端节点获取。 响应示例 { "vpcs": [ { "id": "2c7756f2-6875-11eb-ae51-fa165c365e51", "name": "ienw-lzd", "cidr": "172.16.0.0/16", "mode": "SYSTEM", "subnet_num": 4 } ], "count": 1} 根据需要选择镜像,并记录镜像ID。 确定边缘业务的安全组信息。 查询安全组列表 接口相关信息 URI格式:GET /v1/security-groups 详情请参见查询安全组列表。 请求示例 GET https://{endpoint}/v1/security-groups {endpoint}信息请从地区和终端节点获取。 响应示例 { "security_groups": [ { "id": "153133f5-2b16-11eb-a594-fa16408859a1", "name": "stock_sg_changsha568", "description": "cloudtest", "security_group_rules": [ { "id": "1fb600fb-2c76-11eb-80d1-fa16406a65c4", "description": "", "security_group_id": "153133f5-2b16-11eb-a594-fa16408859a1", "direction": "ingress", "ethertype": "IPv4", "protocol": "", "port_range_min": "", "port_range_max": "", "remote_ip_prefix": "0.0.0.0/0", "remote_group_id": "" } ] } ], "count": 1} 确定边缘业务的密钥信息。 如需设置为密码登录方式,请直接跳转至7。 查询密钥列表。 接口相关信息 URI格式:GET /v1/os-keypairs 详情请参见查询密钥对列表。 请求示例 GET https://{endpoint}/v1/os-keypairs {endpoint}信息请从地区和终端节点获取。 响应示例 [ { "name": "KeyPair-n1f4", "public_key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDDlsS+/EhexDDej1uoWHrNolqWcfXH4yINpPuoKJPnvBFl+9Uu6sYVUZzRQ8yIOXHsn0iIDPua8i6pMeG3RpNvWWbfdHL6TCM3yfgTo3UN4pEGgI67k78TJ7T6yX+u7R+sxMDt55o75kaDy1j/W/RC30xQ1MiwBdHpHCIDpuj07R4Zhcblh9PHRrIk40+jldRNCpM0eVaUsIVKKP0LUydZeBI9HdsUNFNeDWykEPcWiayQBse6Uj8unwGTOKQX+Zwfhfr9AO3eoZmWHQmep17u0fAWduxImfZIkaIeVlVXEA31GrREy2uehzG5UhQR1xHUVXIdGty1C6n8+KN0M6dr Generated-by-Nova\n", "fingerprint": "SHA256:G2+HAgNyIi2maUvkuLne9BM/93TZ2eGoNKtP8MxPF74", "user_id": "dc36c78ad96f42e394f3221bf7c17166" }] 根据需要选择密钥,并记录密钥名称。 设置密码登录方式。 使用非cloud-init镜像创建部署计划时,Windows和Linux系统都使用“admin_pass”参数实现密码注入。 使用cloud-init镜像创建部署计划时: 对于Linux系统,只能使用“user_data”进行密码注入,“user_data”字符串长度小于65535,且必须是base64加密的; 对于Windows系统,只能通过“admin_pass”进行密码注入。 创建密码方式登录鉴权的部署计划。 使用非cloud-init镜像创建部署计划(使用admin_pass实现密码注入)。 接口相关信息 URI格式:POST /v1/deployments 接口约束及请求参数说明详情,请参见创建部署计划。 请求示例 POST https://{endpoint}/v1/deployments {endpoint}信息请从地区和终端节点获取。 { "edgecloud": { "stack": { "name": "stack-bm3m", "resources": [ { "name": "res-uoio", "image_ref": "00000000-0000-0000-0000-000000000008", "flavor_ref": "c6.large.2", "net_config": { "vpc_id": "c4b78eca-8ce4-4e7e-8aba-f7da2c7b1816", "nic_num": 1 }, "count": 1, "root_volume": { "volume_type": "SAS", "size": 40 }, "security_groups": [ { "id": "18289138-5b8b-11eb-bcf8-fa16406a65c4" } ],"admin_pass": "NOVAGLANCEI@123" } ] }, "coverage": { "coverage_level": "city", "coverage_policy": "centralize", "coverage_sites": [ { "site": "xi'an", "demands": [ { "demand_count": 1 } ] } ] }, "name": "iec-m83t" }} 响应示例 { "id": "0359ca05-7790-46e8-9a4a-8a8fa118b14f", "locations": [ { "site_id": "74a75ed3-cfb9-11ea-a0c3-fa1640495574", "area": "north", "province": "shaanxi", "city": "xi'an", "operator": "bgp", "pool_id": "5_bgp_edgecloud-site4_1", "stack_count": 1, "city_short_name": "" } ]} 使用cloud-init镜像(以Linux为例)创建部署计划(使用user_data进行密码注入)。 接口相关信息 URI格式:POST /v1/deployments 接口约束及请求参数说明详情,请参见创建部署计划。 请求示例 POST https://{endpoint}/v1/deployments {endpoint}信息请从地区和终端节点获取。 { "edgecloud": { "stack": { "name": "stack-bm3m", "resources": [ { "name": "res-uoio", "image_ref": "00000000-0000-0000-0000-000000000008", "edge_scenes": null, "flavor_ref": "c6.large.2", "net_config": { "vpc_id": "c4b78eca-8ce4-4e7e-8aba-f7da2c7b1816", "nic_num": 1 }, "count": 1, "root_volume": { "volume_type": "SAS", "size": 40 }, "security_groups": [ { "id": "18289138-5b8b-11eb-bcf8-fa16406a65c4" } ], "user_data": "IyEvYmluL2Jhc2gKZWNobyAncm9vdDokNiQ3ODlCMkYkbFhXWDhmbE5qakxWamRGVDM1MEdYVm1NMURGQW1tQTBMRHA0M3dLSUxKcERkU3l6VUdqMC9qMTdXYzRYblQ4SVNQS2UxMVlIcWdCa1dRNUFxeUc0djEnIHwgY2hwYXNzd2QgLWU7", "bandwidth": { "sharetype": "WHOLE" } } ] }, "coverage": { "coverage_level": "city", "coverage_policy": "centralize", "coverage_sites": [ { "site": "xi'an", "demands": [ { "demand_count": 1, "pool_id": "5_bgp_edgecloud-site4_1" } ] } ] }, "name": "iec-m1183t" }} 响应示例 { "id": "e127b7f4-9969-4c2a-bd3d-b813d9ff6573", "locations": [ { "site_id": "74a75ed3-cfb9-11ea-a0c3-fa1640495574", "area": "north", "province": "shaanxi", "city": "xi'an", "operator": "bgp", "pool_id": "5_bgp_edgecloud-site4_1", "stack_count": 1, "city_short_name": "" } ]}
  • 涉及接口 创建部署计划时,需要进行规格查询、边缘站点查询、虚拟私有云查询等操作,涉及的接口如下: 查询边缘站点列表:确定待创建边缘业务的区域。 查询边缘实例规格列表:确定待创建边缘业务的规格。 查询边缘镜像列表:确定待创建边缘业务使用的镜像。 查询虚拟私有云列表:确定边缘业务的网络信息。 查询安全组列表:确定边缘业务的安全组信息。 查询密钥对列表:确定边缘业务的密钥信息。 创建部署计划:创建一个部署计划。
  • 状态码 返回值 描述 200 OK 请求正常。 301 Moved Permanently 永久移动,请求的资源已被永久的移动到新的URI,返回信息会包括新的URI。 302 Found 资源被临时移动。 304 Not Modified 所请求的资源未修改,服务器返回此状态码时,不会返回任何资源。 400 Bad Request 服务器未能处理请求。 401 Unauthorized 被请求的页面需要用户名和密码。 403 Forbidden 对被请求页面的访问被禁止。 404 Not Found 服务器无法找到被请求的页面。 405 Method Not Allowed 请求中指定的方法不被允许。 406 Not Acceptable 服务器生成的响应无法被客户端所接受。 407 Proxy Authentication Required 用户必须首先使用代理服务器进行验证,这样请求才会被处理。 408 Request Timeout 请求超出了服务器的等待时间。 409 Conflict 由于冲突,请求无法被完成。 416 Requested range not satisfiable 客户端请求的范围无效。 500 Internal Server Error 请求未完成。服务异常。 501 Not Implemented 请求未完成。服务器不支持所请求的功能。 502 Bad Gateway 请求未完成。服务器从上游服务器收到一个无效的响应。 503 Service Unavailable 请求未完成。系统暂时异常。 504 Gateway Timeout 网关超时。 父主题: 附录
  • 操作步骤 执行部署计划。 接口相关信息 URI格式:POST /v1/deployments/{deployment_id}/deploy 详情请参见执行部署计划。 请求示例 POST https://{endpoint}/v1/deployments/7e78be27-b5c3-44c3-8129-11111111111/deploy {endpoint}信息请从地区和终端节点获取。 响应示例 { "id": "8b809a1a-d478-4c19-86e0-d77bd43be5c9", "name": "iec-m83t", "deployment_id": "7e78be27-b5c3-44c3-8129-11111111111", "status": "creating", "job_id": "1258b5a9586349f2bc2ddec873ebc66b"} 查询边缘业务详情 接口相关信息 URI格式:GET /v1/edgeclouds/{edgecloud_id} 详情请参见查询边缘业务详情。 请求示例 GET https://{endpoint}/v1/edgeclouds/8b809a1a-d478-4c19-86e0-d77bd43be5c9 {endpoint}信息请从地区和终端节点获取。 响应示例 { "id": "8b809a1a-d478-4c19-86e0-d77bd43be5c9", "name": "iec-m83t", "stacks": [ { "id": "51f14af0-9ca7-4520-ab00-d90a46bf8eba", "name": "stack-bm3m-xi_a-001", "resources": [ { "name": "res-uoio", "image_ref": "00000000-0000-0000-0000-000000000008", "flavor_ref": "c6.large.2", "admin_pass": "******", "net_config": { "vpc_id": "c4b78eca-8ce4-4e7e-8aba-f7da2c7b1816", "subnets": null, "nic_num": 1, "associate_mode": "" }, "bandwidth": { "size": 0, "sharetype": "WHOLE" }, "count": 1, "root_volume": { "volume_type": "SAS", "size": 40 }, "security_groups": [ { "id": "18289138-5b8b-11eb-bcf8-fa16406a65c4" } ] } ] } ], "coverage": { "coverage_policy": "centralize", "coverage_level": "city", "coverage_sites": [ { "site": "xi'an", "i18n_site": "西安市", "demands": [ { "demand_count": 1 } ] } ] }, "success_num": 1, "failed_num": 0, "status": "inService", "edge_regions": 1, "create_at": "2021-02-27T09:56:21.460947Z", "update_at": "2021-02-27T09:57:35.289858Z"}
  • 概述 为方便企业用户的认证登录, OneAccess 平台支持配置OIDC协议作为认证源,用户可以通过OIDC协议认证登录各应用系统,为企业用户带来更简易便捷的登录方式和更好的用户体验。 OIDC是OpenID Connect的简称,是一个基于OAuth 2.0协议的身份认证标准协议。关于OIDC的详细描述请参见欢迎使用OpenID Connect。 本文主要介绍OneAccess以OIDC协议集成第三方认证源的方法。以Okta为例。
  • 在薪人薪事平台中开通应用 在薪人薪事平台中开通应用,确保薪人薪事中的数据可同步至OneAccess。 登录薪人薪事平台。 联系平台工作人员注册应用,待应用开通后,获取应用信息appKey和appSecret,该参数在设置导入配置中使用。 当身份源数据变更后,需同步至OneAccess时,需联系平台工作人员配置回调地址,该地址指OneAccess添加薪人薪事身份源后自动生成的回调地址,可参考设置导入配置。
  • 入门指引 OneAccess最基础的入门操作包括添加组织机构、添加用户、添加应用,通过这三个操作就能开始进行集中式身份管理、身份认证和应用管理。 图1为OneAccess基本的入门使用流程,如需了解更多操作,请查看用户指南对应章节。本文旨在帮助您对OneAccess的入门操作有初步的认识,完成这些操作后,管理员可以在OneAccess管理门户对用户和应用进行详细配置和管理,用户可以在OneAccess用户门户单点登录访问已授权可信应用。 图1 入门使用流程 在使用 应用身份管理 服务前,管理员需要参考购买实例购买实例。 管理员购买OneAccess实例后,参考管理员登录管理门户登录至OneAccess管理门户。 组织用于对企业人员进行管理,一个公司或部门可对应一个组织,将其拥有的人员集中在该组织下。顶层组织作为根节点,可以在其下添加多个子组织与用户,同时,在子组织下可继续添加多层组织与用户。参考管理员添加组织添加组织。 参考管理员添加用户管理员在OneAccess管理门户添加用户。 OneAccess平台提供了1000+预集成应用,同时提供自建应用功能,参考管理员添加应用并授权添加应用并授权。 管理员添加组织、用户、应用,并为所添加用户授权后,可以参考用户登录用户门户并进入应用登录OneAccess用户门户并直接进入应用。
  • 请求参数 表1 请求Header参数 参数 是否必选 参数类型 描述 X-operating-sys-version 是 String 调用方操作系统版本,例如:Android 10。 X-device-fingerprint 是 String 调用方设备指纹,例如:156aysdna213sc50。 X-device-ip 否 String 调用方IP,例如:10.10.10.1。 X-agent 是 String 用户Agent信息,例如:Mozilla/5.0 (Linux; Android 10; Redmi K30 Build/QKQ1.190825.002; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/80.0.3987.99 Mobile Safari/537.36。 X-L 否 String 用于国际化语言设置,例如:zh。 X-client-id 是 String 应用标识,注册应用后分配的ClientId。 X-tenant-id 否 String 租户id,ISV应用调用则为必填,需要将{domain_name}换成ISV通用域名{common_domain},请求Header参数中需要指定对应租户的tenant_id,并将X-client-id换成ISV应用模板的client_id。
  • 请求示例 获取服务器时间。请求头配置调用方系统为Android 10,调用方设备指纹为156aysdna213sac,调用方ip为10.10.10.1,应用标识为注册应用时分配的ClientId。 GET https://{domain_name}/api/v2/sdk/server-dateX-operating-sys-version: Android 10X-device-fingerprint: 156aysdna213sacX-device-ip: 10.10.10.1X-agent: Mozilla/5.0 (Linux; Android 10; Redmi K30 Build/QKQ1.190825.002; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/80.0.3987.99 Mobile Safari/537.36X-L: zhX-client-id: DRrYIqauawN0I8myTMoDTPys6ezGZxnmX-tenant-id: 08f770f51f80d2f40f38c00cb199fd21
  • 请求参数 表1 请求Header参数 参数 是否必选 参数类型 描述 Content-Type 是 String 该字段内容填为“application/json;charset=utf8”。 X-operating-sys-version 是 String 调用方操作系统版本,例如:Android 10。 X-device-fingerprint 是 String 调用方设备指纹,例如:156aysdna213sc50。 X-device-ip 否 String 调用方IP,例如:10.10.10.1。 X-agent 是 String 用户Agent信息,例如:Mozilla/5.0 (Linux; Android 10; Redmi K30 Build/QKQ1.190825.002; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/80.0.3987.99 Mobile Safari/537.36。 X-L 否 String 用于国际化语言设置,例如:zh。 X-client-id 是 String 应用标识,注册应用后分配的ClientId。 X-signature 是 String 加密数据为session_token=xxx×tamp=xxx&nonce=xxx,其中:session_token为会话凭证,timestamp表示当前时间戳,nonce表示当前时间戳的16进制,加密方式为RSA公钥加密。当前时间戳可调用获取服务器时间接口获取,加密公钥可调用获取公钥接口获取。 X-tenant-id 否 String 租户id,ISV应用调用则为必填,需要将{domain_name}换成ISV通用域名{common_domain},请求Header参数中需要指定对应租户的tenant_id,并将X-client-id换成ISV应用模板的client_id。 表2 请求Body参数 参数 是否必选 参数类型 描述 id 是 String 系统自动生成的id,可通过查询用户绑定的社交帐号列表接口获取。
  • 请求示例 通过绑定社交账号时自动生成的id解绑社交帐号。 POST https://{domain_name}/api/v2/sdk/social/unbind-accountX-operating-sys-version: Android 10X-device-fingerprint: 156aysdna213sacX-device-ip: 10.10.10.1X-agent: Mozilla/5.0 (Linux; Android 10; Redmi K30 Build/QKQ1.190825.002; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/80.0.3987.99 Mobile Safari/537.36X-L: zhX-client-id: DRrYIqauawN0I8myTMoDTPys6ezGZxnmX-signature:D0JeOUuVqU8Ixvl0xrmewQRk4AuGZrtk1RfBxueNKUrNPpgSbXrYnzw...X-tenant-id: 08f770f51f80d2f40f38c00cb199fd21{ "id": "001GKgGa15HGZA0aOxIa1bFktp1GKgG4"}
  • 响应参数 状态码: 200 表3 响应Body参数 参数 参数类型 描述 user_id String 用户id。 org_id String 用户所属组织。 user_name String 用户名。 name String 姓名。 mobile String 手机号。 email String 邮箱。 pwd_must_modify Boolean 首次登录是否强制修改密码。 pwd_change_at String 密码修改时间 created_at String 创建时间。 updated_at String 最后一次修改时间。 disabled Boolean 是否禁用。 grade Integer 可信等级。 locked String 是否锁定。 extension Object 自定义扩展属性。 user_org_relation_list Array of UserOrgRelationListResult objects 用户组织关系集合。 表4 UserOrgRelationListResult 参数 参数类型 描述 org_id String 组织id。 relation_type String 关系类型。 状态码: 400 表5 响应Body参数 参数 参数类型 描述 error_code String 错误编号。 error_msg String 错误详情。
  • 响应示例 状态码: 200 请求成功。 { "user_id" : "20220413165737132-3BA0-91FCA2CB7", "org_id" : "20220117125622909-9346-35755733F", "user_name" : "zhangsan", "name" : "zhangsan", "mobile" : "12345678901", "email" : "zhangsan@example.com", "pwd_must_modify" : true, "pwd_change_at" : "2022-04-14 10:14:01.988", "created_at" : "2022-04-13 16:57:36.532", "updated_at" : "2022-04-14 10:14:01.979", "disabled" : false, "grade" : 1, "locked" : false, "extension" : { }, "user_org_relation_list" : [ { "org_id" : "20220117125622909-9346-35755733F", "relation_type" : 1 }, { "org_id" : "20220415103506608-AF59-5CC9081B9", "relation_type" : 0 } ]}
  • 响应参数 状态码: 200 表3 响应Body参数 参数 参数类型 描述 code String 错误码。 message String 错误描述。 data data object 用户信息。 表4 data 参数 参数类型 描述 user UserInfoDataResult object 用户信息。 表5 UserInfoDataResult 参数 参数类型 描述 userName String 用户名。 id String 用户id。 name String 姓名。 mobile String 手机号。 email String 邮箱。 状态码: 400 表6 响应Body参数 参数 参数类型 描述 error_code String 错误码。 error_msg String 错误详情。
  • 响应示例 状态码: 200 请求成功。 { "code" : "0", "message" : "success", "data" : { "user" : { "name" : "20220330162435", "mobile" : "12345678901", "id" : "20220330162436475-7570-D943B4FF3", "userName" : "20220330162435", "email" : "20220330162435@example.com" } }}
  • 请求示例 通过session_token换取的sso_ticket查询用户信息,sso_ticket值为ssoTicket-r5TCBLU14oSGxCMVdxeB5HA1uJiV。 POST https://{domain_name}/api/v2/tenant/sso/sso-ticket/verifyAuthorization: Bearer 334963fc-1e4a-473b-9096-52a929140...X-tenant-id: 08f770f51f80d2f40f38c00cb199fd21{ "sso_ticket": "ssoTicket-r5TCBLU14oSGxCMVdxeB5HA1uJiV", "operating_sys_version": "Android 10", "device_ip": "10.10.10.1", "device_fingerprint": "156aysdna213sac", "agent": "Mozilla/5.0 (Linux; Android 10; Redmi K30 Build/QKQ1.190825.002; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/80.0.3987.99 Mobile Safari/537.36"}
  • 请求参数 表1 请求Header参数 参数 是否必选 参数类型 描述 Content-Type 是 String 该字段内容填为“application/json;charset=utf8”。 Authorization 是 String 认证凭据,值:Bearer {access_token},access_token通过“获取访问凭据”接口获取。 X-tenant-id 否 String 租户外部ID,如果为ISV方调用则为必填,需要将{domain_name}换成ISV通用域名{common_domain},请求Header参数中需要指定对应租户的tenant_id。 表2 请求Body参数 参数 是否必选 参数类型 描述 sso_ticket 是 String 一次性访问票据,通过用户登录后的session_token获取一次性访问票据sso_ticket,通过sso_ticket可以获取用户信息。 operating_sys_version 是 String 调用方操作系统版本,例如:Android 10。 device_ip 是 String 调用方设备ip,例如:10.10.10.1。 device_fingerprint 是 String 调用方设备指纹,同一个用户调用接口时该参数的值需保持统一,例如:156aysdna213sc50。 agent 否 String 调用方User-Agent信息,例如:Mozilla/5.0 (Linux; Android 10; Redmi K30 Build/QKQ1.190825.002; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/80.0.3987.99 Mobile Safari/537.36。
  • 请求参数 表1 请求Header参数 参数 是否必选 参数类型 描述 Content-Type 是 String 该字段内容填为“application/json;charset=utf8”。 Authorization 是 String 认证凭据,值:Bearer {access_token},access_token通过“获取访问凭据”接口获取。 表2 请求Body参数 参数 是否必选 参数类型 描述 user_name 是 String 用户名称。
  • 响应参数 状态码: 200 表3 响应Body参数 参数 参数类型 描述 user_id String 用户id。 org_id String 用户所属组织。 user_name String 用户名。 name String 姓名。 mobile String 手机号。 email String 邮箱。 pwd_must_modify Boolean 首次登录是否强制修改密码。 pwd_change_at String 密码修改时间 created_at String 创建时间。 updated_at String 最后一次修改时间。 disabled Boolean 是否禁用。 grade Integer 可信等级。 locked String 是否锁定。 extension Object 自定义扩展属性。 user_org_relation_list Array of UserOrgRelationListResult objects 用户组织关系集合。 表4 UserOrgRelationListResult 参数 参数类型 描述 org_id String 组织id。 relation_type String 关系类型。 状态码: 400 表5 响应Body参数 参数 参数类型 描述 error_code String 错误编号。 error_msg String 错误详情。
  • 响应示例 状态码: 200 请求成功。 { "user_id" : "20220413165737132-3BA0-91FCA2CB7", "org_id" : "20220117125622909-9346-35755733F", "user_name" : "zhangsan", "name" : "zhangsan", "mobile" : "12345678901", "email" : "zhangsan@example.com", "pwd_must_modify" : true, "pwd_change_at" : "2022-04-14 10:14:01.988", "created_at" : "2022-04-13 16:57:36.532", "updated_at" : "2022-04-14 10:14:01.979", "disabled" : false, "grade" : 1, "locked" : false, "extension" : { }, "user_org_relation_list" : [ { "org_id" : "20220117125622909-9346-35755733F", "relation_type" : 1 }, { "org_id" : "20220415103506608-AF59-5CC9081B9", "relation_type" : 0 } ]}
  • 响应参数 状态码: 200 表2 响应Body参数 参数 参数类型 描述 user_name String 用户名。 name String 姓名。 mobile String 手机号。 verify_code String 短信验证码。 email String 邮箱。 pwd String 密码。 head_img String 头像,填写url地址。 attr_gender String 性别。 枚举值: unknown:保密 male:男性 female:女性 attr_birthday String 生日,格式为yyyy-MM-dd。 attr_nick_name String 昵称。 first_name String 名字。 middle_name String 中间名。 last_name String 姓氏。 extension Object 自定义扩展属性。 状态码: 400 表3 响应Body参数 参数 参数类型 描述 error_code String 错误码。 error_msg String 错误详情。
  • 响应示例 状态码: 200 请求成功。 { "user_name": "zhangsan", "name": "张三", "head_img": "https://thirdwx.qlogo.cn/mmopen/vi_32/Q0j4TwGTfTIQ8QOTSn3y4cYHLlMC3sv6RCBmeMkxtOog47Zr3v2Afbqc2bmP0WibUIUskX39eJlJAEbAibXs", "email": "12345678901@example.com”, "mobile": "12345678901" "attr_gender":"male", "attr_birthday": "2022-02-17", "attr_nick_name": "张三", "first_name": "zhangsan", "middle_name": "zhangsan", "last_name": "zhangsan", "extension": { "age":"18" }}
  • 请求参数 表1 请求Header参数 参数 是否必选 参数类型 描述 X-operating-sys-version 是 String 调用方操作系统版本,例如:Android 10。 X-device-fingerprint 是 String 调用方设备指纹,例如:156aysdna213sc50。 X-device-ip 否 String 调用方IP,例如:10.10.10.1。 X-agent 是 String 用户Agent信息,例如:Mozilla/5.0 (Linux; Android 10; Redmi K30 Build/QKQ1.190825.002; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/80.0.3987.99 Mobile Safari/537.36。 X-L 否 String 用于国际化语言设置,例如:zh。 X-client-id 是 String 应用标识,注册应用后分配的ClientId。 X-signature 是 String 加密数据为session_token=xxx×tamp=xxx&nonce=xxx,其中:session_token为会话凭证,timestamp表示当前时间戳,nonce表示当前时间戳的16进制,加密方式为RSA公钥加密。当前时间戳可调用获取服务器时间接口获取,加密公钥可调用获取公钥接口获取。 X-tenant-id 否 String 租户id,ISV应用调用则为必填,需要将{domain_name}换成ISV通用域名{common_domain},请求Header参数中需要指定对应租户的tenant_id,并将X-client-id换成ISV应用模板的client_id。
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 Content-Type 是 String 该字段内容填为“application/json;charset=utf8”。 Authorization 是 String 认证凭据,值:Bearer {access_token},access_token通过“获取访问凭据”接口获取。 表3 请求Body参数 参数 是否必选 参数类型 描述 name 是 String 应用侧角色名称
  • 请求示例 根据应用id和机构id修改机构属性,名称为开发组,父机构id为20201027162527852-B712-D040F4...。 PUT https://{domain_name}/api/v2/tenant/applications/{application_id}/organizations/{org_id}Authorization: Bearer 334963fc-1e4a-473b-9096-52a929140...{ "name":"开发组", "parent_id":"20201027162527852-B712-D040F4..."}
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 Content-Type 是 String 该字段内容填为“application/json;charset=utf8”。 Authorization 是 String 认证凭据,值:Bearer {access_token},access_token通过“获取访问凭据”接口获取。 表3 请求Body参数 参数 是否必选 参数类型 描述 name 否 String 机构名称,为空时默认不修改,可输入中英文、数字、空格、中划线、下划线和&。 最大长度:100 parent_id 否 String 父机构id。
  • 请求参数 表1 请求Header参数 参数 是否必选 参数类型 描述 Content-Type 是 String 该字段内容填为“application/json;charset=utf8”。 X-operating-sys-version 是 String 调用方操作系统版本,例如:Android 10。 X-device-fingerprint 是 String 调用方设备指纹,例如:156aysdna213sc50。 X-device-ip 否 String 调用方IP,例如:10.10.10.1。 X-agent 是 String 用户Agent信息,例如:Mozilla/5.0 (Linux; Android 10; Redmi K30 Build/QKQ1.190825.002; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/80.0.3987.99 Mobile Safari/537.36。 X-L 否 String 用于国际化语言设置,例如:zh。 X-client-id 是 String 应用标识,注册应用后分配的ClientId。 X-signature 是 String 加密数据为session_token=xxx×tamp=xxx&nonce=xxx,其中:session_token为会话凭证,timestamp表示当前时间戳,nonce表示当前时间戳的16进制,加密方式为RSA公钥加密。当前时间戳可调用获取服务器时间接口获取,加密公钥可调用获取公钥接口获取。 X-tenant-id 否 String 租户id,ISV应用调用则为必填,需要将{domain_name}换成ISV通用域名{common_domain},请求Header参数中需要指定对应租户的tenant_id,并将X-client-id换成ISV应用模板的client_id。 表2 请求Body参数 参数 是否必选 参数类型 描述 mobile 是 String 修改后的新手机号。 verify_code 是 String 新手机号接收的短信验证码。
  • 请求示例 修改个人手机号。 POST https://{domain_name}/api/v2/sdk/profile/update-mobileX-operating-sys-version: Android 10X-device-fingerprint: 156aysdna213sacX-device-ip: 10.10.10.1X-agent: Mozilla/5.0 (Linux; Android 10; Redmi K30 Build/QKQ1.190825.002; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/80.0.3987.99 Mobile Safari/537.36X-L: zhX-client-id: DRrYIqauawN0I8myTMoDTPys6ezGZxnmX-signature:D0JeOUuVqU8Ixvl0xrmewQRk4AuGZrtk1RfBxueNKUrNPpgSbXrYnzw...X-tenant-id: 08f770f51f80d2f40f38c00cb199fd21{ "mobile": "12345678901", "verify_code": "123456"}
共100000条