Google Drive的权限设计

简介: Google Drive的权限设计

关于google drive的权限设计,一开始看官方文档,搞的云里雾里的!

可能是对google drive不了解的关系,再加上没有参与设计过类似的平台化系统,所以对于它的权限设计内容,总觉得很绕~

停下来花了点时间仔细捋了一遍,发现这个设计还是非常优雅的,至于通用性,我就持保留态度了!

首先,我们来列出整套权限系统设计到的元素有哪几个:

  • account(帐号)

    • user
    • user group
    • domain
    • anyone
  • resource(资源)

    • file
    • folder
  • permission(权限设置)

    • role
    • type

咱们简单的就这么先罗列出来。

首先我们先看一下三个主要的元素的关系:

resource  ------>  permission  ------> account [ ------>  resource]
          1     n              1     1           n     n

解释:

  • 一个资源对应多个权限设置
  • 一个资源的metadata中还会包含多个特定帐号(owners, sharingUser, lastModifyingUser)
  • 一个权限设置绑定到多个帐号(根据type来确定和帐号的绑定类型,根据domain和emailAddress来确定具体哪个或哪些帐号)
  • 一个权限设置会预先设定好几个拥有不同操作范围的角色(role),具体关系可以看官方文档
  • 最终,帐号就会和资源关联上,就是这么绕!

现在应该已经解释的很清楚了吧?上面的关系图中最后的account与resource的关系其实是根据前面的关系推出来的,而不是直接可以获取到的(除了在resource的metadata中的那几个特定帐号字段,个人猜测之所有会有这几个metadata,是为了性能)。

不能确定这么设计是好还是坏,但整体来看,其实并不算复杂。

相关文章
|
编解码 数据可视化
Google Earth Engine——gee文件导出到drive:影像等大文件导出100000000超限解决办法
Google Earth Engine——gee文件导出到drive:影像等大文件导出100000000超限解决办法
2136 0
Google Earth Engine——gee文件导出到drive:影像等大文件导出100000000超限解决办法
|
存储 Android开发 iOS开发
|
Android开发
Android中Google Drive显示黑屏问题分析
一、问题现象 在contacts中添加一个新的联系人,为新的联系人选择一个icon,在弹出的documents窗口中选择drive,在drive中选择一个图片,然后出现一段时间的黑屏。
1241 0
|
JavaScript PHP
在Google Drive上建立免费静态网站
    现今建立一个属于自己的网站已经是一件很普遍和简单的事情了。你可以选择买空间,买域名,你也可以使用免费空间,免费域名。你可以选择动态的php wordpress,joomla或者是静态的网站(如使用jekyll or octopress部署到github上)。今天我将介绍如何在Google Drive上建立一个静态的网站,其实和github很相似,都支持js。不得不说google走的
2256 0
|
3月前
|
数据可视化 定位技术 Sentinel
如何用Google Earth Engine快速、大量下载遥感影像数据?
【2月更文挑战第9天】本文介绍在谷歌地球引擎(Google Earth Engine,GEE)中,批量下载指定时间范围、空间范围的遥感影像数据(包括Landsat、Sentinel等)的方法~
544 0
如何用Google Earth Engine快速、大量下载遥感影像数据?

热门文章

最新文章