全部产品
Search
文档中心

:企业级服务平台

更新时间:Sep 21, 2026

PolarDB Agent企业级服务平台是一个部署在您专有网络(VPC)内的Web服务,用于集中创建和管理PolarDB Agent Express。通过该服务,您可以模板化PolarDB Agent Express的配置,并结合企业应用(例如飞书/钉钉/企业微信)实现团队成员的统一认证和授权。本文将指导您完成从准备依赖凭证、创建应用实例、配置网络与访问,到最终使用该应用的完整流程。

功能简介

PolarDB Agent企业级服务平台本质上是一个部署在您阿里云账户下的私有化管理平台。它将PolarDB Agent Express的复杂配置流程封装在一个图形化界面中,旨在解决以下问题:

  • 简化部署:通过预设模板,团队成员无需了解底层细节即可一键创建PolarDB Agent Express。

  • 统一认证:与您企业应用(例如飞书/钉钉/企业微信)组织架构集成,实现基于企业应用账号的安全登录。

  • 权限管控:企业级服务平台的管理员可以统一管理和维护PolarDB Agent Express的配置模板。

准备工作

在开始创建应用之前,您需准备好以下两项关键凭证:

  • 一个具备特定权限的RAM用户访问凭证(AccessKey)。

  • 一个已创建并发布的飞书/钉钉/企业微信企业自建应用及其凭证。

准备一:获取RAM用户访问凭证(AccessKey)

