内容纲要
概要描述
本文主要描述 TDS API 操作所需要的用户 token 的获取方式。
详细说明
请依次执行以下步骤:
1 查看 user-server/foundation-web 的 IP 和端口号
在 Manager 页面中,进入 Foundation 服务,依据不同的 TDS 版本查看不同的角色链接的 IP 和端口号:
- TDS <= 3.0.1:查看 Foundation User Server 角色
- TDS >= 3.1.0:查看 Foundation Web 角色
记下该角色链接的 IP 和端口号。
zhixji
2 TDS 2.x 额外执行数据库操作
如果 TDS 版本号 >= 3.0.1,则跳过本步骤,则跳过本步骤,直接执行第3步。
首先进入 Foundation 服务依赖的元数据库(方法请参考TDS 元数据库访问方式),然后进入 User 数据库:
方式参考:
use user_foundationX #(X为服务编号数字)
然后执行以下 SQL :
INSERT INTO oauth_client_details
VALUES ('long_time_user', 'oauth2-resource', '$2a$10$xJfgi9qMkNX/UNpBQjrltOQRE9PXiq5MuHe/bQcgfuXas8mmmnD7K', 'all', 'authorization_code,password,refresh_token,implicit,client_credentials', NULL, NULL, 17280000, 17280000, NULL, 'true');
3 通过 API 获取 Token
以 curl 工具为例,TDS 2.x 与 TDS 3.x 分别可通过如下方式获取 Token:
# 2.x
curl --insecure -d "client_id=long_time_user&client_secret=secret&username=admin&password=admin&grant_type=password" https://{步骤1获取的IP}:{步骤1获取的端口号}/oauth/token
# 3.x
curl --insecure -d "client_id=app&client_secret=secret&username=admin&password=admin&grant_type=password" https://{步骤1获取的IP}:{步骤1获取的端口号}/oauth/token
所得的 Token 即为bearer {access_token的值}
。