ONLYOFFICE許可權開發之二

2021-08-18 18:43:25 字數 2161 閱讀 3066

登入使用者,對於已經進行了許可權設定的文件,將根據許可權資料庫,比對使用者名稱,當與使用者有關時,就顯示相對應的許可權,當都與登入使用者無關時,則顯示拒絕訪問;

對於未登入使用者,已經設定了許可權的文件,都將顯示拒絕訪問;

對於登入和未登入使用者,未進行許可權設定的文件,則顯示全部允許。

如果是使用者自己上傳的,則全部允許。

下圖登陸使用者和未登陸使用者箭頭指反了。

許可權用casbin進行。

//提供給列表頁的table中json資料

func (c *onlycontroller) getdata()

c.data["uid"] = user.id

useridstring = strconv.formatint(user.id, 10)

} var myres string

if useridstring != ""

myresall := e.getpermissionsforuser("") //取出所有設定了許可權的資料

var err error

docs, err := models.getdocs()

if err != nil

link := make(onlylink, 0)

docxslice := make(docxlink, 0)

for _, w := range docs

linkarr := make(onlylink, 1)

linkarr[0].id = w.id

linkarr[0].code = w.code

linkarr[0].title = w.title

linkarr[0].label = w.label

linkarr[0].end = w.end

linkarr[0].principal = w.principal

linkarr[0].uid = w.uid

linkarr[0].created = w.created

linkarr[0].updated = w.updated

for _, v := range attachments

}for _, k := range myres

}} else }}

docxarr[0].id = v.id

docxarr[0].title = v.filename

if path.ext(v.filename) == ".docx" || path.ext(v.filename) == ".docx" || path.ext(v.filename) == ".doc" || path.ext(v.filename) == ".doc" else if path.ext(v.filename) == ".xlsx" || path.ext(v.filename) == ".xlsx" || path.ext(v.filename) == ".xls" || path.ext(v.filename) == ".xls" else if path.ext(v.filename) == ".pptx" || path.ext(v.filename) == ".pptx" || path.ext(v.filename) == ".ppt" || path.ext(v.filename) == ".ppt" else if path.ext(v.filename) == ".pdf" || path.ext(v.filename) == ".pdf" else if path.ext(v.filename) == ".txt" || path.ext(v.filename) == ".txt"

} linkarr[0].docxlink = docxslice

docxslice = make(docxlink, 0) //再把slice置0

} c.data["json"] = link //products

c.servejson()

}

開發平台之許可權設計

1 不同的人具有不同的許可權,不同的人擁有不同的身份 管理員 某個崗位許可權 某個特定群組 某個特定角色 使用者許可權身份多樣性 2 許可權的 方式不同,比如某條記錄的許可權 頁面的元素操作許可權 選單許可權。許可權資源的多樣性 3 複雜系統具有分級管理員的特徵,許可權的轉移 臨時授權與收回 角色許...

iOS開發之註冊推送通知許可權

1 首先在工程設定開啟通知許可權 push notifications開關開啟 2 註冊通知許可權,在此步驟會彈出使用者授權提示 import if uidevice currentdevice systemversion floatvalue 10.0 else if uidevice curre...

mysql 開發許可權 mysql 開發鏈結許可權

1.xshell鏈結伺服器,輸入命令進入mysql mysql u root p 2.使用 mysql庫 use mysql 3.檢視使用者表 select host user from user 4.更新使用者表 update user set host where user root limit...