1. 程式人生 > >shiro的多資料來源和認證策略

shiro的多資料來源和認證策略

今天在學習shiro,順便做了下筆記, 採用多資料來源的意義:是為了保證資料的安全性。 第一種方式: 第一步:書寫多個realm實現類 第二步:SpringIOC容器中完成想用的bean配置 第三部:securityManager的bean中設定一個realms,並且通過集合物件完成屬性的注入。 第二種方式: 第一步:springIOC容器中配置一個認證器,ModularRealmAuthenticator 第二步:bean的realms屬性完成注入,是通過ModularRealmAuthenticator的realm完成屬性的注入。 第三步:securityManager當中注入一個authenticator屬性,告知安全管理器,我使用的具體的認證器例項。
認證策略: 1、FirstSuccessfulStrategy:只要有一個Realm驗證成功即可,只返回第一個Realm身份驗證成功的認證資訊,其他的忽略; 2、AtLeastOneSuccessfulStrategy:只要有一個Realm驗證成功即可,和FirstSuccessfulStrategy不同,將返回所有Realm身份驗證成功的認證資訊; 3、AllSuccessfulStrategy:所有Realm驗證成功才算成功,且返回所有Realm身份驗證成功的認證資訊,如果有一個失敗就失敗。 ModularRealmAuthenticator預設是AtLeastOneSuccessfulStrategy策略