abp,對swagger-ui 界面進行權限控制

abp項目默認繼承swagger,但我們不想隨意的把我們的接口文檔暴漏給外部,這樣是極其不安全的;

但,我在網上找了一圈,針對.net的解決方案我反正是沒找到,沒辦法,最後自己想了個招兒,我讓api在生產部署的時候不暴漏,只允許在我們的測試環境上纔可以查看;

其實,很簡單,就是對環境變量進行一下判斷一下就可以了。

 

 關鍵代碼就是:_hosttingEnvironment.EnvironmentName == "Production" ? "Prod" : "";

然後,在項目文件夾下自定義一個indexProd.html文件,內容爲【無權查看】,當然了這個內容完全是可以自定義的:)

 

 測試一下:

【開發環境下顯示】

 

 ok,正常顯示,方便我們開發進行調試和查看。

【生產環境下】

 

 歐克,完美屏蔽掉接口文檔。

【後記】

上家公司當時有提出過,不想暴漏這些接口文檔在生產環境中,當時沒想到好的方式,不知道怎麼改,現在終於腦袋開竅了,哈哈哈。。。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章