PolarDB Agent企业级服务平台需要使用AccessKey来调用阿里云的API以创建和管理资源。请遵循最小权限原则,选择或创建一个专用的RAM用户和AccessKey。

  1. 创建权限策略

    1. 登录RAM 控制台,在左侧导航栏选择 权限管理 > 权限策略。

    2. 单击创建权限策略,切换到脚本编辑标签页。

    3. 将以下JSON策略内容完整粘贴到策略编辑器中,然后单击确定。

      单击展开查看详细的JSON策略

      {
        "Version": "1",
        "Statement": [
          {
            "Effect": "Allow",
            "Action": [
              "polardb:DescribeDBClusters",
              "polardb:DescribeAIDBClusters",
              "polardb:DescribeDBClusterAttribute",
              "polardb:DescribeDBClusterEndpoints",
              "polardb:DescribeRegions",
              "polardb:DescribeHistoryEvents",
              "polardb:DescribePolarAgents",
              "polardb:DescribeApplications",
              "polardb:CreateApplication",
              "polardb:OperateApplication",
              "polardb:DeleteApplication",
              "polardb:DescribeApplicationAttribute",
              "polardb:UpgradeApplicationVersion",
              "polardb:DescribeApplicationParameters",
              "polardb:ModifyApplicationParameter",
              "polardb:ModifyApplicationDescription",
              "polardb:ModifyApplicationWhitelist",
              "polardb:CreateApplicationEndpointAddress",
              "polardb:DeleteApplicationEndpointAddress",
              "polardb:ModifyApplicationEndpointAddress",
              "polardb:DescribeApplicationSSL",
              "polardb:ModifyApplicationSSL",
              "polardb:DescribePolarClawSkills",
              "polardb:ModifyPolarClawSkill",
              "polardb:UninstallPolarClawSkills",
              "polardb:DescribePolarClawSkillAssessment",
              "polardb:CreateBatchTask",
              "polardb:DescribeBatchTasks",
              "polardb:DescribeBatchTask",
              "polardb:DescribeApplicationPerformance",
              "polardb:DescribeApplicationBackupPolicy",
              "polardb:ModifyApplicationBackupPolicy",
              "polardb:DescribeApplicationBackups",
              "polardb:CreateApplicationBackup",
              "polardb:DeleteApplicationBackup",
              "polardb:RestoreApplicationByBackupSet",
              "polardb:DescribeApplicationPrompts",
              "polardb:CreateApplicationPrompt",
              "polardb:ModifyApplicationPrompt",
              "polardb:DeleteApplicationPrompt",
              "polardb:ApplyApplicationPrompts",
              "polardb:ModifyApplicationPromptStatus",
              "polardb:SearchMemories",
              "polardb:DescribeApplicationLogs",
              "polardb:DescribeApplicationSessionIds",
              "polardb:DescribeApplicationSessionLogs",
              "polardb:LoginPolarClawChannel",
              "polardb:DescribePolarClawTask",
              "polardb:DescribePolarClawChannels",
              "polardb:ApprovePolarClawDevicePair",
              "polardb:DescribePolarClawSkillsMarket",
              "polardb:DescribePolarClawSkillTemplates",
              "polardb:DescribePolarClawSkillTemplate",
              "polardb:CreatePolarClawSkillTemplate",
              "polardb:DeletePolarClawSkillTemplate",
              "polardb:CreatePolarClawSkill",
              "polardb:GetPolarClawSkillRegion",
              "polardb:CheckPolarClawSkill",
              "polardb:DeletePolarClawSkill",
              "polardb:DescribeGatewayList",
              "polardb:DescribeGatewayAttribute",
              "polardb:DescribeAIGatewayInstances",
              "polardb:DescribeAIGatewayAttribute",
              "polardb:DescribeModelApis",
              "polardb:ListAIGatewayModelApis",
              "polardb:GetAIGatewayModelApiCreationOptions",
              "polardb:CreateModelApi",
              "polardb:CreateAIGatewayModelApi",
              "polardb:ModifyModelApi",
              "polardb:ModifyAIGatewayModelApi",
              "polardb:DeleteModelApi",
              "polardb:DeleteAIGatewayModelApi",
              "polardb:DescribeModelServices",
              "polardb:ListAIGatewayModelServices",
              "polardb:CreateModelService",
              "polardb:CreateAIGatewayModelService",
              "polardb:ModifyModelService",
              "polardb:DeleteModelService",
              "polardb:DescribeConsumerGroups",
              "polardb:ListAIGatewayConsumerGroups",
              "polardb:CreateConsumerGroup",
              "polardb:CreateAIGatewayConsumerGroup",
              "polardb:DeleteConsumerGroup",
              "polardb:DeleteAIGatewayConsumerGroup",
              "polardb:ModifyConsumerGroup",
              "polardb:ModifyAIGatewayConsumerGroup",
              "polardb:DescribeConsumers",
              "polardb:ListAIGatewayConsumers",
              "polardb:DescribeAIGatewayConsumer",
              "polardb:CreateConsumer",
              "polardb:CreateAIGatewayConsumer",
              "polardb:ModifyConsumer",
              "polardb:EnableConsumer",
              "polardb:DisableConsumer",
              "polardb:ResetConsumerApiKey",
              "polardb:ResetAIGatewayConsumerApiKey",
              "polardb:DeleteConsumer",
              "polardb:DeleteAIGatewayConsumer",
              "polardb:DescribeRateLimitPolicy",
              "polardb:ListAIGatewayRateLimitPolicies",
              "polardb:CreateRateLimitPolicy",
              "polardb:CreateAIGatewayRateLimitPolicy",
              "polardb:DeleteRateLimitPolicy",
              "polardb:DeleteAIGatewayRateLimitPolicy",
              "polardb:ModifyRateLimitPolicy",
              "polardb:ModifyAIGatewayRateLimitPolicy",
              "polardb:DescribeBudgetPolicies",
              "polardb:ListAIGatewayBudgetPolicies",
              "polardb:CreateBudgetPolicy",
              "polardb:CreateAIGatewayBudgetPolicy",
              "polardb:DeleteBudgetPolicy",
              "polardb:DeleteAIGatewayBudgetPolicy",
              "polardb:ModifyBudgetPolicy",
              "polardb:ModifyAIGatewayBudgetPolicy",
              "polardb:DescribeBudgetStats",
              "polardb:DescribeCostRules",
              "polardb:CreateCostRule",
              "polardb:ModifyCostRule",
              "polardb:DeleteCostRule",
              "polardb:CreateDBEndpointAddress",
              "polardb:StartAIGateway",
              "polardb:StopAIGateway",
              "polardb:RestartAIGateway",
              "polardb:ReleaseAIGateway",
              "polardb:CreateAIGatewayPublicEndpoint",
              "polardb:DescribeAIGatewaySecurityGroups",
              "polardb:DescribeAIGatewayIPArrayList",
              "polardb:ModifyAIGatewaySecurityIPs",
              "polardb:DescribeAIGatewayPerformance",
              "polardb:ListAIGatewayEvents",
              "polardb:ListTagResourcesForRegion",
              "polardb:ListTagResources",
              "polardb:TagResources",
              "polardb:UntagResources"
            ],
            "Resource": "*"
          },
          {
            "Effect": "Allow",
            "Action": ["ecs:DescribeSecurityGroups"],
            "Resource": "*"
          },
          {
            "Effect": "Allow",
            "Action": ["tag:ListTagKeys", "tag:ListTagValues"],
            "Resource": "*"
          },
          {
            "Effect": "Allow",
            "Action": [
              "oss:GetBucketInfo",
              "oss:PutObject",
              "oss:GetBucketPolicy",
              "oss:PutBucketPolicy"
            ],
            "Resource": "*"
          },
          {
            "Effect": "Allow",
            "Action": ["bss:Refund*", "bss:Renew*", "bss:ModifyInstance"],
            "Resource": "*"
          }
        ]
      }
    4. 为该策略命名(例如PolarDB Agent ExpressSaaSMinimalAccess)并完成创建。

  2. 创建RAM用户并授权

    1. 在左侧导航栏选择身份管理 > 用户,选择或创建一个RAM用户。

      1. 选择一个原有用户:进入用户详情页,在AccessKey标签页下,您可使用已有的AccessKey或创建一个新的AccessKey。创建一个新的AccessKey,请选择本地开发环境中使用,并妥善保管生成的AccessKey(AccessKey ID 和 AccessKey Secret)。

      2. 创建一个新用户:在创建用户页面填写基本信息以及选择使用永久 AccessKey 访问。完成创建后,保存当前RAM用户的AccessKey(AccessKey ID 和 AccessKey Secret)。

    2. 在用户详情页面,切换到权限管理标签页,单击新增授权,将上一步创建的PolarDB Agent ExpressSaaSMinimalAccess策略授予该用户。

