共用方式為


群組安全性的運作方式

對等群組要求每個成員都有特定的憑證,稱為「群組成員憑證」 (GMC) 。 GMC 憑證可確保在對等之間交換的所有記錄都經過數位簽署。 對等的公開金鑰包含在在對等之間的通訊過程中傳遞的結構,包括 PEER_CREDENTIAL_INFO

GMC 可以在鏈結中發出。 例如,建立者可以將 GMC 發出給系統管理員 A,該系統管理員可以將 GMC 發行給系統管理員 B,而該系統管理員可以將 GMC 發行給成員 M。產生的 GMC 鏈結為:creator-A-B-M >>> ,長度為 4。 鏈結長度很重要,因為它不能超過 24。 如果鏈結中的第 24 位系統管理員嘗試向成員發出 GMC, PeerGroupIssueCredentialsPeerGroupCreateInvitation 會傳回PEER_E_CHAIN_TOO_LONG。

您也可以呼叫 PeerGroupIssueCredentials來發出 GMC。 GMC 表示 GMC 簽發給群組中的使用者成員資格,而且可以有有限或無限的存留期。 群組成員活動不能超過 GMC 中指定的存留期。

注意

無限 GMC 存留期目前設定為 1000 年。

 

群組成員活動受限於 GMC 存留期,並包含下列專案:

  • 記錄作業 - 對等無法在群組成員資格到期後發佈群組中的資訊,或發佈存留期超過對等群組成員資格存留期的記錄。
  • 成員資格作業 - 群組管理員無法發出超過群組管理員成員資格中所指定日期的存留期成員資格。 例如,如果系統管理員在其 GMC 存留期剩餘 500 小時,則發出的所有成員資格都必須小於 500 小時。

因為群組成員的存留期不能超過邀請該群組成員的系統管理員,所以建議您將系統管理員的 GMC 存留期設定為無限,或很長的存留期。 群組建立者預設會有無限存留期。

更新群組成員資格

若要更新 GMC 存留期準備好到期之系統管理員或成員的認證,您有下列兩個選項:

  • 呼叫 PeerGroupIssueCredentials ,並傳遞其存留期準備好到期的成員身分識別。 如果認證指定為 Null ,且對等的成員資格資訊可供群組使用,則更新時間會設定為先前發行成員認證中指定的相同持續時間。 如果必須指定不同的持續時間期間,則必須提供包含新存留期的新 PEER_CREDENTIAL_INFO 結構,然後為成員發佈新的 GMC。

    PeerGroupIssueCredentials函式選擇性地採用 PEER_GROUP_STORE_CREDENTIALS 旗標,以自動在群組資料庫中發佈成員的新認證。 當成員下次連線到群組時,第一次或離線之後,成員會從資料庫取得更新的 GMC。

  • 呼叫 PeerGroupCreateInvitation 以傳遞 GMC 存留期準備好到期之成員的身分識別。 如果邀請中指定的到期時間是 Null,GMC 的存留期與發出成員資格的系統管理員 GMC 相同。 如果建立者將到期指定為 Null,則會發出具有無限存留期的 GMC。

    如果對等發出在目前存留期值之前到期的 GMC,對等的位址將無法在呼叫PeerGroupEnumMembers所起始的列舉中傳回的PEER_MEMBER結構中使用。 這是因為目前案例中未發佈目前狀態資訊,即使未設定PEER_DISABLE_PRESENCE旗標也一樣。