欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

Ids4中分模塊保護(hù)資源API怎么用

小編給大家分享一下Ids4中分模塊保護(hù)資源API怎么用,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

公司主營(yíng)業(yè)務(wù):成都網(wǎng)站制作、成都網(wǎng)站設(shè)計(jì)、外貿(mào)營(yíng)銷網(wǎng)站建設(shè)、移動(dòng)網(wǎng)站開(kāi)發(fā)等業(yè)務(wù)。幫助企業(yè)客戶真正實(shí)現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競(jìng)爭(zhēng)能力。創(chuàng)新互聯(lián)公司是一支青春激揚(yáng)、勤奮敬業(yè)、活力青春激揚(yáng)、勤奮敬業(yè)、活力澎湃、和諧高效的團(tuán)隊(duì)。公司秉承以“開(kāi)放、自由、嚴(yán)謹(jǐn)、自律”為核心的企業(yè)文化,感謝他們對(duì)我們的高要求,感謝他們從不同領(lǐng)域給我們帶來(lái)的挑戰(zhàn),讓我們激情的團(tuán)隊(duì)有機(jī)會(huì)用頭腦與智慧不斷的給客戶帶來(lái)驚喜。創(chuàng)新互聯(lián)公司推出北屯免費(fèi)做網(wǎng)站回饋大家。

書(shū)接上文,上回書(shū)咱們說(shuō)到了IdentityServer4(下文統(tǒng)稱Ids4)官方已經(jīng)從v3更新升級(jí)到了v4版本,我的Blog.Idp項(xiàng)目也做了同步更新,主要是針對(duì)快速啟動(dòng)UI做的對(duì)應(yīng)修改,畢竟Ids4類庫(kù)nuget包更新就是一鍵的事兒

更新的內(nèi)容涉及的比較多,主要是對(duì)一些屬性的優(yōu)化,亦或者是對(duì)ASP.NetCore更兼容等等,其中我個(gè)人認(rèn)為最核心也最重要的一個(gè)更新,就是新增了ApiResourceScopes表,進(jìn)一步細(xì)化了對(duì)資源服務(wù)器的限制顆粒度,總結(jié)來(lái)說(shuō):

之前我們是一個(gè)客戶端只能針對(duì)一個(gè)資源服務(wù)器來(lái)操作,那該資源服務(wù)器下的所有api都會(huì)被保護(hù),當(dāng)然也都會(huì)被控制。所以是面向整個(gè)ApiResources的。

但是現(xiàn)在做了細(xì)化以后,一個(gè)資源服務(wù)器可以分隔出多個(gè)作用域Scope,那這樣的話,我們就可以定義多個(gè)客戶端,分模塊的去訪問(wèn)同一個(gè)統(tǒng)一的資源服務(wù)器。

比如BlogVue項(xiàng)目,訪問(wèn)Blog相關(guān)的api;TibugNuxt項(xiàng)目,訪問(wèn)Tibug相關(guān)的api。

這里先不要著急的抬杠這么擴(kuò)展的好處和優(yōu)劣點(diǎn),等到自己有需要,或者自己有這樣的需求的時(shí)候就明白了,本文不做解釋,只是一把梭的講解如何配置三端,從而滿足分模塊保護(hù)資源API的目的。

本文我就用http://vueblog.neters.club項(xiàng)目舉例,將Blog.Core資源服務(wù)器中定義一個(gè)Blog模塊,來(lái)實(shí)現(xiàn)基于Scope的策略授權(quán)方案配置,主要是針對(duì)三端進(jìn)行配置。


Ids4中分模塊保護(hù)資源API怎么用    
1、Blog.Idp認(rèn)證中心配置

     

首先我們需要定義一個(gè)單獨(dú)的資源服務(wù)器作用域,然后將這些作用域配置到資源上:

// v4更新public static IEnumerable<ApiScope> GetApiScopes(){    return new ApiScope[] {         new ApiScope("blog.core.api"),         new ApiScope("blog.core.api.BlogModule"),    };}
public static IEnumerable<ApiResource> GetApiResources(){    // blog.core 項(xiàng)目    return new List<ApiResource> {        new ApiResource("blog.core.api", "Blog.Core API") {            // include the following using claims in access token (in addition to subject id)            //requires using using IdentityModel;            UserClaims = { JwtClaimTypes.Name, JwtClaimTypes.Role,"rolename" },                        // v4更新            Scopes={ "blog.core.api","blog.core.api.BlogModule"},
           ApiSecrets = new List<Secret>()            {                new Secret("api_secret".Sha256())            },        }    };}
 

這些基礎(chǔ)代碼肯定都能看的懂吧,只要你學(xué)會(huì)Ids4,肯定都明白,那對(duì)應(yīng)到數(shù)據(jù)庫(kù)里,就是這樣的:

Ids4中分模塊保護(hù)資源API怎么用

Ids4中分模塊保護(hù)資源API怎么用

然后需要配置客戶端Client,將我們需要的Scope賦給指定的客戶端:

Ids4中分模塊保護(hù)資源API怎么用

對(duì)應(yīng)的數(shù)據(jù)庫(kù)也是很簡(jiǎn)單:

Ids4中分模塊保護(hù)資源API怎么用

這里給大家再啰嗦一句,要學(xué)好Ids4,數(shù)據(jù)庫(kù)表結(jié)構(gòu)一定要做到了然于胸,什么數(shù)據(jù)對(duì)應(yīng)什么表,什么錯(cuò)誤對(duì)應(yīng)什么配置,要做到心中有數(shù)。

