百炼控制台使用 Salesforce on Alibaba Cloud MCP 操作指南

更新时间:
复制 MD 格式

本文介绍在百炼控制台开通 Salesforce on Alibaba Cloud MCP 服务时,如何获取 Access Token 并完成配置。提供两种获取 Token 的方式,请根据实际场景选择。

概述

用您的阿里云账号登录百炼控制台,在 MCP 广场找到 Salesforce on Alibaba Cloud MCP。

在百炼控制台开通 Salesforce on Alibaba Cloud MCP 时,需要填入两项认证参数:

配置项

填写格式

说明

Authorization

Bearer <access_token>

Bearer 与 token 之间有一个空格

X-CRM-ORG-DOMAIN

https://<org-domain>

Salesforce Org 的域名 URL,在 Setup → My Domain 中获取

获取 Access Token 有两种方式:

方式一:SF CLI 浏览器授权

方式二:Client Credentials Flow

核心机制

通过 Salesforce CLI 发起 OAuth Web 授权,浏览器完成登录授权后获取 Token

通过 cURL 直接调用 OAuth 令牌端点,以 Client Credentials 模式获取 Token

是否需要用户交互

需要(浏览器登录授权)

不需要(纯服务端调用)

适用场景

个人开发者快速测试、临时调试

后台自动化、Agent 调用、多用户共享

前置条件

安装 Salesforce CLI

创建专用集成用户

Token 权限

绑定到授权登录的普通用户

绑定到专用集成用户

Token 有效期

临时凭证,会话过期后需刷新(可设置最长24小时)

临时凭证,会话过期后需刷新(可设置最长24小时)

方式一:通过 SF CLI 浏览器授权获取 Token

本方式通过 Salesforce CLI 发起 OAuth 授权流程,在浏览器中完成登录后自动获取 Token。操作简单,适合个人开发者快速验证 MCP 连通性。

步骤 1:安装 Salesforce CLI

Salesforce CLI 是 Salesforce 官方命令行工具,用于与 Org 进行交互。

安装方式(选择适合您系统的方式):

  • macOS

brew install @salesforce/cli
  • Windows

npm install @salesforce/cli --global

安装完成后,验证是否成功:

sf --version

如果正确输出版本号,则安装成功。

