在 Kerberos 環境中為 IBM Lotus Connections 配置單點登入

genusBIT發表於2010-03-02

轉自:http://www.ibm.com/developerworks/cn/lotus/connections-kerberos/index.html

簡介

在我們開始討論如何在 IBM Lotus Connection 中配置單點登入之前,需要先回顧一些概念:Kerberos 和 SPNEGO。Kerberos 是一種計算機網路認證協議,由 MIT 設計和開發,MIT 允許在非安全網路上通訊的節點以安全的方式相互證明身份。Kerberos 版本 5 認證協議 是一種 RFC (Request For Comments) 標準。

SPNEGO(簡單和受保護的 GSSAPI 協商機制)是一種 GSSAPI 偽機制,用於協商那些潛在的真正機制。它最明顯的用處在於 Microsoft 的 HTTP Negotiate 認證擴充套件。可協商的子機制包括 NTLM (NT LAN Manager) 和 Kerberos,它們均在 Microsoft Active Directory 中。在該活動目錄中可找到更多的資訊。

Lotus Connections 可以利用 WebSphere Application Server SPNEGO TAI(信任關聯攔截器)來提供單點登入(SSO)功能,使使用者登入到 Microsoft Windows 桌面然後自動登入使用 Lotus Connections 特性而無需任何認證。

圖 1 顯示了 WebSphere Application Server SPNEGO 環境中的請求/響應資料流。


圖 1. SPNEGO 資料流圖表
SPNEGO 資料流圖表

您可在 資訊中心 閱讀有關 WebSphere Application Server SPNEGO TAI 的更多資訊。

本文將闡述如何基於圖 2 所示的部署使 Lotus Connections 為使用者提供單點登入(SSO)。


圖 2. Lotus Connections SPNEGO 部署拓撲
Lotus Connections SPNEGO 部署拓撲

Active Directory 和 Kerberos KDC(金鑰分發中心)部署在 Microsoft Windows 2003 Server Enterprise Edition 系統上。Microsoft Windows 客戶端系統是使用者的 Windows 客戶端系統,部署有瀏覽器和其他應用程式。Lotus Connections 2.5 伺服器是將 Active Directory 作為 LDAP 目錄使用的 Lotus Connections 2.5 環境;Lotus Connections 2.5 伺服器可以是一個多節點叢集或一個單節點環境。在本文中,我們將 Lotus Connections 2.5 伺服器部署在 Microsoft Windows 系統上。


Active Directory 和 Kerberos KDC 主機上的先決任務

在繼續後面的工作之前,系統管理員需要在 Active Directory 和 Kerberos KDC 主機上完成若干先決任務。

在 Microsoft Windows 2003 上安裝 Active Directory

參考 http://technet.microsoft.com/en-us/library/aa998088.aspx 瞭解如何在 Windows 2003 Server Enterprise Edition 上安裝 Active Directory 。在您成功安裝 Active Directory 之後,確保 Kerberos 金鑰分發中心繫統服務在 Services 列表上得到正確配置。雙擊 Kerberos Key Distribution Center 服務選擇 Kerberos Key Distribution Center 屬性,如圖 3 所示。確保 Startup 型別欄位為 Automatic (這是預設選項)。


圖 3. Kerberos Key Distribution Center 屬性
Kerberos Key Distribution Center 屬性

KDC 服務允許使用者使用 Kerberos V5 認證協議登入到網路上。如果該服務停止,使用者就無法登入到域並訪問服務。在不支援 KDC 的系統(非域控制器)上,KDC 服務啟動型別被禁用。

您可以閱讀有關 Microsoft Windows KDC 服務 的更多資訊。

您可以瞭解如何修改 Microsoft Windows Server 2003 中的 Kerberos 協議登錄檔項和 KDC 配置金鑰。我們在該配置中使用預設值。

