活动

天翼云最新优惠活动,涵盖免费试用,产品折扣等,助您降本增效!
热门活动
  • 618智算钜惠季 爆款云主机2核4G限时秒杀,88元/年起!
  • 免费体验DeepSeek,上天翼云息壤 NEW 新老用户均可免费体验2500万Tokens,限时两周
  • 云上钜惠 HOT 爆款云主机全场特惠,更有万元锦鲤券等你来领!
  • 算力套餐 HOT 让算力触手可及
  • 天翼云脑AOne NEW 连接、保护、办公,All-in-One!
  • 中小企业应用上云专场 产品组合下单即享折上9折起,助力企业快速上云
  • 息壤高校钜惠活动 NEW 天翼云息壤杯高校AI大赛,数款产品享受线上订购超值特惠
  • 天翼云电脑专场 HOT 移动办公新选择,爆款4核8G畅享1年3.5折起,快来抢购!
  • 天翼云奖励推广计划 加入成为云推官,推荐新用户注册下单得现金奖励
免费活动
  • 免费试用中心 HOT 多款云产品免费试用,快来开启云上之旅
  • 天翼云用户体验官 NEW 您的洞察,重塑科技边界

智算服务

打造统一的产品能力,实现算网调度、训练推理、技术架构、资源管理一体化智算服务
智算云(DeepSeek专区)
科研助手
  • 算力商城
  • 应用商城
  • 开发机
  • 并行计算
算力互联调度平台
  • 应用市场
  • 算力市场
  • 算力调度推荐
一站式智算服务平台
  • 模型广场
  • 体验中心
  • 服务接入
智算一体机
  • 智算一体机
大模型
  • DeepSeek-R1-昇腾版(671B)
  • DeepSeek-R1-英伟达版(671B)
  • DeepSeek-V3-昇腾版(671B)
  • DeepSeek-R1-Distill-Llama-70B
  • DeepSeek-R1-Distill-Qwen-32B
  • Qwen2-72B-Instruct
  • StableDiffusion-V2.1
  • TeleChat-12B

应用商城

天翼云精选行业优秀合作伙伴及千余款商品,提供一站式云上应用服务
进入甄选商城进入云市场创新解决方案
办公协同
  • WPS云文档
  • 安全邮箱
  • EMM手机管家
  • 智能商业平台
财务管理
  • 工资条
  • 税务风控云
企业应用
  • 翼信息化运维服务
  • 翼视频云归档解决方案
工业能源
  • 智慧工厂_生产流程管理解决方案
  • 智慧工地
建站工具
  • SSL证书
  • 新域名服务
网络工具
  • 翼云加速
灾备迁移
  • 云管家2.0
  • 翼备份
资源管理
  • 全栈混合云敏捷版(软件)
  • 全栈混合云敏捷版(一体机)
行业应用
  • 翼电子教室
  • 翼智慧显示一体化解决方案

合作伙伴

天翼云携手合作伙伴,共创云上生态,合作共赢
天翼云生态合作中心
  • 天翼云生态合作中心
天翼云渠道合作伙伴
  • 天翼云代理渠道合作伙伴
天翼云服务合作伙伴
  • 天翼云集成商交付能力认证
天翼云应用合作伙伴
  • 天翼云云市场合作伙伴
  • 天翼云甄选商城合作伙伴
天翼云技术合作伙伴
  • 天翼云OpenAPI中心
  • 天翼云EasyCoding平台
天翼云培训认证
  • 天翼云学堂
  • 天翼云市场商学院
天翼云合作计划
  • 云汇计划
天翼云东升计划
  • 适配中心
  • 东升计划
  • 适配互认证

开发者

开发者相关功能入口汇聚
技术社区
  • 专栏文章
  • 互动问答
  • 技术视频
资源与工具
  • OpenAPI中心
开放能力
  • EasyCoding敏捷开发平台
培训与认证
  • 天翼云学堂
  • 天翼云认证
魔乐社区
  • 魔乐社区

支持与服务

为您提供全方位支持与服务,全流程技术保障,助您轻松上云,安全无忧
文档与工具
  • 文档中心
  • 新手上云
  • 自助服务
  • OpenAPI中心
