Spring學習筆記9

2021-04-25 17:43:05 字數 2121 閱讀 5658

spring

的安全性

spring

安全性涉及到乙個基於

spring aop

和servlet

過濾器的安全框架。 ·

spring

安全性初探

spring

安全框架提供了宣告式

(declarative)

的安全機制,它提供了乙個綜合的安全解決方案用於處理

web請求或方法呼叫級別上的認證和授權。有了這個框架,

spring

可以充分使用注入依賴和面向切片技術的優勢。另外

spring

的安全機制以前以

acegi

聞名。

對於web

應用程式,

spring

的安全機制會使用

servlet

過濾器來過濾

servlet

請求並執行相應的認證操作。同時,

spring

使用了一種特殊的機制宣告

servlet

過濾器來保證注入依賴的執行;對於方法呼叫,

spring

的安全機制使用了

aop去**物件來確保使用者擁有許可權去呼叫受保護的方法。

無論上面哪種情況,

spring

的安全機制都由

5個核心的元件構成:

·安全***

(security interceptor):

可以理解為是阻止你訪問受保護資源的「門閂」。只有輸入了正確的使用者名稱密碼才能開啟這道「門閂」。乙個

security interceptor

的實際實現依賴於受保護資源。如果是乙個

url資源,

security interceptor

被實現成乙個

servlet

過濾器,但如果是乙個方法呼叫,

spring

將會使用切片。實際上,乙個

security interceptor

就是起到攔截資源訪問的作用,具體的實現它會委託給很多不同的管理器來完成。

·認證管理器

(authentication manager)

認證管理器的任務是對訪問者進行身份認證,通常是檢驗使用者名稱和密碼。

spring

安全機制中的認證管理器是乙個基於介面的外掛程式式元件,因此你可以使用任意認證機制。事實上,

spring

就提供了一組認證管理器。

·訪問決策管理器

(access decisions manager) 和

authentication manager

一樣,access decisions manager

也是外掛程式式的元件。一經身份認證,

spring

需要確定你是否有許可權訪問受保護資源,這時就需要訪問決策管理器來進行確認,它將根據你的許可權資訊和受保護資源的安全屬性來決定是否允許你訪問資源。 ·

run-as

管理器(run-as manager)

即使你通過了身份認證和許可權授權,你仍然面臨著更多的安全性約束。比如,你可能被授權瀏覽乙個

web頁面,但是那些產生頁面的物件可能具有不同的安全級別。

run-as manager

就被用來使用另乙個身份授權來代替你現有的身份授權,而這個身份授權將允許你訪問應用程式中更深層次的受保護物件。並不是所有的應用程式都有身份替換的需求,所以

run-as manager

只是可選的擔不是必須的。 ·

after-invocation manager

after-invocation manager

與其他元件不同,它是在資源被訪問之後執行安全機制。它主要用來保證從資源返回的資料的訪問安全性。如果乙個

after-invocation manager

被應用於乙個服務層

bean

,那麼它就會審查方法的返回值,然後確定使用者是否有許可權來檢視返回的物件。

after-invocation manager

還可以修改返回值來確保使用者只能方法返回值的某些屬性。和

run-as manager

一樣,並不是所有的應用都需要

after-invocation manager。

學習筆記9

函式 函式以def開頭,後面接函式名和括號,然後接冒號 函式的最後接return結束函式,並返回乙個值,可以沒有,就相當於返回none 函式呼叫時直接用函式名加括號 括號內為需要傳入的引數。傳入函式的引數是實參 在函式內使用的大多都為形參 形參只能在函式內使用,函式結束後就自動釋放記憶體了。函式中的...

學習筆記9

今天來進行系統的學習一下css 層疊樣式表 首先說一下層疊次序,四個優先權 1.瀏覽器預設設定 2.外部樣式表 3內部樣式表 位於 內部樣式表 內聯樣式 this is a paragraph 多重樣式 例 h1居中對齊 h1 h1 css的使用 背景 background color backgr...

spring學習筆記

spring中兩個十分重要的概念 ioc di aop 1.ioc di inverse of control dependence injection ioc 控制反轉,看起來比較牛b,說起來十分簡單。就是不使用傳統的將類的依賴關係用硬編碼來維護的方式,而是讓容器來管理類之間的依賴,依賴關係在全在...