確保您在 Windows 2003 系統中安裝了 DNS 伺服器,詳情可檢視 整個流程 的第 9 步。在 DNS Registration Diagnostics 頁面上,遵循以下步驟:

  1. 在計算機上單擊 Install 並配置 DNS 伺服器。
  2. 設定這臺計算機使該 DNS 伺服器作為其首選 DNS 伺服器使用。
  3. 單擊 Next。
  4. DNS 服務在這個 Microsoft Windows 2003 Server 上執行。雙擊 DNS Server 服務選擇圖 4 所示的 DNS Server 屬性。確保 Startup 型別欄位為 Automatic (這是預設設定)。


圖 4. DNS Server Properties 視窗
DNS Server Properties 視窗

Kerberos 環境的時間同步

託管 Active Directory 的 Microsoft Windows Server 2003 被用作域控制器。

如果時間同步在您的企業內部網中不是問題,您可以略過這部分。

Kerberos 要求所用主機的時間是同時的。票據有一個時間可用段,如果主機時鐘與 Kerberos 伺服器時鐘不同步,則認證失敗。

我們經常將域控制器作為 時間伺服器 使用,並在有關的 Lotus Connections 伺服器主機上執行 Windows Schedule 任務 以完成與域控制器的時間同步。圖 5 顯示了每分鐘呼叫一次 TimeSyn.bat 樣例的示例任務。


圖 5. 用作時間同步的 Windows Scheduled Tasks
.用作時間同步的 Windows Scheduled Tasks

在我們的示例中,使用者需要在 C:\ 中建立一個名為 TimeSyn.bat 的批檔案。如果 example.yourdomain.com 是域控制器,則 NTP 時間伺服器 TimeSyn.bat 的程式碼如清單 1 所示。


清單 1. TimeSyn.bat 示例程式碼

w32tm /config /manualpeerlist:acme.yourdomain.com.com,0x8 /syncfromflags:MANUAL
net stop w32time
net start w32time
w32tm /resync

安裝 Microsoft Windows 支援工具

在 Windows 2003 Server Enterprise Edition 上 安裝 Microsoft Windows 支援工具

您需要使用該工具在域控制器上執行 ktpass 命令,以為服務帳戶設定 SPN 並生成 keytab 檔案。

您可以詳細瞭解 Kerberos 協議如何在 Microsoft Windows Server 2003 中運作

配置 Lotus Connections 伺服器使其支援 Kerberos 環境。完成先決任務之後,就可以開始配置 Lotus Connections 了。

配置 Lotus Connections 使其將 Active Directory 作為使用者庫使用

參考 Lotus Connections 資訊中心,瞭解如何配置安全性以將 Active Directory 作為使用者庫使用,並瞭解如何填充 Profiles 資料庫。

建立一個服務帳戶以在 Active Directory 中保留 SPN

在 Kerberos 環境中 Lotus Connections 需要一個 SPN(服務主體名稱)來識別 Lotus Connections 伺服器。在 Active Directory 中需要一個服務帳戶以保留該 SPN。

要建立服務帳戶,登入到域控制器,開啟 Manage Your Server - Domain Controller (Active Directory) - Manage users and computers in Active Directory,然後單擊按鈕。

在 Account 頁面上,確保選中 User cannot change password and Password never expires 選項,如圖 6 所示。


圖 6. 新使用者帳戶屬性
新使用者帳戶屬性

設定 SPN 並生成 keytab 檔案

在域控制器上執行 ktpass 命令以為服務帳戶設定 SPN,並生成 keytab 檔案:

ktpass –princ -out -mapuser
-mapOp set –pass

其中
是 Kerberos 服務主體名稱。

一個 Kerberos 主體名稱分為三個部分:主名稱、例項和領域。典型的 Kerberos 主體名稱格式是 primary/instance@REALM。如果 Lotus Connections 宿主在 SVTLCSPNEGO.cn.example.com 上且域名為 CN.EXAMPLE.COM,則 SPN 為 HTTP/SVTLCSPNEGO.cn.example.com@CN.EXAMPLE.COM。

  • 是您想要儲存 keytab 檔案的位置。
  • 是服務帳戶名稱。
  • 是服務帳戶名稱的密碼。

