国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專(zhuān)欄INFORMATION COLUMN

一種新的 RESTful 權(quán)限設(shè)計(jì)討論

Zack / 2189人閱讀

摘要:請(qǐng)求權(quán)限映射根據(jù)的相關(guān)風(fēng)格規(guī)范我們將請(qǐng)求映射為以下幾種操作權(quán)限控制器映射如果后端以模式進(jìn)行開(kāi)發(fā)那么我們可以映射如下控制器

請(qǐng)求權(quán)限映射

根據(jù)RESTful的相關(guān)風(fēng)格規(guī)范, 我們將請(qǐng)求映射為以下幾種操作

GET     /users/                ----->  `list.users` 
GET     /users/:id/            ----->  `retrieve.users`
POST    /users/                ----->  `create.users`
PUT     /users/:id/password/   ----->  `replace.users`
PATCH   /users/:id/            ----->  `update.users`
DELETE  /users/:id/            ----->  `destroy.users`
權(quán)限控制器映射

如果后端以MVC模式進(jìn)行開(kāi)發(fā), 那么我們可以映射如下控制器

`list.users`        ----->  list(users) 
`retrieve.users`    ----->  retrieve(user,id)  
`create.users`      ----->  create(users)       
`replace.users`     ----->  replace(users,id,field)   
`update.users`      ----->  update(users,id)           
`destroy.users`     ----->  destroy(users,id)           
鑒權(quán)流程

權(quán)限的管理采用傳統(tǒng)的RBAC模式

身份驗(yàn)證,返回具體user或者anonymous,接下來(lái)我們把這一步返回的user都作為正常user

驗(yàn)證請(qǐng)求權(quán)限,即上述驗(yàn)證請(qǐng)求權(quán)限映射

驗(yàn)證資源存在性與所屬權(quán), 這里存在爭(zhēng)議.

如果放到控制器之前, 那么可能會(huì)出現(xiàn)格外數(shù)據(jù)庫(kù)查詢(xún),同時(shí)會(huì)增加代碼上的復(fù)雜性, 但是可以把所有鑒權(quán)過(guò)程放到一起.

如果放到控制器中,鑒權(quán)過(guò)程分開(kāi)了,由于不同的資源可能有不同的所屬權(quán)判斷標(biāo)準(zhǔn),這樣可以增加靈活性.

討論點(diǎn)

資源存在性與所屬權(quán)放到控制器里還是作為中間件放到控制器之前?

請(qǐng)求權(quán)限映射有哪些需要改進(jìn)的地方?

能否將整個(gè)認(rèn)證鑒權(quán)流程規(guī)范化?

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/38595.html

相關(guān)文章

  • 詳解REST架構(gòu)風(fēng)格

    摘要:但是遠(yuǎn)遠(yuǎn)不僅是指的風(fēng)格,它是一種網(wǎng)絡(luò)應(yīng)用的架構(gòu)風(fēng)格。參考用定位資源在架構(gòu)風(fēng)格中,用來(lái)指定一個(gè)資源。完整狀態(tài)碼列表如何設(shè)計(jì)在過(guò)去不使用架構(gòu)風(fēng)格的時(shí)候,如果我們要設(shè)計(jì)一個(gè)系統(tǒng),會(huì)以操作為出發(fā)點(diǎn),然后圍繞它去建設(shè)其他需要的東西。 引言 作為Web開(kāi)發(fā)者,你可能或多或少了解一些REST的知識(shí),甚至已經(jīng)非常習(xí)慣于它,以至于在正式地學(xué)習(xí)REST的時(shí)候,你可能心里會(huì)想:本來(lái)就是這樣做的啊,不然還能怎...

    ChanceWong 評(píng)論0 收藏0
  • 阿里云前端周刊 - 第 29 期

    摘要:前端魔法堂異常不僅僅是在學(xué)習(xí)時(shí)我們會(huì)被告知異常和錯(cuò)誤是不一樣的,異常是不會(huì)導(dǎo)致進(jìn)程終止從而可以被修復(fù),但錯(cuò)誤將會(huì)導(dǎo)致進(jìn)程終止因此不能被修復(fù)。 推薦 1. RESTful API 設(shè)計(jì)最佳實(shí)踐 https://blog.philipphauer.de/... 項(xiàng)目資源的URL應(yīng)該如何設(shè)計(jì)?用名詞復(fù)數(shù)還是用名詞單數(shù)?一個(gè)資源需要多少個(gè)URL?用哪種HTTP方法來(lái)創(chuàng)建一個(gè)新的資源?可選參數(shù)應(yīng)...

    Jaden 評(píng)論0 收藏0
  • 基于RESTful API 怎么設(shè)計(jì)用戶(hù)權(quán)限控制?

    摘要:原文鏈接基于怎么設(shè)計(jì)用戶(hù)權(quán)限控制前言有人說(shuō),每個(gè)人都是平等的也有人說(shuō),人生來(lái)就是不平等的在人類(lèi)社會(huì)中,并沒(méi)有絕對(duì)的公平,一件事,并不是所有人都能去做一樣物,并不是所有人都能夠擁有。 原文鏈接:BlueSun | 基于RESTful API 怎么設(shè)計(jì)用戶(hù)權(quán)限控制? 前言 有人說(shuō),每個(gè)人都是平等的;也有人說(shuō),人生來(lái)就是不平等的;在人類(lèi)社會(huì)中,并沒(méi)有絕對(duì)的公平,一件事,并不是所有人都能去做;...

    sumory 評(píng)論0 收藏0
  • 基于RESTful API 怎么設(shè)計(jì)用戶(hù)權(quán)限控制?

    摘要:原文鏈接基于怎么設(shè)計(jì)用戶(hù)權(quán)限控制前言有人說(shuō),每個(gè)人都是平等的也有人說(shuō),人生來(lái)就是不平等的在人類(lèi)社會(huì)中,并沒(méi)有絕對(duì)的公平,一件事,并不是所有人都能去做一樣物,并不是所有人都能夠擁有。 原文鏈接:BlueSun | 基于RESTful API 怎么設(shè)計(jì)用戶(hù)權(quán)限控制? 前言 有人說(shuō),每個(gè)人都是平等的;也有人說(shuō),人生來(lái)就是不平等的;在人類(lèi)社會(huì)中,并沒(méi)有絕對(duì)的公平,一件事,并不是所有人都能去做;...

    X1nFLY 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<