StandardDropboxCredentialService Controller Service
描述
定义 Dropbox 处理器的凭据。
标签
属性
| 名称 | 默认值 | 可选值 | 描述 |
|---|---|---|---|
| App Key | | 用户的 Dropbox 应用的 App Key。有关更多信息,请参阅附加详细信息。 支持表达式语言:是(仅使用环境/系统变量求值) | |
| App Secret | | 用户的 Dropbox 应用的 App Secret。有关更多信息,请参阅附加详细信息。 敏感属性:是 支持表达式语言:是(仅使用环境/系统变量求值) | |
| Access Token | | 用户的 Dropbox 应用的访问令牌。有关访问令牌生成的更多信息,请参阅附加详细信息。 敏感属性:是 支持表达式语言:是(仅使用环境/系统变量求值) | |
| Refresh Token | | 用户的 Dropbox 应用的刷新令牌。请参阅附加详细信息以了解有关刷新令牌生成的更多信息。 敏感属性:是 支持表达式语言:是(仅使用环境/系统变量求值) |
状态管理
该组件不存储状态。
受限 (Restricted)
该组件不受限。
提供的 Service API
DropboxCredentialService
详细说明
StandardDropboxCredentialService
生成用于
Dropbox 认证的凭据
StandardDropboxCredentialService 需要 "App Key"、"App Secret"、"Access Token" 和 "Refresh Token"。
本文档介绍如何使用现有的 Dropbox 账号生成这些凭据。
生成
App Key 和 App Secret
- 用你的 Dropbox 账号登录。
- 如果你已经创建了应用,进入 Dropbox Developers 页面,点击 "App Console" 按钮并选择你的应用。在应用的信息页面可以找到 "App key" 和 "App secret"。 (另见 Dropbox Getting Started, App Console 标签页,"Navigating the App Console" 章节)
- 如果你没有任何应用,进入
Dropbox Developers 页面,点击
"Create app" 按钮。(另见
Dropbox Getting Started,
App Console 标签页,"Creating a Dropbox app" 章节。)
- 在下一页选择 "Scoped access" 和 "Full Dropbox" 作为访问类型。
- 为你的应用命名。
- 在应用的信息页面可以找到 "App key" 和 "App secret"。(另见 Dropbox Getting Started, App Console 标签页,"Navigating the App Console" 章节。)
为你的应用设置所需权限
必须启用 "files.content.read" 权限,应用程序才能读取 Dropbox 中的文件。
你可以在 Dropbox Developers 页面设置权限。
- 点击 "App Console" 按钮并选择你的应用。
- 进入 "Permissions" 标签页,启用 "files.content.read" 权限。
- 点击 "Submit" 按钮。
- 注意:如果你已经有 Access Token 和 Refresh Token,权限变更后必须重新生成这些令牌。令牌的生成参见 "生成 Access Token 和 Refresh Token" 章节。
生成
Access Token 和 Refresh Token
-
进入以下网页:
https://www.dropbox.com/oauth2/authorize?token_access_type=offline&response_type=code&client_id=your_app_key
-
点击 "Next",在下一页点击 "Allow" 按钮。
-
会为你生成一个访问码,显示在下一页:
"Access Code Generated Enter this code into your_app_name to finish the process your_generated_access_code"
-
在终端执行以下命令获取 access token 和 refresh token。
务必在生成访问码后立即执行 curl 命令,因为访问码会很快过期。 如果 curl 命令返回 "invalid grant" 错误,请生成新的访问码(见上一步)。
curl https://api.dropbox.com/oauth2/token -d code=your_generated_access_code -d grant_type=authorization_code -u your_app_key:your_app_secret
-
curl 命令的结果是一个包含 "access_token" 和 "refresh_token" 的 json 文件:
{
"access_token": "sl.xxxxxxxxxxx"
"expires_in": 14400,
"refresh_token": "xxxxxx",
"scope": "files.content.read files.metadata.read",
"uid": "xxxxxx",
"account_id": "dbid:xxxx"
}