假定第 1 步中建立的使用者帳戶是 lcserver01 且服務帳戶密碼是 Password1。您想將 keytab 檔案儲存為 C:\SVTLCSPNEGO.keytab,因此命令類似於以下程式碼:

ktpass -princ HTTP/SVTLCSPNEGO.cn.ibm.com@CN.IBM.COM -out
c:\SVTLCSPNEGO.keytab -mapuser lcserver01 -mapOp set -pass Passw0rd1

命令輸出如清單 2 所示。


清單 2. ktpass 命令輸出

Targeting domain controller: SVTLCSPNEGO.cn.ibm.com
Using legacy password setting method
Successfully mapped HTTP/SVTLCSPNEGO.cn.ibm.com to lcserver01.
WARNING: pType and account type do not match. This might cause  problems.
Key created.
Output keytab to c:\SVTLCSPNEGO.keytab:
Keytab version: 0x502
keysize 68 HTTP/SVTLCSPNEGO.cn.ibm.com@CN.IBM.COM ptype 0 (KRB5_NT_UNKNOWN) vno 4 ety
pe 0x17 (RC4-HMAC) keylength 16 (0x5858d47a41e40b40f294b3100bea611f)

在一個 Lotus Connections 叢集中,您只需要選擇 IBM HTTP 伺服器名稱或虛擬主機名(訪問 IBM HTTP 伺服器的使用者或要體驗 Lotus Connections 特性的虛擬主機)作為 Kerberos 服務主體名稱中的例項名。沒有必要為 Lotus Connections 叢集中的所有節點生成 keytab 檔案。

在 WebSphere Application Server 中配置 SPNEGO TAI

可通過以下步驟在 WebSphere Application Server 管理控制檯中配置 SPNEGO TAI:

  1. 導航到 Security - Secure administration, applications, and infrastructure,並展開 Web Security。單擊 Trust association。
  2. 選擇 Enable trust association 選項啟用 TAI。
  3. 選擇 Interceptors - com.ibm.ws.security.spnego.TrustAssociationInterceptorImpl - Custom properties。
  4. 新增清單 3 所示的自定義屬性。

    清單 3. SPNEGO TAI 自定義屬性
    						
    
    com.ibm.ws.security.spnego.SPN1.hostName=< hostname>
    com.ibm.ws.security.spnego.SPN1.NTLMTokenReceivedPage=
    com.ibm.ws.security.spnego.SPN1.spnegoNotSupportedPage=
    com.ibm.ws.security.spnego.SPN1.filter=request-url!=
    /seedlist/authverify;request-url!=/seedlist/
    server;request-url!=/seedlist/myserver;request-url!=noSPNEGO
    com.ibm.ws.security.spnego.SPN1.filterClass
    =com.ibm.ws.security.spnego.HTTPHeaderFilter	
    

其中:

  • 是用於訪問 Lotus Connections 的伺服器名稱(例如,IBM HTTP 伺服器名稱或虛擬主機名)。
  • 是在本地檔案系統上建立 SPNEGO TAI 重定向頁面的地方,例如 file:///Z:/share/TAIRedirect.html。

您應手動建立該 HTML 檔案。其內容是清單 4 所示的程式碼。


清單 4. SPNEGO TAI 重定向頁面 TAIRedirect.html


<!--
Notes:
	- This file should be served from an unprotected web site. Alternatively, it can 
	be loaded from the WebSphere Application Server filesystem.
	- Any imbedded graphics/javascript/css MUST BE loaded from an unprotected web site.
	- This file will be loaded once when the WebSphere Application Server is initialized. 
	If changes to this file are necessary, the Application Server should be restarted.
	- This file will be returned whenever the SPNEGO TAI receives an NTLM token for 
	ANY application in the cell. In other words, this file is generic for all applications. 
	However, by using the Javascipt document.location, we can get the original URL, 
	and redirect to that original URL with the "?noSPNEGO" text added - thus forcing 
	the standard application userid/password challenge.