准备二:获取企业应用凭证(App ID/App Secret)

PolarDB Agent企业级服务平台通过企业应用(例如飞书/钉钉/企业微信)自建应用来实现用户认证。

钉钉

  1. 创建钉钉应用:

    1. 访问钉钉开放平台,单击上方导航栏应用开发。在应用开发的左侧导航栏中,单击企业内部应用 > 钉钉应用,在页面右上角单击创建应用。

    2. 在创建应用面板,依次填入应用名称、应用描述与应用图标(可选),单击保存完成创建。

  2. 添加相关权限:在左侧导航栏单击开发配置 > 权限管理,添加权限获取用户个人信息权限(Contact.User.Read)。

  3. 发布钉钉应用:应用创建完成后,如果需要将应用供企业内其他用户使用,需要发布一个版本。

    1. 单击左侧导航栏中的应用发布 > 版本管理与发布,单击创建新版本。

    2. 进入版本详情页面,输入应用版本号和版本描述信息,选择合适的应用可见范围,完成后单击保存。并在弹窗中单击确认发布。

  4. 应用发布完成后,进入凭证与基础信息页面,记录Client ID和Client Secret,后续配置PolarDB Agent企业级服务平台时需要使用。

飞书

  1. 登录飞书开放平台,在右上角单击开发者后台。进入后台后单击创建企业自建应用,填入应用名称、应用描述与应用图标,单击创建。

  2. 在左侧导航栏单击权限管理,进入页签后单击开通权限。

  3. 搜索并选中以下权限。单击确认开通权限,并确认。

    重要

    添加权限后需单击确认保存变更,否则权限不会生效。

    权限标识

    说明

    contact:user.employee:readonly

    获取用户的员工信息

    contact:user.phone:readonly

    获取用户手机号

    contact:user.base:readonly

    获取用户基本信息

    contact:user.email:readonly

    获取用户邮箱地址

  4. 完成上述配置后,需要发布应用使其生效。在左侧导航栏单击版本管理与发布,单击右上角创建新版本。

  5. 修改可用范围为全部成员,并填写版本号和更新说明等信息后,在页面底部单击保存并确认发布。

  6. 应用发布完成后,进入凭证与基础信息页面,记录App ID和App Secret,后续配置PolarDB Agent企业级服务平台时需要使用。

企业微信

  1. 创建企业微信应用:

    1. 登录企业微信管理后台,在左侧导航栏选择应用管理 > 自建,单击创建应用。

    2. 填写应用名称、应用Logo和可见范围等信息,单击创建应用完成创建。

  2. 获取应用凭证:

    • 获取Agent ID和Secret:单击进入已创建的应用,在应用详情页获取AgentId和Secret。

    • 获取Corp ID:在左侧导航栏选择我的企业,在企业信息页面获取企业ID(即Corp ID)。

  3. 记录Corp ID、Agent ID和Secret,后续配置PolarDB Agent企业级服务平台时需要使用。

操作步骤

完成所有准备工作后,您可以按照以下步骤创建和配置应用。

