Segui i passaggi descritti in questa guida rapida e in circa 10 minuti avrai una semplice app console .NET C# che invia richieste all'API per i rivenditori per la registrazione zero-touch.
Prerequisiti
Per eseguire questa guida rapida, devi disporre di:
- Un Account Google che fa parte del tuo account rivenditore per la registrazione zero-touch. Se non hai ancora completato l'onboarding, segui i passaggi descritti nella sezione Inizia della guida al portale per i rivenditori.
- Visual Studio 2013 o versioni successive.
- Accesso a internet e a un browser web.
Passaggio 1: attiva l'API di registrazione zero-touch
- Utilizza questa procedura guidata per creare o selezionare un progetto in Google Developers Console e attivare automaticamente l'API. Fai clic su Continua, quindi su Vai alle credenziali .
- Imposta A quali dati accederai? su Dati dell'applicazione.
- Fai clic su Avanti. Dovresti visualizzare una richiesta di creazione di un account di servizio.
- Assegna un nome descrittivo a Nome account di servizio.
- Prendi nota dell'ID account di servizio (che ha l'aspetto di un indirizzo email) perché lo utilizzerai in seguito.
- Imposta il Ruolo su Account di servizio > Utente account di servizio.
- Fai clic su Fine per completare la creazione dell'account di servizio.
- Fai clic sull'indirizzo email dell'account di servizio che hai creato.
- Fai clic su **Chiavi**.
- Fai clic su **Aggiungi chiave**, quindi su **Crea nuova chiave**.
- In **Tipo di chiave**, seleziona **JSON**.
- Fai clic su Crea e la chiave privata viene scaricata sul computer.
- Fai clic su **Chiudi**.
- Sposta il file nella directory di lavoro e rinominalo
service_account_key.json
.
Passaggio 2: collega l'account di servizio
- Apri il portale per la registrazione zero-touch. Potresti dover eseguire l'accesso.
- Fai clic su Account di servizio.
- Fai clic su Collega account di servizio.
- Imposta Indirizzo email sull'indirizzo dell'account di servizio che hai creato.
- Fai clic su Collega account di servizio per utilizzare l'account di servizio con il tuo account di registrazione zero-touch.
Passaggio 3: prepara il progetto
- Crea un nuovo progetto Console Application (Applicazione console) C# .NET Core in Visual Studio.
- Apri il gestore dei pacchetti, seleziona la sorgente del pacchetto nuget.org e aggiungi i seguenti pacchetti:
Google.Apis.AndroidProvisioningPartner.v1
Google.Apis.Auth
Per saperne di più, leggi il documento Microsoft Installare e utilizzare un pacchetto.
Passaggio 4: configura il sample
- Trascina
service_account_key.json
(scaricato nel passaggio 1) in Esplora soluzioni di Visual Studio. - Seleziona
service_account_key.json
, poi vai alla finestra Proprietà e imposta il campo Copia nella directory di output su Copia sempre. - Sostituisci i contenuti di
Program.cs
con il seguente codice. - Inserisci il tuo ID rivenditore partner come valore per
PartnerId
(prima riga dell'app).
using Google.Apis.AndroidProvisioningPartner.v1; using Google.Apis.AndroidProvisioningPartner.v1.Data; using Google.Apis.Auth.OAuth2; using Google.Apis.Services; using System; using System.Collections.Generic; using System.IO; namespace ZeroTouchResellerQuickstart { class Program { // TODO: replace this with your partner reseller ID. static long PartnerId = 11036885; // Use a single scope for the all methods in the reseller API. static readonly string[] Scopes = { "https://www.googleapis.com/auth/androidworkprovisioning" }; static string ApplicationName = "Zero-touch Reseller .NET Quickstart"; static void Main(string[] args) { // Create a credential to authorize API requests using a service account key. // The service account must be linked using the zero-touch portal. ServiceAccountCredential credential; using (var stream = new FileStream("service_account_key.json", FileMode.Open, FileAccess.Read)) { credential = GoogleCredential.FromStream(stream) .CreateScoped(Scopes) .UnderlyingCredential as ServiceAccountCredential; } // Create a zero-touch enrollment API service endpoint. var service = new AndroidProvisioningPartnerService(new BaseClientService.Initializer { HttpClientInitializer = credential, ApplicationName = ApplicationName }); // Send an API request to list all our customers. PartnersResource.CustomersResource.ListRequest request = service.Partners.Customers.List(PartnerId); ListCustomersResponse response = request.Execute(); // Print out the details of each customer. IList<Company> customers = response.Customers; if (customers != null) { foreach (Company customer in customers) { Console.WriteLine("Name:{0} ID:{1}", customer.CompanyName, customer.CompanyId); } } else { Console.WriteLine("No customers found"); } } } }
ID partner
In genere, per le chiamate API è necessario l'ID rivenditore partner come argomento. Per trovare il tuo ID partner dal portale della registrazione zero-touch, segui questi passaggi:
- Apri il portale. Potresti dover eseguire l'accesso.
- Fai clic su Account di servizio.
- Copia il tuo ID partner dalla riga Il tuo ID rivenditore.
Passaggio 5: esegui l'esempio
Per compilare ed eseguire il sample, fai clic su
Avvia nella barra degli strumenti di Visual Studio.Risoluzione dei problemi
Spiegaci cosa non è andato a buon fine con la guida introduttiva e cercheremo di risolvere il problema. Per scoprire in che modo la funzionalità zero-touch utilizza gli account di servizio per autorizzare le chiamate API, consulta Autorizzazione.