赛尔校园公共服务平台 Logo
平台使用
阿里云
百度云
移动云
智算服务
教育生态
登录 →
赛尔校园公共服务平台 Logo
平台使用 阿里云 百度云 移动云 智算服务 教育生态
登录
  1. 首页
  2. 阿里云
  3. 表格存储
  4. 开发参考
  5. SDK参考
  6. Python SDK
  7. 配置访问凭证

配置访问凭证

  • Python SDK
  • 发布于 2025-04-22
  • 0 次阅读
文档编辑
文档编辑

使用Python SDK发起请求访问Tablestore,您需要配置访问凭证。阿里云服务会通过访问凭证验证您的身份信息和访问权限。您可以根据使用场景对认证和授权的要求,配置不同类型的访问凭证。

前提条件

配置访问凭证前,您需要完成安装表格存储Python SDK的准备工作。具体操作,请参见安装Python SDK。

访问凭证

访问凭证选型

  • 临时访问凭证:对于需要高安全性的场景,建议使用临时访问凭证。临时访问凭证可以限制访问的有效期,从而减少访问凭证泄露的风险。此外,临时访问凭证支持权限控制,可以有效地避免权限过大的问题。

  • 长期访问凭证:出于安全性考虑,不建议您使用长期访问凭证。对于需要便利性的场景,长期访问凭证可以在较长时间内免除多次刷新的麻烦。

    重要
    • 建议每三个月更换一次长期访问凭证,以提高账号的安全性。

    • 当长期访问凭证泄露或者不再使用时,应该及时删除或者禁用相关的访问凭证,以免造成安全风险。

临时访问凭证

当您准备临时使用Python SDK访问Tablestore服务时,您可以选择以下方式配置临时访问凭证。

配置STS临时访问凭证

如果您需要在规定时间内访问Tablestore,您可以通过STS服务颁发一个STS临时访问凭证。临时访问凭证无需透露您的RAM用户密钥,使Tablestore的访问更加安全。

  1. 创建RAM用户。具体操作,请参见创建RAM用户。

  2. 为RAM用户授予 AliyunSTSAssumeRoleAccess权限。具体操作,请参见为RAM用户授权。

  3. 创建RAM角色,并为RAM角色授予自定义权限策略。具体操作,请参见创建RAM角色和为RAM角色授予自定义权限策略。

  4. 使用RAM用户扮演RAM角色获取STS临时访问凭证。具体操作,请参见获取STS临时访问凭证。

  5. 配置STS临时访问凭证。

    环境变量
    1. 使用临时身份凭证设置环境变量。

      Mac OS X/Linux/Unix
      # 配置临时访问凭证 STS AccessKey ID
      export TABLESTORE_ACCESS_KEY_ID=your_sts_access_key_id
      # 配置临时访问凭证 STS AccessKey Secret
      export TABLESTORE_ACCESS_KEY_SECRET=your_sts_access_key_secret
      # 配置临时访问凭证 STS Token
      export TABLESTORE_SESSION_TOKEN=your_sts_token
      Windows

      以管理员身份运行命令提示符,执行以下命令。

      # 配置临时访问凭证 STS AccessKey ID
      setx TABLESTORE_ACCESS_KEY_ID your_sts_access_key_id /m
      # 配置临时访问凭证 STS AccessKey Secret
      setx TABLESTORE_ACCESS_KEY_SECRET your_sts_access_key_secret /m
      # 配置临时访问凭证 STS Token
      setx TABLESTORE_SESSION_TOKEN your_sts_token /m
      说明

      环境变量配置完成后,为确保新的设置被正确应用,您可能需要重启相关的开发工具(IDE等)或服务。

    2. 通过环境变量来传递凭证信息。

      # -*- coding: utf-8 -*-
      import os
      
      access_key_id = os.getenv("TABLESTORE_ACCESS_KEY_ID")
      access_key_secret = os.getenv("TABLESTORE_ACCESS_KEY_SECRET")
      sts_token = os.getenv("TABLESTORE_SESSION_TOKEN")
    静态凭证

    您可以在代码中使用变量来引用凭证,这些变量在运行时会被环境变量、配置文件或其他外部数据源中的实际凭证值填充。

    以下操作步骤以配置文件为例。

    1. 创建配置文件config.ini。

      [configName]
      TABLESTORE_ACCESS_KEY_ID = your_sts_access_key_id
      TABLESTORE_ACCESS_KEY_SECRET = your_sts_access_key_secret
      TABLESTORE_SESSION_TOKEN = your_sts_token
    2. 使用配置文件来传递凭证信息。

      # -*- coding: utf-8 -*-
      import configparser
      
      # 读取配置文件
      config = configparser.ConfigParser()
      # 假设config.ini位于脚本同级目录下
      config.read('config.ini')
      
      # 从配置文件中获取Access Key ID和Access Key Secret
      access_key_id = config.get('configName', 'TABLESTORE_ACCESS_KEY_ID')
      access_key_secret = config.get('configName', 'TABLESTORE_ACCESS_KEY_SECRET')
      security_token = config.get('configName', 'TABLESTORE_SESSION_TOKEN')

使用函数计算上下文中的Credentials

如果您的应用程序的函数部署运行在函数计算中,您可以使用函数计算上下文中的Credentials获取临时访问凭证。