--&gt


	var rigUrl=""+document.location;
   	if (origUrl.indexOf("noSPNEGO")<0) {
		if (origUrl.indexOf('?')>=0) origUrl+="&noSPNEGO";
			else origUrl+="?noSPNEGO";
	}
	function redirTimer() {
		self.setTimeout("self.location.href=origUrl;",0);
	}




	document.write(" Redirect to "+origUrl+ " ");	






  1. 單擊 OK 儲存更改。

圖 7 是一幅顯示真實部署的螢幕截圖。


圖 7. SPNEGO TAI 自定義屬性的 WebSphere 管理控制檯螢幕截圖
SPNEGO TAI 自定義屬性的 WebSphere 管理控制檯螢幕截圖

清單 5 是一個示例 JACL 程式碼,它可以從 wsadmin 介面安裝 WebSphere SPNEGO TAI。將檔案命名為 ConfigTA.jacl 然後像這樣執行它:

wsadmin -f ConfigTA.jacl

記住要用您的實際配置變數替換 com.ibm.ws.security.spnego.SPN1.hostName 值。


清單 5. WebSphere SPNEGO TAI 安裝所用的 ConfigTA.jacl

###################################################
proc saveConfig {} {
	global AdminConfig
	$AdminConfig save
}
proc configTA {} {
	global AdminConfig
	
	set trustAssocConfigId [$AdminConfig list TrustAssociation]
	set trust_attrib {}
	
	set matchFound 0
	set	trust_assocEnabled y
	set	trust_interceptorClassName com.ibm.ws.security.spnego.
	TrustAssociationInterceptorImpl
	
        if {$trust_assocEnabled != {}} {
		if {[regexp $trust_assocEnabled y]} {
			lappend trust_attrib [list enabled "true"]
		} else {
			lappend trust_attrib [list enabled "false"]
		}
		$AdminConfig modify $trustAssocConfigId $trust_attrib 
	}
	if {$trust_interceptorClassName != {}} {
		set listOfTAI [$AdminConfig list TAInterceptor]
		foreach tai $listOfTAI {
			set className [$AdminConfig showAttribute $tai 
			interceptorClassName]
			if {[string compare $className 
			$trust_interceptorClassName] == 0} {
				set matchFound 1
				###
				break
			}
		}
	}
	if {$matchFound == 1} {			
		set interceptorConfigId $tai		
		###################################################
		set trust_propertyName com.ibm.ws.security.spnego.SPN1.hostName
		#replace with your IHS host
		set trust_propertyValue < !! please replace with your IHS host !!>
		set trust_propertyRequired false
		set options_attrib {}		
		lappend options_attrib [list name $trust_propertyName]
		lappend options_attrib [list value $trust_propertyValue]
		lappend options_attrib [list required $trust_propertyRequired]	
			
		$AdminConfig modify $interceptorConfigId [list 
		[list trustProperties [list $options_attrib]]]
		set trustAttrs [$AdminConfig showall $interceptorConfigId]
		puts stdout "trustAttrs=$trustAttrs"
		###################################################
		set trust_propertyName com.ibm.ws.security.spnego.
		SPN1.filterClass		
		set trust_propertyValue com.ibm.ws.security.spnego.
		HTTPHeaderFilter
		set trust_propertyRequired false
		set options_attrib {}
		
		lappend options_attrib [list name $trust_propertyName]
		lappend options_attrib [list value $trust_propertyValue]
		lappend options_attrib [list required $trust_propertyRequired]	
			
		$AdminConfig modify $interceptorConfigId [list [list trustProperties
		[list $options_attrib]]]
		set trustAttrs [$AdminConfig showall $interceptorConfigId]
		puts stdout "trustAttrs=$trustAttrs"
		###################################################
		set trust_propertyName com.ibm.ws.security.spnego.SPN1.filter
		set trust_propertyValue "request-url!=/seedlist/authverify;request-url!=
		/seedlist/server;request-url!=/seedlist/myserver;request-url!=noSPNEGO"
		set trust_propertyRequired false
		set options_attrib {}
		
		lappend options_attrib [list name $trust_propertyName]
		lappend options_attrib [list value $trust_propertyValue]
		lappend options_attrib [list required $trust_propertyRequired]		
			
		$AdminConfig modify $interceptorConfigId [list [list trustProperties 
		[list $options_attrib]]]
		set trustAttrs [$AdminConfig showall $interceptorConfigId]
		puts stdout "trustAttrs=$trustAttrs"
		###################################################
		set trust_propertyName com.ibm.ws.security.spnego.
		SPN1.spnegoNotSupportedPage
		set trust_propertyValue file:///z:/TAIRedirect.html
		set trust_propertyRequired false
		set options_attrib {}
		
		lappend options_attrib [list name $trust_propertyName]
		lappend options_attrib [list value $trust_propertyValue]
		lappend options_attrib [list required $trust_propertyRequired]	
			
		$AdminConfig modify $interceptorConfigId [list [list trustProperties 
		[list $options_attrib]]]
		set trustAttrs [$AdminConfig showall $interceptorConfigId]
		puts stdout "trustAttrs=$trustAttrs"
		###################################################
		set trust_propertyName com.ibm.ws.security.spnego.
		SPN1.NTLMTokenReceivedPage
		set trust_propertyValue file:///z:/TAIRedirect.html
		set trust_propertyRequired false
		set options_attrib {}
	 
		lappend options_attrib [list name $trust_propertyName]
		lappend options_attrib [list value $trust_propertyValue]
		lappend options_attrib [list required $trust_propertyRequired]	
			
		$AdminConfig modify $interceptorConfigId [list [list trustProperties 
		[list $options_attrib]]]
		set trustAttrs [$AdminConfig showall $interceptorConfigId]
		puts stdout "trustAttrs=$trustAttrs"
		###################################################
		
	}	     
	
}
#############################################################
#  Main procedure
#############################################################
puts stdout "Run like this: wsadmin -f ConfigTA.jacl"