到這里認(rèn)證中心就配置完了,接下來(lái)就是客戶端了。


   
Ids4中分模塊保護(hù)資源API怎么用      
2、Blog.Vue配置認(rèn)證連接

     

這個(gè)地方很簡(jiǎn)單,和之前幾乎一模一樣,只是在scope作用域上,改一下資源的域就行:

  constructor () {    super({      authority: 'https://ids.neters.club',      client_id: 'blogvuejs',      redirect_uri: 'http://localhost:6688/callback',      response_type: 'id_token token',      scope: 'openid profile roles blog.core.api.BlogModule',      post_logout_redirect_uri: 'http://localhost:6688'    })  }
 

就是代碼中的 blog.core.api.BlogModule 這個(gè)Scope。

那就剩下最后一步了,配置資源服務(wù)器,既然使用到了作用域Scope,那就需要針對(duì)具體的作用域,配置具體的策略方案。


   
Ids4中分模塊保護(hù)資源API怎么用      
3、Blog.Core增加Scope策略授權(quán)

     

這里先說(shuō)下,為了達(dá)到封裝的效果呢,我把認(rèn)證和授權(quán)分開(kāi)寫(xiě)了,結(jié)構(gòu)是這樣的:

Ids4中分模塊保護(hù)資源API怎么用

既然我們現(xiàn)在是增加了作用域Scope,那就是需要一個(gè)基于Scope的策略授權(quán)方案,在授權(quán)擴(kuò)展類AuthorizationSetup.cs中,添加代碼:

 // 4、基于 Scope 策略授權(quán) services.AddAuthorization(options => {     // 博客模塊的策略     options.AddPolicy("Scope_BlogModule_Policy", builder =>     {         //客戶端Scope中包含blog.core.api.BlogModule才能訪問(wèn)         builder.RequireScope("blog.core.api.BlogModule");     });
    // 其他模塊的策略     // ...
 });
 

我們可以根據(jù)需要添加多個(gè)模塊,每個(gè)模塊會(huì)對(duì)應(yīng)一個(gè)Scope,那每個(gè)Scope又對(duì)應(yīng)一個(gè)客戶端Client,這樣就實(shí)現(xiàn)了項(xiàng)目基本的授權(quán)方案,認(rèn)證相關(guān)的配置不用動(dòng)。

然后只需要在指定的控制器或者Action上配置權(quán)限特性就行:

Ids4中分模塊保護(hù)資源API怎么用

到這里基本就搞定了,調(diào)試后,可以發(fā)現(xiàn)新生成的Token令牌也發(fā)生了變化:

Ids4中分模塊保護(hù)資源API怎么用

可能你會(huì)說(shuō),那我已經(jīng)使用了復(fù)雜的基于數(shù)據(jù)庫(kù)的策略授權(quán),為啥還要搞這個(gè)呢?

我是這么想的,畢竟這個(gè)面向scope開(kāi)發(fā)是可以在ids4可控的,細(xì)分到客戶端的,這么配置好后,就不用配置復(fù)雜的數(shù)據(jù)庫(kù)了,當(dāng)然這一般都是針對(duì)前臺(tái)的展示項(xiàng)目,后端Admin項(xiàng)目肯定需要很復(fù)雜的數(shù)據(jù)庫(kù)配置更好。

以上是“Ids4中分模塊保護(hù)資源API怎么用”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!

當(dāng)前題目:Ids4中分模塊保護(hù)資源API怎么用
路徑分享:http://aaarwkj.com/article38/ijhgsp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供自適應(yīng)網(wǎng)站、微信公眾號(hào)、網(wǎng)站改版全網(wǎng)營(yíng)銷推廣、企業(yè)建站、響應(yīng)式網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

網(wǎng)站托管運(yùn)營(yíng)
日韩黄av在线免费观看| 亚洲欧美日韩乱码综合久久| 亚洲中文字幕乱码丝袜在线精品| 天天天干夜夜添狠操美女| 久久精品国产亚洲av超一| 亚洲av日韩精品久久久| 91欧美日韩国产在线观看| 国内精品av在线观看| 日本激情诱惑免费在线播放 | 久久97精品人人做人人爽| 欧美午夜福利一级高清| 亚洲综合偷拍欧美一区色| 女人的天堂av免费在线观看| 亚洲二区三区四区在线| 国产精品青青草原在线| 久久成人日韩电影午夜| 欧美日韩精品成人大片| 国产亚洲综合另类色专区| 亚洲av丰满熟妇在线观看| 婷婷久久五月综合激情| 天天操天天干夜夜射| 国产精品一区二区三区在线| 中文字幕一区二区三区久久| 国产日产亚洲综合一区| 欧美精品国产欧美精品国产| 国产福利三级在线观看| 亚洲情色精品国产一区| 久久免费看少妇高潮av| 日本高清免费黄色录像| 欧美劲爆三级免费观看| 黄片欧美精品在线观看| 国产精品三级久久久| 91精品一久久香蕉国产| 成人国产午夜福利网| 日韩欧美高清一区二区| 中文人妻熟妇乱又伦精品| 日韩高清在线亚洲专区不卡| 开心激情欧美一区二区| 精品少妇人妻av蜜桃| 欧美色欧美亚洲另类视频| 五月天色婷婷亚洲综合一区|