步骤 2:创建 External Client App 并获取凭证

  1. 登录您的 Salesforce Org

  2. 进入 Setup(右上角齿轮图标 → Setup)

  3. 在快速查找中输入 App Manager,点击进入

  4. 点击右上角 New External Client App

  5. 填写基本信息:

    • App Name:自定义名称(如 MCP Test App

    • Contact Email:您的邮箱地址

  6. OAuth Settings 区域:

    • 勾选 Enable OAuth Settings

    • Callback URL:填写 http://localhost:1717/OauthRedirect\(CLI 默认回调地址)

    • Selected OAuth Scopes:建议至少选择 Manage user data via APIs (api)Perform requests at any time (refresh_token, offline_access)

  7. 点击 C 保存

  8. 在 App Manager 列表中找到刚创建的 App,点击右侧下拉菜单 → View

  9. 找到 Consumer KeyConsumer Secret,点击 Manage Consumer Details 查看完整值

请妥善保存 Consumer Key 和 Consumer Secret,后续步骤需要使用。

步骤 3:使用 CLI 登录 Org

在终端中执行以下命令:

sf org login web -d -r <Your Domain URL> -i <Consumer Key>

参数说明

参数

说明

示例

-d

将登录的 Org 设置为默认 Org

固定参数,无需填值

-r

Salesforce Org 域名 URL

https://yourorg.my.sfcrmproducts.cn/

-i

External Client App 的 Consumer Key

3MVG9lKcPoNINVB...

执行后

  1. 终端会提示输入 Consumer Secret,请输入步骤 2 中获取的值,按回车

  2. 系统自动拉起浏览器,打开 Salesforce 授权页面

  3. 使用需要获取 Token 的 普通用户账号 登录

  4. 在授权页面中点击 Allow 允许授权

注意:请使用实际需要测试 MCP 的用户账号进行授权,获取的 Token 将具有该用户的权限。

步骤 4:获取 Access Token

浏览器授权成功后,回到终端执行:

sf org display user -o <用户名>

参数

说明

示例

-o

步骤 3 中授权登录的用户名

testuser@example.com

输出示例(仅展示关键字段):

=== User Info

username           testuser@example.com
Access Token       00Dx0000000BV7z!AR8AQAxo9UfVkh8AlV0Gomt9Czx9LjHnSSpwBMmb...
Instance Url       https://yourorg.my.sfcrmproducts.cn/

复制 Access Token 字段的值即可。

Token 过期后如何刷新

无需重新走浏览器授权,直接重新执行步骤 4 的命令:

sf org display user -o <用户名>

CLI 会自动使用之前保存的会话刷新 Token。如果提示会话已失效(Session expired),则需重新执行步骤 3 的 sf org login web 命令重新授权。

方式二:通过 Client Credentials Flow 获取 Token

本方式采用 OAuth 2.0 Client Credentials Flow,通过 cURL 直接调用 Salesforce 令牌端点获取 Token。无需终端用户交互授权,适用于后台自动化及 Agent 调用场景。

步骤 1:创建专用集成用户

安全提示:请勿使用管理员或个人账号作为集成用户。务必创建专用账号并遵循最小权限原则。
  1. 进入 SetupUsersNew User

  2. 填写用户信息,确保勾选 Active 状态

  3. 分配一个包含 API Enabled 权限的 Profile 或 Permission Set

  4. 保存并记录该用户的用户名,后续绑定 App 时需要使用

步骤 2:配置 External Client App

  1. 进入 Setup → 搜索 External Client App Manager → 点击 New External Client App

  2. 填写应用基本信息后,展开以下两个关键区域进行配置:

配置区域

配置项

操作要求

OAuth Settings

Selected OAuth Scopes

必须添加 Manage user data via APIs (api)

Flow Enablement

勾选 Enable Client Credentials Flow

OAuth Policies

Client Credentials Flow → Run As

选择步骤 1 创建的集成用户

  1. 点击 Create

  2. 在同一页面展开 OAuth Settings,点击 Consumer Key and Secret 查看并复制 Consumer KeyConsumer Secret

步骤 3:请求 Access Token

使用 cURL 向 Salesforce 发起令牌请求:

curl -X POST "https://<你的MyDomain>/services/oauth2/token" \
  -H "Content-Type: application/x-www-form-urlencoded" \
  -d "grant_type=client_credentials" \
  -d "client_id=<替换为Consumer_Key>" \
  -d "client_secret=<替换为Consumer_Secret>"

成功响应示例:

{
    "access_token": "00Dxx0000001gPFEAY!AR8AQJ...",
    "instance_url": "https://xxx.my.sfcrmproducts.cn",
    "token_type": "Bearer",
    "scope": "api"
}

复制 access_token 的值即可。

在百炼控制台完成开通

无论选择哪种方式获取 Token,后续的开通步骤相同:

  1. 登录阿里云百炼控制台,进入 MCP 广场

  2. 搜索并找到 Salesforce on Alibaba Cloud MCP,点击 立即开通

  3. 在开通配置页面填写参数:

填写项

填写格式

获取方式

Authorization

Bearer <access_token>

填入获取到的令牌,注意 Bearer 后有一个英文空格

X-CRM-ORG-DOMAIN

https://<org-domain>

Salesforce 实例域名 URL

  1. 确认填写无误后,点击提交完成开通。

  2. 在应用管理中创建 agent 应用,并在 mcp 配置中选择Salesforce on Alibaba Cloud MCP,添加所需的 MCP 工具

  3. 完成配置,与 Agent 对话测试效果

两种方式对比与选择建议

对比维度

方式一:SF CLI 浏览器授权

方式二:Client Credentials Flow

操作复杂度

低 — 安装 CLI 后几步完成

中 — 需创建集成用户并配置 App 策略

是否需要浏览器

是 — 首次授权需浏览器交互

否 — 全程命令行完成

Token 权限模型

绑定到登录的普通用户,受该用户权限约束

绑定到专用集成用户,权限可精确控制

安全性

中 — Token 与个人账户关联

高 — 专用集成用户 + 最小权限原则

Token 有效期

临时凭证,会话过期后需重新获取(可设置最长24小时)

临时凭证,会话过期后需重新获取(可设置最长24小时)

多用户支持

弱 — 每个用户需在本地 CLI 分别登录

强 — 一个集成用户可服务多个终端用户

适用环境

本地开发、临时调试、快速验证

生产环境、Agent 调用、CI/CD 集成

常见问题

Q: 方式一执行 sf org login web 时提示 "No org configuration found" 怎么办?

A: 这是正常现象,首次登录时本地尚无 Org 配置。按照提示输入 Consumer Secret 并完成浏览器授权即可。

Q: 方式二报错 "invalid_client_id" 或 "invalid_client_credentials" 怎么办?

A: 请确认 Consumer Key 和 Consumer Secret 正确无误,External Client App 状态为 Active,且 OAuth Policies 中已正确配置 Client Credentials Flow 的 Run As 用户。

Q: 方式一和方式二获取的 Token 有什么区别?

A: 方式一的 Token 绑定到浏览器授权时登录的普通用户,权限与该用户一致;方式二的 Token 绑定到专用集成用户,权限由管理员精确控制。两者在调用 MCP 时功能相同,区别在于权限模型和适用场景。

Q: Token 过期后 MCP 会怎样?

A: 需要采用同样的方式重新获取 Token 并更新百炼 MCP 配置。您可以在External Client App中的Policies - Oauth Policies中设置更长的会话有效期(Session Timeout In Minutes),最长为24小时。