puts ">configTA"
configTA
saveConfig

建立 Kerberos 配置檔案

在 WebSphere Application Server 中使用 SPNEGO TAI 之前,您需要建立 Kerberos 配置檔案。首先,複製 keytab 檔案到安裝有 Lotus Connections 的伺服器上。然後執行清單 6 中所示的命令,用 wsadmin 命令列工具執行 createKrbConfigFile 指令碼。


清單 6. 建立 Kerberos 配置檔案的 wsadmin 命令

$AdminTask createKrbConfigFile 
    {    
         -krbPath \java\jre\lib\security\krb5.conf 
         -realm  
         -kdcHost  
         -dns  
         -keytabPath 
    }
    

其中:

  • 是 WebSphere Application Server 位置路徑,而不是 Lotus Connections 的位置。
  • 是 Kerberos 領域,必須全部以大寫字母顯示。
  • 是金鑰分發中心主機的名稱。
  • 是 DNS 伺服器名稱。
  • 是在域控制器上生成的 keytab 檔案的位置。

啟用 WebSphere SPNEGO TAI

要啟用 SPNEGO TAI,登入到 WebSphere Application Server 管理控制檯,然後導航到 Servers - Application servers。選擇伺服器名稱(一般為 server1),擴充套件 Java and Process Management,然後選擇 Process Definition - Java Virtual Machine - Custom Properties。

新增兩個自定義屬性:

com.ibm.ws.security.spnego.isEnabled = true
java.security.krb5.conf =

如果您在多個伺服器例項中安裝 Lotus Connections,您需要對所有伺服器例項重複這個步驟。

清單 7 是能從 wsadmin 介面完成任務的示例 Jython 程式碼。將檔案命名為 configspnegojvm.py 並像這樣執行它:

wsadmin -lang jython -user wasadmin -password wasadmin -f configspnegojvm.py
Your_Cell_Name Your_Node_Name Your_ServerInstance_Name.

清單 7. 啟用 JVM SPNEGO 自定義屬性所用的 configspnegojvm.py

