我有一個關於春季安全和Spring緩存問題。說我有一個方法,我已經標註了@PreAuthorize( 「條件」),並@Cacheable(...)的方法,這樣Spring:@PreAuthorize優先於@Cacheable嗎?
@PreAuthorize("some authorization check")
@Cacheable(....)
public String calculate() {
....
}
不@PreAuthorize(http://docs.spring.io/spring-security/site/docs/3.0.x/reference/ns-config.html)採取precendence超過@Cacheable(http://docs.spring.io/spring/docs/3.1.0.M1/spring-framework-reference/html/cache.html )?該框架是否保證了@PreAuthorize安全檢查將被評估,即使計算的結果()函數已經計算和緩存?請問,記住,這個功能可以通過,比如調用,用戶A,則該值存儲在緩存中,然後其他用戶(用戶B)也再次調用需要此功能的作用?是否評估@PreAuthorize條件?
從我在Spring文檔中可以找到的內容中,@PreAuthorize和@Cacheable都將其建議的順序定義爲「Ordered.LOWEST_PRECEDENCE」,我相信這意味着它們的評估順序是未定義的?
謝謝!
感謝。但是這不是在緩存的Spring文檔中應該提及的東西嗎?我認爲忽略一種方法上的其他註釋是非常嚴重的。無論如何,我已經設置了兩個高速緩存和全球方法的安全性,如果也許@PreAuthorize已經檢查過了,保證他們將評估一些其他的方式執行我只是想知道的順序屬性。 – 0x42