定价
  • 价格计算器
  • 定价策略
基础服务
  • 售前咨询
  • 在线支持
  • 在线支持
  • 工单服务
  • 建议与反馈
  • 用户体验官
  • 服务保障
  • 客户公告
  • 会员中心
增值服务
  • 红心服务
  • 首保服务
  • 客户支持计划
  • 专家技术服务
  • 备案管家

了解天翼云

天翼云秉承央企使命,致力于成为数字经济主力军,投身科技强国伟大事业,为用户提供安全、普惠云服务
品牌介绍
  • 关于天翼云
  • 智算云
  • 天翼云4.0
  • 新闻资讯
  • 天翼云APP
基础设施
  • 全球基础设施
  • 信任中心
最佳实践
  • 精选案例
  • 超级探访
  • 云杂志
  • 分析师和白皮书
  • 天翼云·创新直播间
市场活动
  • 2025智能云生态大会
  • 2024智算云生态大会
  • 2023云生态大会
  • 2022云生态大会
  • 天翼云中国行
天翼云
  • 活动
  • 智算服务
  • 产品
  • 解决方案
  • 应用商城
  • 合作伙伴
  • 开发者
  • 支持与服务
  • 了解天翼云
      • 文档
      • 控制中心
      • 备案
      • 管理中心
      文档中心

      密钥管理

      密钥管理

        • 最新动态
        • 产品公告
        • 【产品公告】 关于天翼云密钥管理包周期版本上线的通知
        • 【产品公告】 关于天翼云密钥管理按需版本停止新购的通知
        • 【产品公告】天翼云密钥管理KMS产品旧版openapi下线
        • 产品简介
        • 产品定义
        • 产品优势
        • 功能特性
        • 相关术语解释
        • 应用场景
        • 产品规格
        • 与其他云服务关系
        • 计费说明
        • 计费概述
        • 计费项
        • 续订说明
        • 退订说明
        • 到期与欠费说明
        • 快速入门
        • 注册天翼云账号
        • 开通密钥管理服务
        • 快速接入服务
        • 用户指南
        • 概览
        • 密钥管理
        • 密钥管理概述
        • 创建密钥
        • 导入密钥材料
        • 查看密钥
        • 别名管理
        • 启用禁用密钥
        • 密钥版本管理
        • 删除密钥
        • 对称密钥运算
        • 对称加密概述
        • 在线加密
        • 信封加密
        • 非对称密钥运算
        • 非对称密钥概述
        • 签名验签
        • 非对称密钥加解密
        • 应用接入点
        • 应用接入点概述
        • 管理应用接入点
        • 证书管理
        • 证书管理概述
        • 创建证书
        • 导入密钥和证书
        • 禁用、吊销或删除证书
        • 云产品服务端加密
        • 云产品集成KMS加密概述
        • 支持KMS服务端加密的云产品
        • 权限管理
        • API参考
        • 调用前必知
        • 终端节点
        • 状态码
        • 如何调用API
        • 构造请求
        • 认证鉴权
        • Python调用示例
        • API
        • 密钥管理接口
        • 密钥生命周期管理
        • 创建用户主密钥
        • 启用密钥
        • 禁用密钥
        • 计划删除密钥
        • 取消计划删除密钥
        • 更新密钥描述
        • 查看密钥详情
        • 批量查询密钥信息
        • 密钥删除保护
        • 取消密钥删除保护
        • 别名管理
        • 创建别名
        • 更新别名
        • 删除别名
        • 列出账号在某地域下的所有别名
        • 列出与指定用户主密钥绑定的别名
        • 外部密钥导入
        • 获取导入主密钥材料参数
        • 导入主密钥材料
        • 删除主密钥材料
        • 密钥版本管理
        • 查看密钥版本
        • 列出主密钥的所有密钥版本
        • 更新轮转策略
        • 创建密钥版本
        • 密码运算
        • 在线加密
        • 产生数据密钥(信封加密)
        • 产生无明文返回值的数据密钥(信封加密)
        • 导出数据密钥
        • 产生并导出数据密钥
        • 对称密钥解密
        • 转加密
        • 产生数字签名
        • 验证数字签名
        • 非对称密钥加密
        • 非对称密钥解密
        • 获取非对称密钥公钥
        • 计算hmacSM3
        • 证书管理接口
        • 查询证书列表
        • 创建证书csr
        • 导入证书
        • 查询证书信息
        • 更新证书状态
        • 获取证书
        • 导出证书私钥
        • 删除证书
        • 证书私钥签名
        • 证书公钥验签
        • 证书公钥加密
        • 证书私钥解密
        • 生成随机数
        • 导入pkcs12格式证书
        • 查询UK证书列表
        • 查询UKey证书详情
        • 导入UK证书
        • 删除UK证书
        • 修改UK证书状态
        • 应用接入点管理接口
        • 查询接入点的接口权限列表
        • 查询应用点接入列表
        • 查询接入点的终端节点白名单
        • 查询资源权限列表
        • 查询VPC列表
        • 查询子网列表
        • 查询租户ak列表信息
        • 创建应用接入点
        • 创建租户凭证aksk
        • 关闭接入点权限控制
        • 获取接入点的资源权限详情
        • 检查接入点是否开启权限判断
        • 接口权限变更
        • 禁用租户ak
        • 启用租户ak
        • 删除应用接入点
        • 删除租户ak
        • 添加终端节点白名单
        • 资源权限变更
        • 租户接口权限详情
        • 标签管理接口
        • 查询账号标签列表
        • 修改标签接口
        • 删除标签接口
        • 新增标签接口
        • 资源绑定标签接口
        • 资源解绑标签接口
        • SDK参考
        • 概览
        • 服务SDK
        • 客户端加密SDK(基础版)
        • 安装与配置
        • 核心类与方法
        • 加密算法说明
        • 最佳实践
        • 使用KMS用户主密钥在线加解密数据
        • 使用信封加密技术实现本地大规模数据加解密
        • 云服务通过KMS实现服务端加密
        • 通过KMS实现签名验签
        • 通过密钥轮转加强密钥使用的安全性
        • 视频专区
        • 常见问题
        • 计费类
        • 操作类
        • 管理类
        • 文档下载
        • 用户手册
        • 相关协议
        • 天翼云密钥管理服务协议
        • 天翼云密钥管理服务等级协议
          无相关产品

          本页目录

          帮助中心密钥管理API参考如何调用APIPython调用示例
          Python调用示例
          更新时间 2024-12-20 13:36:30
          • 新浪微博
          • 微信
            扫码分享
          • 复制链接
          最近更新时间: 2024-12-20 13:36:30
          分享文章
          • 新浪微博
          • 微信
            扫码分享
          • 复制链接

          发起请求

          - - coding: utf8 - -

          import requests

          import json

          import hashlib

          import base64

          import hmac

          import datetime

          import uuid

          METHOD_GET = 'GET'

          METHOD_POST = 'POST'

          官网accessKey

          AK = 'XXXXXX'

          官网securityKey

          SK = 'XXXXXX'

          def hmac_sha256(secret, data):

          secret = bytearray(secret)
          
          data = bytearray(data)
          
          return hmac.new(secret, data, digestmod=hashlib.sha256).digest()
          

          def base64_of_hmac(data):

          return base64.b64encode(data)
          

          def get_request_uuid():

          return str(uuid.uuid1())
          

          def get_sorted_str(data):

          """
          
          鉴权用的参数整理
          
          :param data: dict 需要整理的参数
          
          :return: str
          
          """
          
          sorted_data = sorted(data.items(), key=lambda item: item[0])
          
          str_list = map(lambda (x, y): '%s=%s' % (x, y), sorted_data)
          
          return '&'.join(str_list)
          

          def build_sign(query_params, body_params, eop_date, request_uuid):

          """
          
          计算鉴权字段
          
          :param query_params: dict get请求中的参数
          
          :param body_params: dict post请求中的参数
          
          :param eop_date: str 请求时间,格式为:'%Y%m%dT%H%M%SZ'
          
          :return: str
          
          """
          
          body_str = json.dumps(body_params) if body_params else ''
          
          body_digest = hashlib.sha256(body_str.encode('utf-8')).hexdigest()
          
          # 请求头中必要的两个参数
          
          header_str = 'ctyun-eop-request-id:%s\neop-date:%s\n' % (request_uuid, eop_date)
          
          # url中的参数,或get参数
          
          query_str = get_sorted_str(query_params)
          
          
          signature_str = '%s\n%s\n%s' % (header_str, query_str, body_digest)
          
          
          print_log(repr('signature_str is: %s' % signature_str))
          
          sign_date = eop_date.split('T')[0]
          
          
          # 计算鉴权密钥
          
          k_time = hmac_sha256(SK, eop_date)
          
          k_ak = hmac_sha256(k_time, AK)
          
          k_date = hmac_sha256(k_ak, sign_date)
          
          
          signature_base64 = base64_of_hmac(hmac_sha256(k_date, signature_str))
          
          # 构建请求头的鉴权字段值
          
          sign_header = '%s Headers=ctyun-eop-request-id;eop-date Signature=%s' % (AK, signature_base64)
          
          return sign_header
          

          def get_sign_headers(query_params, body):

          """
          
          获取鉴权用的请求头参数
          
          :param query_params: dict get请求中的参数
          
          :param body: dict post请求中的参数
          
          :return:
          
          """
          
          now = datetime.datetime.now()
          
          eop_date = datetime.datetime.strftime(now, '%Y%m%dT%H%M%SZ')
          
          request_uuid = get_request_uuid()
          
          headers = {  # 三个鉴权用的参数
          
              'eop-date': eop_date,
          
              'ctyun-eop-request-id': request_uuid,
          
              'Eop-Authorization': build_sign(query_params=query_params, body_params=body, eop_date=eop_date,
          
                                              request_uuid=request_uuid),
          
          }
          
          return headers
          

          def get(url, params=None, header_params=None):

          return execute(url, method=METHOD_GET, params=params, header_params=header_params)
          

          def post(url, params=None, header_params=None):

          return execute(url, method=METHOD_POST, params=params, header_params=header_params)
          

          def execute(url, method, params=None, header_params=None):

          params = params or {}
          
          header_params = header_params or {}
          
          query_params, body = (params, {}) if method == METHOD_GET else ({}, params)
          
          headers = get_sign_headers(query_params, body)
          
          headers.update(header_params)
          
          
          print_log(u'url: %s' % url)
          
          print_log(u'请求方式: %s' % method)
          
          print_log(u'请求头: %s' % headers)
          
          print_log(u'请求参数: %s' % params)
          
          
          if method == METHOD_GET:
          
              res = requests.get(url, params=params, headers=headers, verify=False)
          
          else:
          
              if params:
          
                  res = requests.post(url, json=params, headers=headers, verify=False)
          
              else:
          
                  res = requests.post(url, data=params, headers=headers, verify=False)
          
          
          print_log(u'返回状态码: %s' % res.status_code)
          
          print_log(u'返回: %s' % res.text)
          
          return res
          

          def print_log(log_info):

          now = datetime.datetime.now()
          
          log_info = u'[%s]: %s' % (str(now), log_info)
          
          print log_info
          

          发起请求

          post("https://kms-global.ctapi.ctyun.cn/v1/cmkManage/enableKey", params={"cmkUuid":"971ba207-5323-4a04-a290-3a9e8b4c7343"})

          文档反馈

          建议您登录后反馈,可在建议与反馈里查看问题处理进度

          鼠标选中文档,精准反馈问题

          选中存在疑惑的内容,即可快速反馈问题,我们会跟进处理

          知道了

          上一篇 :  认证鉴权
          下一篇 :  API
          搜索 关闭
          ©2025 天翼云科技有限公司版权所有 增值电信业务经营许可证A2.B1.B2-20090001
          公司地址:北京市东城区青龙胡同甲1号、3号2幢2层205-32室
          备案 京公网安备11010802043424号 京ICP备 2021034386号
          ©2025天翼云科技有限公司版权所有
          京ICP备 2021034386号
          备案 京公网安备11010802043424号
          增值电信业务经营许可证A2.B1.B2-20090001
          用户协议 隐私政策 法律声明