def configspnegojvm(cellName, nodeName, serverName):
   global AdminConfig
   
   krb5conf = "C:/IBM/WebSphere/AppServer/java/jre/lib/security/krb5.conf"   
   javasrv = AdminConfig.getid("/Cell:" + cellName + "/Node:" + nodeName + 
   "/Server:" + serverName + "/")
   
   # Checking for existence of server
   print "Checking for existence of server " + serverName
   if len(javasrv) == 0:
      print "Error -- server not found for name " + serverName + " :: /Cell:" + 
      cellName + "/Node:" + nodeName + "/Server:" + serverName + "/"
      return
   else:
      print "OK. " + javasrv
         
   #======================add JVM Custom Properties=====================
   javaproc = AdminConfig.list('JavaProcessDef', javasrv)
   prop = AdminConfig.list('Property', javaproc)
   jvmp = AdminConfig.list('JavaVirtualMachine', javaproc)
   
   if (prop.find("com.ibm.ws.security.spnego.isEnabled") >= 0):
   		print "INFO: JVM properties seem already exist:"
   		print prop
   		return
   
  
   AdminConfig.create('Property', jvmp, [['name', 'com.ibm.ws.security.
   spnego.isEnabled'], ['value', 'true'], ['required', 'false']])
   AdminConfig.create('Property', jvmp, [['name', 'java.security.krb5.conf'], 
   ['value', krb5conf], ['required', 'false']])      
   AdminConfig.save()
   print "==========Current JVM Custom Properties=========="
   prop = AdminConfig.list('Property', jvmp)
   print prop
   

#Main:
#./wsadmin -lang jython -user wasadmin -password wasadmin -f configspnegojvm.py 
Your_Cell_Name Your_Node_Name Your_ServerInstance_Name

if (len(sys.argv) != 3):
   print "This script. requires 3 parameters"
   print "e.g.:./wsadmin -lang jython -user wasadmin -password wasadmin -f 
   configspnegojvm.py Your_Cell_Name Your_Node_Name Your_ServerInstance_Name" 
else:
   cellName = sys.argv[0]
   nodeName = sys.argv[1]
   serverName = sys.argv[2]

   print "cellName: " + cellName
   print "nodeName: " + nodeName
   print "serverName: " + serverName
   print
   configspnegojvm(cellName, nodeName, serverName)   
 

為 LtpaToken cookie 配置 Ajax 代理

新增以下部分到 proxy-config.tpl 檔案中,為 LtpaToken cookies 配置 Ajax 代理。您可通過 wsadmin 工具完成該任務,首先抽取配置檔案,新增以下內容,然後檢查配置。您需要重啟伺服器例項才能接受更改。參見清單 8。


清單 8. Ajax proxy LtpaToken cookie 的 proxy-config.tpl 設定


    JSESSIONID
    LtpaToken
    LtpaToken2


配置 HTTP 重寫規則登出到未受保護的 URL

在名為 httpd.conf 的 IBM HTTP Server 配置檔案中設定 URL 重寫規則,以登出到未受保護的 Web 頁面,這樣就不用再次進行 SPNEGO 認證使用者就可自動登入。步驟如下:

  1. 在 IBM HTTP Server 上開啟 httpd.conf 檔案,取消以下程式碼行的註釋(刪除 #):
    #LoadModule rewrite_module modules/mod_rewrite.so
  2. 然後新增清單 9 所示的程式碼。


清單 9. HTTP 重寫規則

RewriteEngine On
RewriteCond %{REQUEST_URI} /(.*)/ibm_security_logout(.*)
RewriteCond %{QUERY_STRING}  !=logoutExitPage=
RewriteRule /(.*)/ibm_security_logout(.*)
    /$1/ibm_security_logout?logoutExitPage=
   [noescape,L,R]
   

其中:

是使用者登出後重定向到的未受保護 URL。它是阻止 SPNEGO 認證的一個未受保護 URL。

一定要為 HTTP 和 HTTPS 配置 URL 重寫規則。

配置客戶端瀏覽器以使用 SPNEGO

在 Kerberos 環境中使用 Lotus Connections 之前,使用者需要配置其客戶端。

加入域的使用者客戶端系統

首先,使用者客戶端系統加入域。在圖 8 所示的 TCP/IP Properties 視窗中,客戶端系統的 DNS 伺服器值被設定為域控制器地址。


圖 8. 客戶端系統上的 TCP/IP Properties
使用者客戶端上的 TCP/IP Settings

接下來,跟蹤連結 http://support.microsoft.com/kb/295017 加入域。客戶端成功加入域之後,域控制器的管理員可在 Active Directory Users and Computers 檢視中看到新加入成員,如圖 9 所示。


圖 9. 屬於特定域的計算機列表
屬於特定域的計算機列表

使用者客戶端瀏覽器配置

其次,使用者需要配置其客戶端瀏覽器以使用 SPNEGO。

如果您在使用 Microsoft Internet Explorer,那麼請按以下步驟操作:

  1. 在 Internet Explorer 視窗,選擇 Tools - Internet Options - Security。
  2. 選擇本地內聯網圖示,單擊 Sites。
  3. 在出現的視窗中,單擊 Advanced。在 Add this Web site to the zone 欄位中,輸入主機名的 Web 地址,這樣就能在 Web sites 欄位中的 Web 站點列表上啟用單點登入(SSO)。
  4. 單擊 Close,然後單擊 OK 完成配置步驟並關閉 Local intranet 視窗。



    圖 10. 本地內聯網設定
    本地內聯網設定

  5. 在視窗中的 Security 級別部分,單擊 Custom Level。在彈出的 Security Settings 視窗中,滾動到 User Authentication - Logon 並選擇 Automatic logon only in Intranet zone 選項。單擊 OK 關閉 Security Settings 視窗。參見圖 11。



    圖 11. 本地內聯網區域的安全設定
    本地內聯網區域的安全設定

  6. 在 Internet Options 視窗中,單擊 Advanced 選項卡並滾動到 Security 設定。確保選中 Enable Integrated Windows Authentication (requires restart) 選項。參見圖 12。



    圖 12. Internet Options 設定
    Internet Options 設定

  7. 單擊 OK。重啟 Internet Explorer 瀏覽器啟用該配置。

如果您在使用 Mozilla Firefox 瀏覽器,那麼可按以下步驟操作:

  1. 開啟 Firefox。
  2. 在 adress 欄位中輸入 about:config。
  3. 在 Filter 欄位中輸入 network.n。
  4. 雙擊 .negotiate-auth.trusted-uris。該首選項列出允許同瀏覽器參與 SPNEGO 認證的站點。輸入受信任的域或 URL 列表,用逗號隔開。

    注意:您必須如圖 13 所示設定 network.negotiate-auth.trusted-uris 的值。



    圖 13. Mozilla Firefox 瀏覽器設定
    Mozilla Firefox 瀏覽器設定

  5. 如果部署的 SPNEGO 解決方案使用信任委託的高階 Kerberos 特性,那麼雙擊 network.negotiate-auth.delegation-uris。該首選項列出可通過瀏覽器參與伺服器使用者認證的站點。輸入受信任的域或 URL 列表,用逗號隔開。
  6. 單擊 OK。顯示的配置已得到更新。
  7. 重啟 Firefox 瀏覽器啟用該配置。

    在 Kerberos 環境中通過單點登入功能訪問 Lotus Connections

    前面幾步工作完成後,使用者便可通過單點登入體驗 Lotus Connections 了。他們需要登入到其系統上,使用 Lotus Connections 特性並不難。圖 14 是一幅真實部署螢幕截圖。使用者 Aamir_000_000 登入到他的 Windows 客戶端(已加入由域控制器控制的域),開啟 Firefox 瀏覽器,輸入 Lotus Connections 主頁地址,然後自動登入到 Lotus Connections 。


    圖 14. 自動載入的 Lotus Connections 主頁
    自動載入的 Lotus Connections 主頁

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/14751907/viewspace-628339/,如需轉載,請註明出處,否則將追究法律責任。

相關文章