步骤一:创建PolarDB Agent企业级服务平台

  1. 登录PolarDB控制台,在左侧导航栏单击PolarDB AI > PolarDB Agent Express,并在顶部导航栏中切换至您的目标地域。

  2. 在PolarDB Agent Express页面,切换至企业级服务平台标签页,单击立即创建。

  3. 在创建页面,配置以下核心参数:

    • 阿里云账号 AK/SK:填入您在准备工作中准备好的AccessKey ID和AccessKey Secret。

    • VPC 网络和可用区及交换机:选择PolarDB Agent企业级服务平台将要部署的专有网络和交换机。

    • 安全组:选择一个安全组,并确保该安全组的入方向规则已放行8080端口。

    • SaaS服务登录方式:应用类型选择飞书、钉钉或企业微信,并填写准备工作中准备好的对应企业应用凭证。

  4. 单击确定开始创建。

步骤二:配置网络与访问

PolarDB Agent企业级服务平台创建后,默认仅可通过VPC内网访问。为了让PolarDB Agent企业级服务平台能与公网上的飞书/钉钉/企业微信认证服务通信,并允许通过公网访问,您需要配置网络。

  1. 创建公网NAT网关:请前往NAT 网关 - 公网 NAT 网关购买页进行创建。在创建过程中,请确保选择与PolarDB Agent企业级服务平台相同的VPC和交换机。

  2. 配置SNAT条目:前往公网 NAT 网关页面。单击目标网关操作列的设置SNAT,单击创建SNAT条目。参数请按如下配置:

    • SNAT条目粒度:VPC粒度。

    • 选择弹性公网IP地址:在下拉列表中选择提供公网访问的EIP。

    说明

    开通公网访问能力将产生相关的公网NAT网关及公网流量费用。相关费用说明,请参见NAT 网关计费。

  3. (可选)申请公网访问地址
    如果您希望能通过公网访问该管理应用,请返回PolarDB控制台的PolarDB Agent企业级服务平台详情页,单击开通公网地址为其申请一个公网地址。

步骤三:配置企业应用回调地址

钉钉

  1. 获取回调地址
    在 PolarDB Agent企业级服务平台的详情页,在PolarDB Agent企业级服务平台 使用流程 > 应用安全设置区域复制系统生成的钉钉重定向 URL。

  2. 配置钉钉安全设置
    返回钉钉开放平台,进入您的自建应用,在安全设置页面,将复制的回调地址添加到重定向URL(回调域名)中。

飞书

  1. 获取回调地址
    在 PolarDB Agent企业级服务平台的详情页,在PolarDB Agent企业级服务平台 使用流程 > 应用安全设置区域复制系统生成的飞书重定向 URL。

  2. 配置飞书安全设置
    返回飞书开放平台,进入您的自建应用,在安全设置页面,将复制的回调地址添加到重定向 URL中,并将回调地址中的IP地址填写至IP白名单中。

企业微信

  1. 设置可信域名
    登录企业微信管理后台,进入您的自建应用,在开发者接口 > 网页授权及JS-SDK区域设置可信域名。该域名需绑定到企业级服务平台的公网地址。

    说明

    设置可信域名时,需要下载校验文件并部署到域名对应服务器的根路径下,确保校验文件可通过公网访问后再提交验证。如需获取企业级服务平台的公网地址,请提交工单联系我们为您提供。

  2. 配置企业可信IP
    在应用详情页的开发者接口 > 企业可信IP区域,添加企业级服务平台的公网出口IP地址。如需获取该IP地址,请提交工单联系我们为您提供。

步骤四:访问并使用企业级服务平台

  1. 配置访问白名单
    在PolarDB Agent企业级服务平台的白名单设置中,添加允许访问该应用的客户端IP地址。

    • 如果通过公网访问,请添加您本地网络的公网出口IP。

    • 如果通过内网访问,请添加您VPC内的客户端IP。

  2. 访问应用
    在PolarDB Agent企业级服务平台的详情页,找到私网地址或您已申请的公网地址,通过浏览器访问。

  3. 登录并创建PolarDB Agent Express模板
    首次登录的用户将自动获得管理员权限。您可以在账号管理页面中,为PolarDB Agent Express(小龙虾模块)创建配置模板。例如,指定模型来源为百炼(Bailian),并填入对应的ModelFrom和ModelApiKey。

  4. 团队成员创建PolarDB Agent Express
    模板配置完成后,其他团队成员登录企业级服务平台后,即可在PolarDB Agent Express 管理页面,通过选择模板一键创建自己的PolarDB Agent Express。