本章說明如何管理社群及其使用者。社群所有者可透過社群資訊 Portlet 實現此功能。系統管理員還可透過 Portal Server 管理主控台和 psadmin 指令行介面實現類似的功能。如需管理社群的指令行公用程式的資訊,請參閱「Technical Note: Managing Sun Java System Portal Server 7.2 Update 1 Communities」技術說明。
如果需要為入口網站設定社群屬性,可執行以下連結中的新增社群範例程序:http://docsview.sfbay/app/docs/doc/820-0043/gdsbd?1=en&a=view。
本章包含下列章節:
本章包含下列項目:
雖然「社群」通常意味著公開,且可讓所有人存取資訊,不過為社群建立存取控制仍然大有必要。例如在以企業為基礎的社群中,可能需要限制某些社群,並使發佈至這些社群的資料保持私有與安全。本節說明可用的存取控制設定及其常用配置。
以下是可根據社群需求設定存取控制的三個社群部分。
成員資格不受限 (公開):未限制成員資格的社群對任何使用者開放。
成員資格受限 (私有):限制成員資格的社群需要使用者向社群所有者提出要求,然後等待所有者授予或拒絕其成員資格。或者,所有者可邀請或明確地新增一個或多個使用者至社群。
列出 (公開):社群已在社群種類中註冊,且可由任何使用者瀏覽及搜尋。
未列出 (私有):無法在社群種類中搜尋及瀏覽社群。
未保護 (公開):非社群成員可搜尋及存取在社群上發佈的資料。
受保護 (私有):所有在社群上發佈的資料都受到嚴密保護,只能由社群成員搜尋及存取。
在建立社群期間或之後,社群所有者或系統管理員可控制存取控制的各個不同部分。請注意,可用設定一節中所述的每個設定相互獨立。換言之,選取一個設定的選項不會影響其他設定的行為或選項。例如,可不列出未限制成員資格的社群,同時可保護其內容。社群所有者可根據社群的性質自訂存取控制。兩種最常用的配置說明如下。
任何使用者都可加入公開社群並取得成員資格。社群已在社群種類中列出,且可由任何使用者瀏覽及搜尋。在社群上發佈的內容也可由任何使用者搜尋及存取。
使用舊版 Portal Server 軟體建立的社群被視為公開社群,且會在系統升級至此版 Portal Server 軟體時被當作公開社群運作。
私有社群是最安全的社群。它不會在社群種類中顯示,因此無法對其進行瀏覽或搜尋。私有社群是未列出且受保護的社群,此社群限制了成員資格。社群所有者可邀請或手動新增使用者至社群。社群的內容受到保護,非社群成員無法檢視或搜尋任何發佈的內容。
可在社群中為使用者指定不同角色。兩種主要的角色為 OWNER 和 MEMBER。角色為 MEMBER 的使用者具備所有一般成員權限。如果同時為其指定了 OWNER 角色,則該使用者還會取得管理社群的權限。使用者所擁有的權限和可檢視的內容,是透過合併每個指定給使用者的角色所對應的顯示設定檔來控制的。系統管理員在設計每個社群角色的顯示設定檔範本時必須很小心。如需詳細資訊,請參閱社群範本一章。
非社群成員使用者實際上取得了 VISITOR 角色,因此非社群成員使用者瀏覽特定社群頁面時一定會合併 visitor.xml。如果使用者沒有明確的角色,或具有 BANNED、INVITED、PENDING 和 REJECTED 等暫態角色,則該使用者是非社群成員。
要加入私有社群或限制了成員資格的社群,使用者應當要求成員資格。然後社群所有者可核准或拒絕要求。若獲得核准,使用者會立即成為社群的成員。若要求被拒絕,使用者會在登入入口網站時收到拒絕通知,且會在確認拒絕通知後會回到訪客狀態。遭拒的使用者稍後可再次提交要求。如果所有者不希望某些使用者提交成員資格要求,還可禁止這些使用者。
VISITOR --request membership--> PENDING/VISITOR--> approved--> MEMBER VISITOR --request membership--> PENDING/VISITOR--> denied | -->REJECTED/VISITOR --acknowledges--> VISITOR
社群所有者可邀請使用者加入社群。受邀請的使用者可在登入入口網站時看到邀請。然後,使用者可接受或拒絕邀請。
VISITOR--> invited--> INVITED/VISITOR--> accepts--> MEMBER VISITOR--> invited--> INVITED/VISITOR--> declines--> VISITOR
如果系統設定正確,會透過電子郵件將邀請訊息傳送給受邀請的使用者。要透過電子郵件接收邀請,使用者必須在其入口網站中正確設定電子郵件地址。
「禁止」是所有者阻止某些使用者存取社群的程序。可禁止社群成員、非社群成員甚至所有者存取社群,在限制了成員資格的社群,被禁止的使用者甚至無法提交加入社群的要求。
所有者可取消禁止被禁止的使用者,並恢復該使用者先前的權限。如果使用者被禁止之前為社群成員,則取消禁止後會重新成為社群成員。同樣,如果使用者被禁止之前為社群所有者,則取消禁止後會再次成為社群所有者。
MEMBER--> banned--> BANNED/VISITOR--> unbanned--> MEMBER OWNER/MEMBER--> banned--> BANNED/VISITOR--> unbanned--> OWNER/MEMBER
本節包含下列項目:
入口網站管理員可使用 Portal Server 管理主控台或 psadmin CLI 停用社群。同樣,只有入口網站管理員可啟用被停用的社群。所有使用者 (包括社群成員和所有者) 都無法存取被停用社群。同樣也不能搜尋任何在被停用的社群中發佈的內容。預設情況下會啟用新建立的社群。
可使用 disabled.xml 範本顯示如何將被停用的社群呈現給使用者。如需社群範本的顯示設定檔的詳細資訊,請參閱瞭解社群範本。
社群所有者或系統管理員可刪除社群。無法存取被刪除的社群及其資料。不過資料仍會保留在後端儲存中,因此可視需求復原社群。復原被刪除社群的作業由入口網站管理員完成。提供此還原功能是為了復原被惡意或意外刪除的社群。由於刪除並非永久性的,因此無法以相同名稱建立新社群。目前不支援永久刪除社群。但是,我們可以使用 psadmin 子指令 destroy-community 來永久移除社群。
可使用 deleted.xml 範本顯示如何將被刪除的社群呈現給使用者。如需社群範本的顯示設定檔的詳細資訊,請參閱瞭解社群範本。
建立社群及瀏覽社群的種類樹由搜尋伺服器的分類法提供。如需如何對其進行管理的詳細資訊,請參閱管理種類。
本章包含下列項目:
本節包含下列項目:
社群範本由一組服務 (通道) 和可視配置組成。不過,社群範本不一定會表示配置,例如在 wiki 社群範本中,配置由 wiki 自己表示。社群範本在角色顯示設定檔文件中定義社群可用的服務類型、每項服務的預設設定,以及連結服務的容器。
實際上,社群範本是由屬性檔案、影像以及一個或多個顯示設定檔文件組成。每個社群角色 (例如 OWNER、VISITOR、MEMBER) 都擁有顯示設定檔文件。每個角色範本定義了與特定角色關聯的服務和配置 (如需這些角色的詳細資訊,請參閱管理成員資格)。角色範本的內容會在顯示設定檔文件中顯示。實際上,社群範本包含處理不同角色 (每一角色各一個顯示設定檔文件) 以及取決於一個或多個角色的邏輯,您可取得一組不同的服務和不同的配置。將社群標記為刪除 (deleted.xml) 或停用 ( disable.xml) 時,也會產生可用於自訂內容的顯示設定檔文件。
可透過社群範本建立社群。系統可擁有任意數目的社群範本。在「企業範例」中,一般使用者可在建立社群時選擇社群範本。
社群範本儲存在檔案系統中。社群範本儲存在 PortalServer-DataDir/portals/portal-URI/communitytemplates 目錄中 (此目錄稱為 communityTemplateBaseDir)。請注意,這表示每個入口網站 (在多重入口網站部署環境中) 必須擁有一組自己的社群範本。communityTemplateBaseDir 中的資源束定義與每個範本相關的中介資料。此外,每個範本都擁有用來儲存角色範本的目錄。
communityTemplateBaseDir -+-- template1 -+-- deleted.xml | | | +-- disabled.xml | | | +-- member.xml | | | +-- owner.xml | | | +-- visitor.xml | -+-- template2 -+-- deleted.xml | | | +-- disabled.xml | | | +-- member.xml | | | +-- owner.xml | | | +-- visitor.xml | -+-- template3 -+-- deleted.xml | | | +-- disabled.xml | | | +-- member.xml | | | +-- owner.xml | | | +-- visitor.xml | +-- template1.properties | +-- template1_en.properties | +-- template1_fr.properties | +-- template2.properties | +-- template3.properties | +-- template3_en_US.properties | +-- ...
顯示設定檔 disabled.xml 和 deleted.xml 檔案會控制社群在被停用或被標記為刪除後的內容。如需詳細資訊,請參閱管理社群狀態。
入口網站管理員可在系統中新增社群範本、更新現有社群範本、歸檔及復原社群範本,以及將社群範本從一個入口網站實例匯出至其他實例,及/或使它們保持同步。
每個範本都由一個或多個 XML 格式的角色範本 (member.xml、owner.xml、 visitor.xml、deleted.xml、disabled.xml) 組成。範本目錄包含它所服務之角色的 XML 檔案,例如,用於社群成員的 member.xml、用於社群所有者的 owner.xml,以及用於社群訪客的 visitor.xml。
每個角色範本都是該角色的社群使用者的顯示設定檔文件。檔案必須以顯示設定檔 DTD 為基礎。
<?xml version="1.0" encoding="utf-8" standalone="no"?> <!DOCTYPE DisplayProfile SYSTEM "jar://resources/psdp.dtd"> <DisplayProfile version="1.0" priority="%COMMUNITY_DP_PRIORITY%"> <Properties/> <Channels> <Container name="%COMMUNITY_CONTAINER%" provider="JSPTableContainerProvider"> <Properties> <String name="title" value="%COMMUNITY_NAME%"/> <String name="description" value="%COMMUNITY_DESCRIPTION%"/> <Boolean name="compileToRealPath" value="true"/> </Properties> <Available>...</Available> <Selected>...</Selected> <Channels>...</Channels> </channels> <Providers/> </DisplayProfile>
在建立社群時,範本引擎會使用實際值動態替代顯示設定檔中的下述記號 (由 % 括住)。
為社群指定 (對使用者友善) 名稱。例如,tourists。
指定識別群組的唯一字串。此名稱僅用於內部表示,不會在使用者介面中公開。例如,jdo__tourists。
包含社群的描述。
指定社群的頂層容器。例如,jdo__touristsContainer。
指定合併了產生社群顯示設定檔的優先順序的顯示設定檔。會為每個角色提供不同的值。預設情況下,訪客角色、成員角色和所有者角色的值分別為 1000、1005、1010。
指定社群的搜尋伺服器 URL。
指定社群內容的搜尋資料庫。
指定討論資料庫。
指定入口網站的 ID。例如,portal1。
每個範本都包含資源束屬性檔案,用於定義與該範本相關的中介資料。資源束是可本土化的描述元檔案。每個範本描述元檔案 (必須) 定義下列屬性:
指定範本的唯一 ID。ID 必須符合範本目錄名稱。例如,若範本目錄名稱為 Baseball,且該目錄包含所有三個受支援角色的角色範本 (或 XML 檔案),則 ID 為 Baseball。
在使用者介面 (入口網站桌面) 中指定對使用者友善的名稱來識別範本。例如,Baseball Template。
詳細描述範本及其所提供的服務。例如,Baseball-themed template containing the following services: Player Statistics, Game Discussions, TV Schedule, and Online Chat。
包含範本角色檔案中所用的記號的清單。這僅供參考,並非必需。例如, %COMUNITY_ID% %COMMUNITY_DESCRIPTION% %COMMUNITY_CONTAINER%。
為入口網站環境指定絕對 URI 或相對 URI。例如,http://images.domain.com/images/baseball.jpg。相對 URI 必須相對於入口網站 web-app 環境路徑。
id=Baseball name=Baseball Template description=Baseball-themed template containing the following services: Player Statistics, Game Discussions, TV Schedule, and Online Chat tokens=%COMUNITY_ID% %COMMUNITY_DESCRIPTION% %COMMUNITY_CONTAINER% previewImageURI=http://images.domain.com/images/baseball.jpg |
可依照本節中的指示建立新範本或修改現有範本。您可使用下列三種方式之一建立範本:
使用 psadmin 公用程式匯出範本、新增內容以及匯入內容。
建立內容並匯入內容以覆寫現有範本。
將新檔案新增至現有範本。
移至 communityTemplateBaseDir。
建立:
新範本的新目錄
將現有範本複製到新的範本目錄
例如,鍵入:
cd PortalServer-DataDir/portals/portal-URI/communitytemplates mkdir NewTemplate cp 2column/* NewTemplate/ |
在新的範本目錄中,視需要修改以角色為基礎的顯示設定檔文件。
如需以角色為基礎之顯示設定檔文件的詳細資訊,請參閱範本語法和語義。
建立並編輯屬性檔案,以包含「範本描述元檔案」中所述的屬性,然後儲存檔案。
例如,要為新範本建立新的屬性檔案,請鍵入:
cp 2colimn.properties NewTemplate.properties |
或者,
touch NewTemplate.properties |
要查看新增的範本,可登出任何目前的入口網站階段作業,然後重新登入即可看到變更。
在多重入口網站環境中 (系統中有一個以上的入口網站),使用 PAR 機制 (而非直接編輯 communityTemplateBaseDir 中的檔案) 以跨多重入口網站套用社群範本的變更。如此會讓所有入口網站擁有一組相同的社群範本。如果不想使用跨入口網站的同步環境,請使用為單一入口網站環境建立新範本中的指示。
可使用 psadmin export --type desktop 匯出桌面資料 (包含社群範本),然後將它匯出以編輯內容;也可只使用社群範本 (而不使用任何其他桌面資料) 從頭開始建立新的 PAR 結構。
依照為單一入口網站環境建立新範本中的指示編輯內容。
建立包含下列內容的新 PAR 檔案:
-+-- META-INF -- MANIFEST.MF | +-- pbfiles -+-- communityTemplateBaseDir -+-- template1 -+-- deleted.xml | | | | | +-- disabled.xml | | | | | +-- member.xml | | | | | +-- owner.xml | | | | | +-- visitor.xml | | | +-- template1.properties | | | +-- template1_en.properties | | | +-- template1_fr.properties | | | +-- ... | +-- static -- community -- images -- template1.gif
視需要編輯或新增內容。
建立新 PAR 檔案。
使用 psadmin import 子指令跨所有入口網站匯入 PAR 內容。
如果您匯出所有桌面資料,請注意 psadmin export 子指令將匯出所有桌面資料;如果您只使用社群範本從頭開始建立新 PAR 結構,則該指令只會匯出社群範本。
如需詳細資訊,請參閱「Sun Java System Portal Server 7.2 Command-Line Reference」中的「psadmin export」。
本節說明如何從 Sun JavaTM System Portal Server 管理主控台建立及管理社群和社群使用者。
[社群管理] 頁面中的表格列出了入口網站中的社群。使用者可搜尋社群、管理社群和社群使用者。
社群管理表格包含下列資訊:
社群名稱
社群中的使用者數目
指出社群是啟用還是停用
指出社群是使用中還是標記為刪除
指出社群是列出還是未列出
指出社群是否限制成員資格
指出社群是否受保護
如需如何管理社群和使用者的步驟,請參閱管理社群和使用者。
本節說明如何從 Sun Java System Portal Server 管理主控台管理社群和使用者。
使用下列步驟管理社群和使用者:
在 [入口網站] 標籤中按一下某個入口網站。
按一下 [社群] 標籤。
顯示 [社群管理] 頁面。
在 [搜尋社群] 文字方塊中鍵入社群的名稱,然後按一下 [搜尋]。
列出符合搜尋條件的社群。
可使用萬用字元進行搜尋。例如,如果您的搜尋條件是 *blog,則會列出所有名稱中的任意位置包含 blog 一字的社群。鍵入 * 將顯示所有社群。
在 [入口網站] 標籤中按一下某個入口網站。
按一下 [社群] 標籤。
顯示 [社群管理] 頁面。
按一下 [新增] 按鈕。
顯示 [建立社群] 頁面。
在文字方塊中鍵入值,並從下拉式功能表中選取。
按一下 [確定] 完成。
在 [入口網站] 標籤中按一下某個入口網站。
按一下 [社群] 標籤。
顯示 [社群管理] 頁面。
選取社群。
一次只能管理一個社群
按一下 [管理目前的使用者] 按鈕。
顯示 [管理使用者] 頁面。
按一下 [新增] 按鈕。
顯示 [新增社群使用者] 頁面。
如果要變更現有使用者的狀態,請移至步驟 7。
在 [使用者 DN] 文字方塊中鍵入使用者名稱,然後按一下 [新增]。
要變更現有使用者的狀態,可選取使用者。
按一下某個可用的選項按鈕。
可用的選項有:
移除 – 從社群移除使用者
指定所有權 – 將所有者權限指定給社群成員
取消指定所有權 – 移除所有者權限
禁止 – 從社群禁止
取消禁止 – 取消從社群禁止
按 [上一頁] 回到 [社群管理] 頁面。
在 [入口網站] 標籤中按一下某個入口網站。
按一下 [社群] 標籤。
顯示 [社群管理] 頁面。
選取社群,然後按一下 [管理擱置的使用者] 按鈕。
顯示 [管理擱置的使用者] 頁面。
從 [等待成員資格核准] 表格中選取使用者,然後按一下 [核准] 或 [拒絕] 按鈕。
按 [上一頁] 回到 [社群管理] 頁面。
在 [入口網站] 標籤中按一下某個入口網站。
按一下 [社群] 標籤。
顯示 [社群管理] 頁面。
在 [名稱] 下選取社群。
可選取多個社群。
按一下 [標記以進行刪除] 按鈕。
要永久刪除社群,可使用以下指令:psadmin remove-community -u amadmin -f password_file -p portal --name community_name
社群搜尋和管理功能涉及社群 Web 服務。預設情況下,社群 Web 服務 URL 包含與第一個入口網站實例相同的主機。在使用負載平衡器的多節點安裝中,您可變更社群 Web 服務 URL 以使用負載平衡器主機。
在終端機視窗中鍵入下列指令:
./psadmin get-attribute -u amadmin -p portal-URI -m communities -a WebServicesURL
./psadmin set-attribute -u amadmin -p portal-URI - m communities -a WebServicesURL URL
指定管理員的辨別名稱。
指定入口網站 ID。
指定 WebServicesURL 屬性的值。例如,URL 的格式可以是 http://foo.com:8080/communitymanagerwebservices/communitymanagerwebservices。請注意,URL 的 communitymanagerwebservices/communitymanagerwebservices 部分不可變更。
WebServicesURL 屬性沒有預設值。預設情況下,空值表示將使用第一個入口網站實例的主機。