共用方式為


使用角色進行客戶端授權

您使用角色型安全性來建立授權政策,以判斷允許哪些用戶端進入以及他們具備何種權限。 您決定誰應該能夠執行哪些動作並存取哪些資源。

每當用戶嘗試存取任何應用程式資源時,角色都會做為叫用的訪問控制機制,來促進這項功能。 角色基本上是使用者清單,更精確地說是共用相同安全性許可權的用戶符號類別。 當您將角色指派給應用程式資源時,您會將該資源的訪問許可權授與該角色的成員。

因此,您可以將它宣告為角色,然後將角色指派給特定資源,以定義非常特定的安全性許可權。 部署應用程式時,系統管理員可以使用實際的使用者和使用者群組填入角色。 當應用程式執行時,COM+ 會藉由執行角色檢查來強制執行原則。

基本上,角色有助於保護您的程序代碼,也就是 COM+ 應用程式的用戶端可以呼叫的方法。 每當客戶端嘗試呼叫應用程式中元件公開的方法時,就會檢查角色成員資格。 如果呼叫者位於指派給所呼叫方法或資源的角色中,呼叫就會成功;否則,它會失敗。

宣告式 Role-Based 安全性

使用宣告式角色型安全性時,您會使用元件服務系統管理工具或系統管理功能,以系統管理方式宣告角色,並系統管理地將它們指派給應用程式資源。 設定宣告式安全性的位置和方式,將決定為您的應用程式繪製安全性界限的位置。 如需詳細資訊,請參閱 安全性界限

您可以將指定的角色指派給整個應用程式、特定元件、元件中的特定介面,或指派給介面上的特定方法。 角色指派會繼承至自然包含鏈結,也就是說,如果您將角色指派給元件,則會隱含地指派給該元件所公開的每個介面和方法。

透過方法層級角色指派的可用性,您可以有效地協助保護尚未考慮安全性的元件和介面。 不過,如果方法本身無法通過宣告式角色指派進行安全保護,您可能需要進行程式化角色檢查。 決定如何透過方法考慮商務功能時,通常最好記住安全性:否則,您可能會發現自己會在最後一分鐘新增與安全性相關的程序代碼。

如需設定角色型安全性的詳細程式,請參閱 設定 Role-Based 安全性

程式設計安全性

在某些情況下,您可能會想要將安全性邏輯放入元件,同時仍使用角色型安全性。 這可能是因為您無法或選擇不透過方法來做出所有存取決策。 例如,您可能有私人應用程式資源,像是一個特定的資料庫,您希望只允許某些方法的使用者存取,同時拒絕其他使用者。 或者,您可能有單一的 TransferMoney 方法,並想要限制某些呼叫者可以轉移的金額。

在這種情況下,您可以在程式代碼中執行角色檢查。 提供簡單的 API,可讓您檢查安全性是否已開啟,以及呼叫者或特定使用者是否處於指定角色。 只有在啟用角色型安全性時,才能使用此功能。 這表示您仍然可以利用宣告式角色型安全性,並在需要時以程序設計方式將其擴充至更精細的粒度層級。

此外,當您使用角色型安全性時,您可以以程序設計方式存取元件之呼叫鏈結中所有上游呼叫端的相關信息。 當您想要保留詳細的稽核線索時,這特別有用。

如需如何執行程式碼中角色檢查以及如何存取安全性呼叫內容資訊的描述,請參閱 程式設計元件安全性

授權和驗證

您確信客戶確實是他們聲稱是的身份,這是授權的前提。 用戶端身分識別的驗證會由驗證服務分開處理。 如果沒有驗證,您基本上是在相信來電者會守信。 如需了解驗證對 COM+ 應用程式的影響,請參閱 用戶端驗證

有效地設計角色

安全性界限

安全通話上下文資訊

安全性內容屬性