日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

开源软件加密授权方案_身份验证和授权作为开源解决方案服务

發(fā)布時間:2023/12/3 编程问答 43 豆豆
生活随笔 收集整理的這篇文章主要介紹了 开源软件加密授权方案_身份验证和授权作为开源解决方案服务 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

開源軟件加密授權方案

通過實施身份驗證和授權(a&a)機制為所有用戶數據設計集中式服務。 我將分享我的經驗并最終確定解決方案的結論。

該設計包括客戶端(Web應用程序)和服務器(A&A中心)。

術語:



1.驗證:

認證是系統(tǒng)可以安全地標識其用戶的機制。 回答“用戶是誰?”的問題 身份驗證還包括SSO(單點登錄)。 一種機制,使用戶能夠一次登錄并獲得所有參與資源的“免費通行證”,而無需附加標志。

2.授權:

授權是驗證用戶是否具有訪問某些資源或部分的角色/權限的過程。
回答問題:用戶X是否有權訪問資源/操作Y?

3.受保護的客戶:

通常,a&a機制與安全的客戶端框架配合使用:Spring安全性,Apache Shiro,Wicket身份驗證等。 我將在稍后的文章中對此進行回顧。

要考慮的主要主題:

  • 認證服務器
  • 安全的Web客戶端框架
  • 授權職責
  • 完整的解決方案提供商:

    在我的研究中,我遇到了完整的解決方案提供商:

    • Open AM(稱為OpenSSO)–他們聲稱是一個開源項目。 但是過了一會兒,您發(fā)現它確實是一個開放源代碼,但并非用于商業(yè)用途。 您需要為他們的a&a配套支付大量的$$$。
    • 人群– Atlassian。 似乎是一種快速,良好且非常便宜的解決方案。 但是,我們仍在走向完全商業(yè)化的開源解決方案。 這個也不符合我們的需求。

    受保護的客戶:

    • Spring安全性:非常流行并且廣泛使用。 當您想要擁有除基本設置以外的更多功能時,Spring Security需要大量的xml配置。
    • 另外,如果您需要支持權限(而不僅是角色),Spring安全性不提供現成的支持。

    • Apache Shiro:–很棒的產品。 開箱即用的配置和權限支持非常簡單。
    • 問題在于Shiro的社區(qū)仍然很小,而且這個項目還很新。

    解:

  • 認證服務器:

    我遇到了CAS(中央身份驗證服務)–偉大且完全開源的項目。 CAS提供SSO解決方案并支持流行的協(xié)議,例如SAML,OPENID,Auth。

    因此,如果我們將CAS與LDAP服務器集成在一起(以保存用戶的信息),我們就可以實現身份驗證模型(并且開箱即用地擁有SSO)。

    CAS基于Spring,如果我們要進行自定義更改,非常容易擴展。 您可以輕松下載源代碼,并根據需要對其進行自定義。

    CAS配置非常容易并且有據可查。

  • 受保護的客戶端框架:

    我選擇了Spring Security。 三個原因:

  • 該Web應用程序是基于Spring的。
  • 受歡迎和背后的社區(qū)綽綽有余。
  • 與CAS完美集成。
  • *我提到Spring安全缺乏權限。 但是有一種解決方法。 可以在此處找到簡短的示例: http : //en.tekstenuitleg.net/blog/spring-security-with-roles-and-rights

    到目前為止,我們有Spring Security,Cas和LDAP(OpenLdap)服務器。

  • 授權職責:

    那可能很棘手,取決于您的項目要求。 您可以通過兩種方式配置授權流:

  • 集中授權:

    CAS支持屬性。 這意味著您可以在返回的響應中添加其他屬性(角色/權限)(通過SAML,這非常簡單)。

    您實際上可以選擇并配置從哪個源中提取其他屬性(數據庫,Ldap,Active Directory等)。

    這是一個非常簡潔而優(yōu)雅的解決方案–一個中心,可以按要求提供每個用戶的身份驗證和授權角色/權限。

  • 分散授權:

    您可以通過擴展UserDetails接口來配置Spring Security。 然后,讓每個應用程序在成功通過身份驗證后控制授權邏輯。

    *是否存在每個Web客戶端應用程序應對其授權邏輯負責還是對其進行集中管理的公開辯論(正如我在第一點所述)。

  • 我建議根據您的項目需求用例來確定正確的態(tài)度。

    最后,我們有了一個完全用于商業(yè)用途的a&a開源解決方案。

    參考: IdanFridman.com博客上的JCG合作伙伴 Idan Fridman提供的身份驗證和授權作為開源解決方案服務 。

    翻譯自: https://www.javacodegeeks.com/2013/11/authentication-and-authorization-as-an-open-source-solution-service.html

    開源軟件加密授權方案

    總結

    以上是生活随笔為你收集整理的开源软件加密授权方案_身份验证和授权作为开源解决方案服务的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。