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

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

1. 准备工作

  • 开通网盘与相册服务。如果没有开通,请到产品详情页面开通。

  • 产品授权。第一次登录控制台: https://pds.console.aliyun.com, 会弹出授权提示,需要同意授权。如果已经授权过,请忽略。

2. 创建域

说明

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

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

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

image

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

说明

用户个人空间: 启用用户个人空间设置后。用户第一次登录成功后,系统会自动为其创建一个云盘空间。

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

说明

服务端有两种方式获取最终用户的 access_token: 通过阿里云AccessKey方式通过JWT方式

3.1 AccessKey方式:

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

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

image

点击创建用户按钮

image

勾选OpenAPI调用访问。

4

创建好后注意保存AccessKeyIDAccessKeySecret,只出现一次。

3.1.2 给子用户授权

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

image

搜索找到 AliyunPDSFullAccess,添加。

image

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

说明

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

最后调用接口获取最终用户AccessTokenAccessKey调接口接入

3.2 JWT方式:

3.2.1 创建应用

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

k1

3.2.2 设置公钥

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

k3

生成公私钥:k5

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

k4

最后调用接口获取最终用户 AccessTokenJWT应用接入

4. 集成 SDK

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

image

接入步骤:

  1. 用户先通过业务系统自己的登录页面认证。

  2. 认证成功后,服务端通过内部的UserID获取到最终用户在PDS的 AccessToken

  3. 服务端将AccessToken返回给客户端。客户端通过 AccessToken 访问 API概览

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

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

s

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

44

用例图:

image

  • 用户先通过已有的登录页面登录。

  • 需要打开官方 BasicUI 应用界面的时候,登录后界面window.open('https://'+domainId+'.apps.aliyunpds.com/accesstoken?origin='+location.origin)

  • 登录后界面等待 BasicUI postMessage 回来表示 Ready。

  • 登录后界面请求服务端使用 “JWT应用接入” 签发 AccessToken。

  • 登录后界面拿到 AccessToken 后,postMessage 给BasicUI。

  • BasicUI 拿到 AccessToken 后,通过AccessToken 访问 API概览