场景描述
在数据集成和分析过程中,Dataphin需要通过API定期从外部系统获取业务数据。外部系统通常采用动态鉴权机制确保安全性,因此令牌(Token)具有时效性。可在Dataphin中配置API数据源动态获取令牌。
解决方案与功能
Dataphin支持通过OAuth2.0认证方式的API数据源动态获取令牌。
通过OAuth2.0认证方式,客户端能够安全获取具有时效性的访问令牌(Access Token),既能访问用户资源,也不会暴露用户凭证。
获取令牌后,客户端通过在
HTTP请求头(Header)中添加Authorization: Bearer <token>进行资源访问。API访问请求流程: 1.客户端首先需要向身份验证服务器发送请求以获取访问令牌。典型请求示例如下: POST /oidc/token HTTP/1.1 Host: api.example.com Content-Type: application/x-www-form-urlencoded Authorization: Basic BASE64_ENCODED_CLIENT_ID_AND_SECRET grant_type=client_credentials& client_id=EXAMPLE_CLIENT_ID& client_secret=EXAMPLE_CLIENT_SECRET 2.在成功获取到访问令牌之后,例如eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...,客户端即可进行API访问,使用该令牌进行授权。请求示例如下: GET /data HTTP/1.1 Host: api.example.com Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...
操作步骤
在管理中心 > 数据源管理 > 数据源页面创建一个API数据源。
在API数据源对话框中,配置参数。
URL地址:填写请求的API的URL地址。
认证方式:选择OAuth2.0。
Access Token:指定获取令牌的路径。
Access Token的获取配置:
请求方式:OAuth2.0方式一般使用POST请求方法获取或刷新访问令牌,此处选择POST。
Token URL:填写令牌请求的URL。
客户端ID和密钥:输入客户端的ID和密钥。
客户端认证:选择传递客户端凭证(客户端ID和密钥等)的方式,根据API提供方的要求和规范进行选择,此处选择在请求头中发送基本认证信息。
高级配置:如果Token获取需要额外的参数,可以通过高级配置进行添加,指定参数名、值以及请求位置。

连接测试:完成Access Token获取配置后,进行连接测试以校验配置正确性,可以通过查看返回信息以便进行调整。此处,可以看到返回的信息无误。

完成OAuth2.0认证方式的API数据源配置后,在进行离线集成时,系统会在每次数据请求前自动根据Access Token配置获取或刷新最新的Token,以确保顺利执行API请求。
