返回頂部
關(guān)閉軟件導(dǎo)航
位置:首頁(yè) > 資訊 > 其他>Authorize 屬性通過(guò)聲明的方式保護(hù)控制器或其部分方法

  [Authorize]publicclassCustomerController : Controller{ ...}

  如果未指定參數(shù),此屬性僅檢查用戶是否經(jīng)過(guò)身份驗(yàn)證。不過(guò)ASPCMS批量上傳內(nèi)容 ,此屬性支持 Roles 等其他屬性。Roles 屬性指明將對(duì)具有任一所列角色的用戶授予訪問(wèn)權(quán)限。如果需要多個(gè)角色,可以多次應(yīng)用 Authorize 屬性,也可以編寫自己的篩選器。

  [Authorize(Roles="admin, system"]publicclassBackofficeController : Controller{ ...}

  Authorize 屬性還可以視需要通過(guò) ActiveAuthenticationSchemes 屬性ASPCMS批量助手,接受一個(gè)或多個(gè)身份驗(yàn)證方案。

  [Authorize(Roles="admin, system"ASPCMS批量更新文章, ActiveAuthenticationSchemes="Cookie"]publicclassBackofficeController : Controller{ ...}

  ActiveAuthenticationSchemes 屬性是逗號(hào)分隔字符串,用于列出授權(quán)層將在當(dāng)前上下文中信任的身份驗(yàn)證中間件組件。也就是說(shuō),它聲明僅當(dāng)用戶通過(guò) Cookie 方案進(jìn)行身份驗(yàn)證并具有任一所列角色時(shí),才允許訪問(wèn) BackofficeController 類。如前所述,傳遞到 ActiveAuthenticationSchemes 屬性的字符串值必須與應(yīng)用程序啟動(dòng)時(shí)注冊(cè)的身份驗(yàn)證中間件一致。

  請(qǐng)注意,在 ASP.NET 2.0 中ASPCMS批量添加產(chǎn)品,身份驗(yàn)證中間件被替換為包含多個(gè)處理程序的服務(wù)。因此,身份驗(yàn)證方案是選擇處理程序的標(biāo)簽。

  若要詳細(xì)了解 ASP.NET Core 中的身份驗(yàn)證,建議參閱我在 2017 年 9 月發(fā)表的專欄文章“ASP.NET Core 中的 Cookie、聲明和身份驗(yàn)證”(msdn.com/magazine/mt842501)。

  授權(quán)篩選器

  系統(tǒng)提供的授權(quán)篩選器使用 Authorize 屬性提供的信息。此篩選器先于其他任何 ASP.NET Core 篩選器運(yùn)行,因?yàn)樗?fù)責(zé)檢查用戶能否執(zhí)行請(qǐng)求的操作ASPCMS批量添加欄目。如果用戶未經(jīng)授權(quán),篩選器會(huì)簡(jiǎn)化管道,并取消請(qǐng)求。

  可以創(chuàng)建自定義授權(quán)篩選器,但大部分情況下無(wú)需這樣做。實(shí)際上,最好配置默認(rèn)篩選器依賴的現(xiàn)有授權(quán)層。

  角色、權(quán)限和否決

  借助角色,可以根據(jù)用戶能夠執(zhí)行或不能執(zhí)行的操作,對(duì)應(yīng)用程序用戶輕松進(jìn)行分組。不過(guò),這種方法不是非常容易表達(dá);至少,還不足以滿足大部分新式應(yīng)用程序的需求。

  例如,假設(shè)為相對(duì)簡(jiǎn)單的授權(quán)體系結(jié)構(gòu),可以服務(wù)于網(wǎng)站的普通用戶,以及獲得授權(quán)可訪問(wèn)后端辦公系統(tǒng)軟件并更新內(nèi)容的 Power User。基于角色的授權(quán)層可以圍繞兩個(gè)角色(即用戶和管理員)進(jìn)行構(gòu)建,這些角色定義了每組可以訪問(wèn)的控制器和方法。

  涉及否決方面的細(xì)微區(qū)別時(shí),就會(huì)遇到問(wèn)題,因?yàn)檫@些區(qū)別描述了具有給定角色的用戶能夠執(zhí)行或不能執(zhí)行的操作。

  例如,可能有用戶喜歡訪問(wèn)后端辦公系統(tǒng)。但在這些用戶中,有的獲得授權(quán)只能編輯客戶數(shù)據(jù),有的獲得授權(quán)只能處理內(nèi)容,還有的獲得授權(quán)既能編輯客戶數(shù)據(jù),也能處理內(nèi)容(見(jiàn)圖 1)。

  圖 1:角色層次結(jié)構(gòu)

  角色實(shí)質(zhì)上是一種平面概念。如何平展圖 1 中所示的簡(jiǎn)單層次結(jié)構(gòu)?可以創(chuàng)建四個(gè)不同的角色(即 User、Admin、CustomerAdmin 和 ContentsAdmin),但只要否決數(shù)量變多,所需的角色數(shù)量就會(huì)大大增加。即使像這樣的簡(jiǎn)單練習(xí),也表明角色可能并不是處理授權(quán)的最有效方法(優(yōu)先考慮向后兼容性的簡(jiǎn)單方案和實(shí)例除外)。對(duì)于其他所有情況,要求則不同。下面開(kāi)始介紹基于策略的授權(quán)。

如果您覺(jué)得 Authorize 屬性通過(guò)聲明的方式保護(hù)控制器或其部分方法 這篇文章對(duì)您有用,請(qǐng)分享給您的好友,謝謝
文章地址:http://www.brucezhang.com/article/other/Authorizesxtgsmdfsbhkzqhqbfff.html
解放雙手無(wú)盡可能,有問(wèn)題添加天線貓微信
主站蜘蛛池模板: 四虎影院成人在线观看俺也去色官网| 欧美成人精品第一区| 国产成人一区二区精品非洲| 成人性生交大片免费看好| 成人综合久久综合| 成人毛片在线视频| 成人在线色视频| 亚洲欧美成人永久第一网站| 成人理论电影在线观看| 国产成人精品无码播放| 久久成人a毛片免费观看网站| 欧美在线成人午夜网站| 成人免费视频观看无遮挡| 亚洲欧美成人一区二区在线电影 | 窝窝视频成人影院午夜在线| 成人爽a毛片在线视频网站| 亚洲最大成人网色香蕉| 成人午夜短视频| 日本成人免费在线视频| 中文字幕成人乱码在线电影| 成人黄色小说网站| 亚洲成人福利网站| 国产成人麻豆亚洲综合无码精品 | 国产成人高清亚洲一区91| 久久成人免费大片| 国产成人亚洲综合色影视| 成人欧美一区二区三区黑人| 3d成人免费动漫在线观看| 亚洲国产成人精品无码区在线秒播 | 国产成人综合久久精品免费 | 国产成人亚洲综合在线| 成人国产在线24小时播放视频| 久久久久久亚洲av成人无码国产| 四虎成人精品一区二区免费网站| 国产成人精品久久综合| 天天在线天天看成人免费视频| 成人免费无码大片a毛片软件| 成人欧美一区二区三区| 成人午夜精品无码区久久| 精品欧美成人高清在线观看 | 成人av电影网站|