共用方式為


關閉通話安全性

呼叫安全性會決定用戶端是否具有呼叫伺服器方法的許可權。 有兩種方式可以停用通話安全性:其中一個涉及使用Dcomcnfg.exe來修改登錄,而另一個則需要呼叫 CoInitializeSecurity

使用 DCOMCNFG 關閉通話安全性

使用Dcomcnfg.exe修改登錄,即可更輕鬆地關閉呼叫安全性。 不過,只有在用戶端和伺服器都未呼叫 CoInitializeSecurity 時,使用 Dcomcnfg.exe 才能關閉安全性。 這是因為呼叫 CoInitializeSecurity,DCOM 會忽略登錄設定,並改用提供給 CoInitializeSecurity 的值。

若要關閉具有Dcomcnfg.exe的安全性,用戶端和伺服器都必須將其驗證層級設定為 [無]。 下列步驟必須完成:

  1. 執行 Dcomcnfg.exe。
  2. 在 [ 應用程式] 頁面上,選取代表伺服器的應用程式。 按兩下 [ 屬性] 按鈕(或按兩下選取的應用程式)。
  3. 按一下 [General] \(一般\) 索引標籤。
  4. 從 [預設驗證層級] 列表框中,選取 [無]。
  5. 按兩下 [ 套用] 按鈕以套用變更;不過,變更不會套用至應用程式的任何執行中實例。
  6. 如果客戶端出現在 [應用程式] 頁面上的清單上,請重複步驟 2 到 5,選擇用戶端,而不是步驟 2 的伺服器。 然後按一下 [確定] 按鈕。 如果用戶端不在清單中,您可以執行下列三件事之一:
    • 您可以使用 Dcomcnfg.exe,以全計算機為基礎,將客戶端的驗證層級設定為 None。 (請參閱下列警告和程式。
    • 您可以以程式設計方式將客戶端的驗證層級設定為 None。
    • 您可以為用戶端建立 AppID 金鑰,以指出 [無] 的驗證層級。 (請參閱 透過登入設定全行程安全性。)

若要以全計算機為基礎,將 [驗證層級] 設定為 [無]:

注意

將全計算機驗證層級設定為 [無] 是非常不安全的。

 

  1. 執行 Dcomcnfg.exe。
  2. 選擇 [ 預設屬性] 索引標籤。
  3. 從 [預設驗證層級] 列表框中,選擇 [無]。
  4. 按一下 [確定] 按鈕。

以程式設計方式關閉通話安全性

若要以程式設計方式關閉呼叫安全性,用戶端和伺服器都必須呼叫 CoInitializeSecurity,並將 dwAuthnLevel 參數中的驗證層級設定為RPC_C_AUTHN_LEVEL_NONE。

關閉啟用安全性