Jak funguje zabezpečení skupiny
Partnerské skupiny vyžadují, aby každý člen měl konkrétní certifikát, kterému se říká certifikát GMC (Group Member Certificate). Certifikát GMC zajišťuje, že všechny záznamy vyměňované mezi účastníky jsou digitálně podepsané. Veřejný klíč partnera je obsažen ve strukturách, které se předávají jako část komunikace mezi partnery, včetně PEER_CREDENTIAL_INFO.
GMC může být vydán v řetězci. Tvůrce může například vydat GMC správci A, který může vydat GMC správci B, který může vydat GMC členovi M. Výsledný řetězec GMC je: creator->A->B->M, který má délku 4. Délka řetězu je důležitá, protože nemůže být delší než 24. Pokud se 24. správce v řetězci pokusí vydat GMC členu, PeerGroupIssueCredentials nebo PeerGroupCreateInvitation vrátí PEER_E_CHAIN_TOO_LONG.
GMC lze také vydat voláním PeerGroupIssueCredentials. GMC znamená členství uživatele ve skupině, pro kterou je GMC vydáno, a může mít omezenou nebo neomezenou životnost. Aktivita člena skupiny nemůže být delší než doba života zadaná v GMC.
Poznámka
Nekonečná životnost GMC je v současné době nastavena na 1 000 let.
Aktivita člena skupiny je omezená životností GMC a zahrnuje následující:
- Operace záznamu – Uzel nemůže publikovat informace ve skupině po vypršení platnosti svého členství ve skupině ani publikovat záznamy, které mají životnost delší než doba členství uzlu ve skupině.
- Operace členství – Správce skupiny nemůže vydat členství, které má životnost, jež přesahuje datum specifikované v členství správce skupiny. Například pokud má správce zbývajících 500 hodin životnosti GMC, musí být všechna vydaná členství kratší než 500 hodin.
Vzhledem k tomu, že člen skupiny nemůže mít životnost delší než správce, který tohoto člena pozval, doporučujeme nastavit životnost správce buď jako nekonečnou, nebo na velmi dlouhou dobu. Tvůrce skupiny má ve výchozím nastavení neomezenou životnost.
Prodloužení členství ve skupině
Pokud chcete obnovit přihlašovací údaje správce nebo člena, jehož životnost GMC je připravená k vypršení platnosti, máte následující dvě možnosti:
Zavolejte PeerGroupIssueCredentials a předejte identitu člena, jehož životnost má brzy vypršet. Pokud jsou přihlašovací údaje zadány jako NULL a informace o členství rovnocenného uzlu jsou pro skupinu k dispozici, doba prodloužení je nastavena na stejnou dobu, která je uvedena v dříve publikovaných přihlašovacích údajích člena. Pokud je třeba zadat jiné období trvání, musí být poskytnuta nová struktura PEER_CREDENTIAL_INFO, která obsahuje novou dobu trvání použití, a pak se pro člena zveřejní nový GMC.
Funkce PeerGroupIssueCredentials volitelně přebírá příznak PEER_GROUP_STORE_CREDENTIALS, který automaticky publikuje nové přihlašovací údaje člena v databázi skupiny. Když se člen příště připojí ke skupině, a to buď poprvé, nebo po přechodu do režimu offline, člen získá aktualizovanou GMC z databáze.
Volejte PeerGroupCreateInvitation pro přenesení identity člena, jehož životnost GMC má brzy vypršet. Pokud je vypršení platnosti zadané v pozvánce NULL, doba životnosti GMC je stejná jako u GMC správce, který vydává členství. Pokud tvůrce určí vypršení platnosti jako NULL, je vydán GMC s neomezenou životností.
Pokud je uzlu vydán Řídicí certifikát skupiny (GMC) s platností, která vyprší před hodnotou životnosti přítomnosti, nebudou adresy tohoto uzlu dostupné ve strukturách PEER_MEMBER vrácených ve výčtu zahájeném voláním PeerGroupEnumMembers. K tomu dochází, protože informace o přítomnosti nejsou v tomto případě publikovány, i když není nastaven příznak PEER_DISABLE_PRESENCE.