该方式底层实现是STS Token。函数计算根据函数配置的角色,通过扮演服务角色,而获取一个STS Token,然后通过上下文中的参数Credentials将STS Token传递给您的应用程序。该STS Token的有效期为36小时,且不支持修改。函数的最大执行时间为24小时,因此,执行函数过程中,STS Token不会过期,您无需考虑刷新问题。该方式无需您提供一个AK或STS Token,消除了手动维护AK或STS Token的风险。如何授予函数计算访问Tablestore的权限,请参见授予函数计算访问其他云服务的权限。

  1. 使用函数计算上下文中的Credentials获取临时访问凭证。

    # -*- coding: utf-8 -*-
    
    def handler(event, context):
        # 获取密钥信息,执行前,确保函数所在的服务配置了角色信息,并且角色需要拥有Tablestore的权限,建议直接使用AliyunFCDefaultRole角色
        creds = context.credentials
    
        access_key_id = creds.access_key_id
        access_key_secret = creds.access_key_secret
        security_token = creds.security_token
    
        # 后续操作...
    
        return 'success'

长期访问凭证

如果您的应用程序部署运行在安全、稳定且不易受外部攻击的环境中,需要长期使用Python SDK访问您的Tablestore,您可以使用阿里云账号或RAM用户的AK(Access Key ID、Access Key Secret)的方式访问。如何获取AK,请参见使用RAM用户访问密钥访问表格存储。

警告

阿里云账号拥有资源的全部权限,AK一旦泄露,会给系统带来巨大风险,不建议使用。推荐使用最小化授权的RAM用户的AK。

环境变量

  1. 使用AK设置环境变量。

    Mac OS X/Linux/Unix
    # 配置 AccessKey ID
    export TABLESTORE_ACCESS_KEY_ID=your_access_key_id
    # 配置 AccessKey Secret
    export TABLESTORE_ACCESS_KEY_SECRET=your_access_key_secret
    Windows

    以管理员身份运行命令提示符,执行以下命令。

    # 配置 AccessKey ID
    setx TABLESTORE_ACCESS_KEY_ID your_access_key_id /m
    # 配置 AccessKey Secret
    setx TABLESTORE_ACCESS_KEY_SECRET your_access_key_secret /m
    说明

    环境变量配置完成后,为确保新的设置被正确应用,您可能需要重启相关的开发工具(IDE等)或服务。

  2. 使用环境变量来传递凭证信息。

    # -*- coding: utf-8 -*-
    import os
    
    access_key_id = os.getenv("TABLESTORE_ACCESS_KEY_ID")
    access_key_secret = os.getenv("TABLESTORE_ACCESS_KEY_SECRET")

静态凭证

您可以在代码中使用变量来引用凭证,这些变量在运行时会被环境变量、配置文件或其他外部数据源中的实际凭证值填充。

以下操作步骤以配置文件为例。

  1. 创建配置文件config.ini。

    [configName]
    TABLESTORE_ACCESS_KEY_ID = your_access_key_id
    TABLESTORE_ACCESS_KEY_SECRET = your_access_key_secret
  2. 使用配置文件来传递凭证信息。

    # -*- coding: utf-8 -*-
    import configparser
    
    # 读取配置文件
    config = configparser.ConfigParser()
    # 假设config.ini位于脚本同级目录下
    config.read('config.ini')
    
    # 从配置文件中获取Access Key ID和Access Key Secret
    access_key_id = config.get('configName', 'TABLESTORE_ACCESS_KEY_ID')
    access_key_secret = config.get('configName', 'TABLESTORE_ACCESS_KEY_SECRET')

后续步骤

初始化凭证提供者后,您需要使用凭证提供者来创建OTSClient实例。详情请参见初始化Tablestore Client。

相关文章

安装表格存储Python SDK 2025-04-22 14:24

安装表格存储Python SDK后,即可在编写代码时调用

配置访问凭证 2025-04-22 14:24

使用Python SDK发起请求访问Tablestore,您需要配置访问凭证。阿里云服务会通过访问凭证验证您的身份信息和访问权限。您可以根据使用场景对认证和授权的要求,配置不同类型的访问凭证。 前提条件 配置访问凭证前,您需要完成安装

初始化Tablestore Client 2025-04-22 14:24

Tablestore Client是表格存储的客户端,它提供了一系列的方法,可以用来操作

表操作 2025-04-22 14:24

本文介绍表格存储Python SDK提供的表级别功能。

创建数据表 2025-04-22 14:24

本文将通过参数说明和示例代码为您介绍如何使用 Python SDK 创建数据表。在创建数据表时,您需要指定数据表的结构信息和配置信息。CU 模式(原按量模式)下高性能型实例中的数据表还可以根据需要设置预留读写吞吐量。

更新表配置 2025-04-22 14:24

本文将通过参数说明和示例代码为您介绍如何使用 Python SDK 更新表配置。在更新数据表时,您可以修改表的配置信息(例如数据生命周期、最大版本数、有效版本偏差等)。此外,您还可以为 CU 模式(原按量模式)下高性能型实例中数据表调整预留读写吞吐量。

目录
Copyright © 2025 your company All Rights Reserved. Powered by 赛尔网络.
京ICP备14022346号-15
gongan beian 京公网安备11010802041014号