Condividi tramite


Importazione ed esportazione della configurazione di identità e gruppo

I file di configurazione dell'identità peer e del gruppo possono essere importati ed esportati da un endpoint a un altro usando le funzioni di importazione ed esportazione delle identità disponibili nelle API di gestione identità e raggruppamento. Queste funzioni sono utili perché consentono a un utente di esportare in modo rapido e pratico le identità e le informazioni di configurazione del gruppo da un computer a un altro computer.

Importazione ed esportazione di dati di identità peer

I dati di identità di un peer vengono esportati chiamando PeerIdentityExport con il nome dell'identità per esportare e una password usata per crittografare le credenziali associate. Questa funzione restituisce una stringa XML contenente il nome dell'identità del peer e le credenziali crittografate per tale identità specifica, che può quindi essere passata a un computer diverso usando un meccanismo di trasferimento esterno, ad esempio posta elettronica. Nell'esempio seguente viene illustrato il formato della stringa XML:

<PEERIDENTITYEXPORT VERSION="1.0">
   <PEERNAME>
     <!-- UTF-8 encoded peer name of the identity -->
   </PEERNAME>
   <DATA xmlns:dt="urn:schemas-microsoft-com:datatypes" dt:dt="bin.base64">
      <!-- base64 encoded / PFX encoded and encrypted IDC with the private key -->
   </DATA>
</PEERIDENTITYEXPORT>

I dati di identità esportati possono essere recuperati chiamando PeerIdentityImport e passando la stringa XML con la password fornita nella chiamata precedente a PeerIdentityExport. Questa funzione restituisce il nome peer dell'identità importata. Il nome e le credenziali dell'identità importati possono essere usati esattamente come un nome di identità restituito da PeerEnumIdentities o PeerIdentityCreate.

Nota

Quando si chiama PeerIdentityExport, l'utente dell'applicazione o dell'API deve fornire una password complessa di lunghezza sufficiente. Questo è importante perché i dati di identità importati contengono la chiave privata per l'identità.

 

Importazione ed esportazione di una configurazione di identità di gruppo

Il raggruppamento peer consente a un peer di esportare i dati di configurazione del gruppo da un endpoint a un altro usando API di importazione ed esportazione specifiche. Per importare i dati di configurazione, l'identità del peer che esegue l'importazione (e chi ha eseguito in precedenza l'esportazione) deve essere presente nel computer in cui devono essere importati i dati di configurazione. Questa identità può essere ottenuta esportandola e importandola dai metodi specificati nella sezione precedente di questo argomento: Importazione ed esportazione di dati di identità peer.

I dati di configurazione del gruppo contengono tutte le informazioni per un'identità da aggiungere a un gruppo da un nuovo endpoint. In particolare, i dati di configurazione contengono la catena GMC, il nome peer del gruppo, il nome del cloud, l'ambito e un set di flag specifici PNRP. Per un'identità proprietaria di un gruppo, una chiave privata per il gruppo è inclusa nelle informazioni di configurazione del gruppo.

Nota

Quando si chiama PeerGroupExportConfig, un utente dell'applicazione o dell'API deve fornire una password complessa di lunghezza sufficiente. Ciò è importante perché i dati di identità importati contengono la chiave privata per il gruppo.

 

Per esportare la configurazione corrente del gruppo peer, chiamare PeerGroupExportConfig, passando l'handle al gruppo (ottenuto da una chiamata precedente a PeerGroupJoin, PeerGroupOpen o PeerGroupCreate) e una password usata per crittografare e proteggere il file di configurazione. Questa funzione restituisce una stringa XML che contiene la configurazione nel formato dell'esempio seguente, che può quindi essere scritta in un file e passata a un altro computer usando un meccanismo di trasferimento esterno, ad esempio posta elettronica.

<PEERGROUPCONFIG VERSION="1.0">
  <IDENTITYPEERNAME>
    <!-- UTF-8 encoded peer name of the identity -->
  </IDENTITYPEERNAME>
  <GROUPPEERNAME>
    <!-- UTF-8 encoded peer name of the group -->
  </GROUPPEERNAME>
  <CLOUDNAME>
    <!-- UTF-8 encoded Unicode name of the cloud -->
  </CLOUDNAME>
  <SCOPE>
    <!-- UTF-8 encoded Unicode name of the scope: global, site-local, link-local -->
  </SCOPE>
  <CLOUDFLAGS>
    <!-- A DWORD that contains cloud-specific settings, represented as a string -->
  </CLOUDFLAGS>
  <GMC xmlns:dt="urn:schemas-microsoft-com:datatypes" dt:dt="bin.base64">
    <!-- base64/PKCS7 encoded GMC chain -->
  </GMC>
</PEERGROUPCONFIG>

Dopo aver ottenuto la configurazione del gruppo come stringa XML, il gruppo può essere importato chiamando PeerGroupImportConfig con la stringa XML di configurazione e la password specifica fornita a PeerGroupExportConfig. Questa funzione restituisce un nome di identità e un nome peer del gruppo, che può quindi essere fornito a PeerGroupOpen e una connessione al gruppo stabilito.