全部产品

搭建一个已有用户体系的云盘系统

更新时间:2020-11-06 15:25:03

本文档介绍如何基于PDS搭建一个拥有已有用户体系的云盘系统。云盘系统将使用已有的用户登录界面,适用于已有用户体系的应用对接。

1. 准备工作

  • 开通网盘与相册服务。如果没有开通,请到产品详情页面开通。
  • 产品授权。第一次登录控制台: https://pds.console.aliyun.com, 会弹出授权提示,需要同意授权。如果已经授权过,请忽略。

2. 创建域

域(domain):是一个独立的资源空间,比如一个分发系统或一个网盘系统。

2.1登录PDS官网控制台,创建一个域。

点击”创建域”按钮, 打开创建域面板

1

数据存储方式,选择“标准模式”。

初始化云盘: 启用初始化云盘设置后。用户登录后可自动拥有云盘空间。

3. 服务端调用管理接口接入

服务端有两种方式获取最终用户的access_token:

  1. 通过阿里云AccessKey方式
  2. 通过JWT方式

3.1 AccessKey方式:

3.1.1 创建子用户生成AccessKey并授权

RAM 控制台 https://ram.console.aliyun.com 创建用户,并创建AK,并授予相关权限( GetToken权限 )。

2

点击创建用户按钮

3

勾选编程访问。

4

创建好后注意保存AccessKeyID和AccessKeySecret,只出现一次。

3.1.2 给子用户授权

在用户列表找到刚才创建的用户,添加权限。

5

搜索找到 AliyunPDSFullAccess,添加。

a.png

至此,该用户已经拥有调用 PDS 接口的所有权限。

注意:生产环境下建议使用自定义的权限策略,尽量缩小权限的范围,只保留调用需要的接口的权限,遵循最小权限原则。

最后调用接口获取最终用户access_token:AccessKey获取用户token

3.2 JWT方式:

3.2.1 创建应用

进入域详情,在应用列表界面,创建一个应用:

k1

3.2.2 设置公钥

应用创建好后,点击”设置公钥”:

k3

生成公私钥:k5

生成公私钥后,记得复制私钥,自己保存。然后点确定即可。

k4

最后调用接口获取最终用户access_token:JWT获取用户token

4. 集成 SDK

4.1 方式一:使用自己开发的云盘应用界面

7

接入步骤:

  1. 用户先通过业务系统自己的登录页面认证。
  2. 认证成功后,服务端通过内部的UserID获取到最终用户在PDS的access_token。
  3. 服务端将access_token返回给客户端。客户端通过AccessToken 访问 PDS的业务API

4.2方式二:使用官方PDSBasicUI应用

如果使用官方 BasicUI 应用, 需要先允许 BasicUI 访问您的域:

s

然后需要以超级管理员登入一次,以同步数据:

44

用例图:

10

  • 用户先通过已有的登录页面登录。
  • 需要打开官方 BasicUI 应用界面的时候,登录后界面window.open('https://'+domainId+'.apps.aliyunpds.com/#/accesstoken')
  • 登录后界面等待 BasicUI postMessage 回来表示 Ready,
  • 登录后界面请求服务端使用 “自定义应用JWT接入”(近期提供)签发 AccessToken。
  • 登录后界面拿到 AccessToken 后,postMessage 给BasicUI。
  • BasicUI 拿到 AccessToken 后,通过AccessToken 访问 PDS的业务API