我對Spring安全性有最基本的想法。我想爲應用程序開發多個微服務,我希望使用可以在所有微服務中使用的一點身份驗證和授權。爲了使它更具體,我想創建一個通用的過濾器,只能在每個微服務應用程序的web.xml中使用。我不想在所有微服務中使用以下內容。如何使用Spring Security爲微服務創建自定義安全篩選器
彈簧security.xml文件
<http>
<intercept-url pattern="/index*" access="ROLE_USER" />
<access-denied-handler error-page="/customaccessdenied.jsp" />
<intercept-url pattern="/manage*" access="ROLE_ADMIN" />
<form-login default-target-url="/index" always-use-default-target="true"/>
<logout/>
<!-- <remember-me/> -->
</http>
<authentication-manager>
<authentication-provider>
<user-service>
<user name="admin" password="admin" authorities="ROLE_ADMIN,ROLE_USER" />
<user name="deb" password="deb" authorities="ROLE_USER" />
</user-service>
</authentication-provider>
</authentication-manager>
web.xml
=======
<!-- Spring Security -->
<filter>
<filter-name>springSecurityFilterChain</filter-name>
<filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>
</filter>
<filter-mapping>
<filter-name>springSecurityFilterChain</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
我不想使用上述所有微服務。我的應用程序應該看起來像圖像下面。
請幫助我如何去實現它,如果您有任何示例應用程序,請給我提供的鏈接。整個問題的重點是將所有安全相關的東西放在一個地方,並使用該庫和自定義篩選所有微服務的web.xml。
我想要實現這樣的
<filter>
<filter-name>mySecurityFilterChain</filter-name>
<filter-class>com.world.india.DelegatingFilterProxy</filter-class>
</filter>
<filter-mapping>
<filter-name>mySecurityFilterChain</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
請我需要你在這方面的幫助。希望這會對其他人有所幫助。
對我**「我想創造一個只能在每一個微服務應用程序的web.xml中使用的通用篩選我做的。不想在所有微服務中使用以下內容「**聽起來像是一個矛盾。你能否詳細說明一下。 – jah
您需要一個單獨的服務進行身份驗證,以便可以將所有未經授權的請求定向到可以暴露REST API或LogIn頁面的請求。所有其他微服務和Web應用程序只應只允許授權請求。這可以在配置文件中設置。這樣,所有與授權相關的代碼都將駐留在單個模塊中。 –