Folgen Sie der Anleitung in diesem Schnellstartleitfaden. Nach etwa 10 Minuten haben Sie eine einfache .NET-C#-Konsolen-App, die Anfragen an die Reseller API für die Zero-Touch-Registrierung sendet.
Vorbereitung
Zum Ausführen dieser Kurzanleitung benötigen Sie Folgendes:
- Ein Google-Konto, das Mitglied Ihres Reseller-Kontos für die Zero-Touch-Registrierung ist. Wenn Sie noch nicht eingerichtet sind, folgen Sie der Anleitung unter Erste Schritte im Leitfaden für das Reseller-Portal.
- Visual Studio 2013 oder höher
- Zugriff auf das Internet und einen Webbrowser.
Schritt 1: API für die Zero-Touch-Registrierung aktivieren
- Verwenden Sie diese , um ein Projekt in der Google Developers Console zu erstellen oder auszuwählen. die API automatisch aktivieren. Klicken Sie auf Weiter und dann auf Zu den Anmeldedaten.
- Wählen Sie unter Auf welche Daten wird zugegriffen? die Option Anwendungsdaten aus.
- Klicken Sie auf Weiter. Sie werden aufgefordert, ein Dienstkonto zu erstellen.
- Geben Sie für Name des Dienstkontos einen aussagekräftigen Namen ein.
- Notieren Sie sich die Dienstkonto-ID (sie sieht aus wie eine E-Mail-Adresse), da Sie sie später benötigen.
- Legen Sie für Rolle die Option Dienstkonten > Dienstkontonutzer fest.
- Klicken Sie auf Fertig, um das Erstellen des Dienstkontos abzuschließen.
- Klicken Sie auf die E-Mail-Adresse des von Ihnen erstellten Dienstkontos.
- Klicken Sie auf **Schlüssel**.
- Klicken Sie auf „Schlüssel hinzufügen“ und dann auf „Neuen Schlüssel erstellen“.
- Wählen Sie für **Schlüsseltyp** die Option **JSON** aus.
- Klicken Sie auf Erstellen. Der private Schlüssel wird auf Ihren Computer heruntergeladen.
- Klicken Sie auf **Schließen**.
- Verschieben Sie die Datei in Ihr Arbeitsverzeichnis und benennen Sie sie in
service_account_key.json
um.
Schritt 2: Dienstkonto verknüpfen
- Öffnen Sie das Portal für die Zero-Touch-Registrierung. Eventuell musst du dich anmelden.
- Klicken Sie auf Dienstkonten.
- Klicken Sie auf Dienstkonto verknüpfen.
- Geben Sie unter E-Mail-Adresse die Adresse des von Ihnen erstellten Dienstkontos ein.
- Klicken Sie auf Dienstkonto verknüpfen, um das Dienstkonto mit Ihrem Zero-Touch-Registrierungskonto zu verwenden.
Schritt 3: Projekt vorbereiten
- Erstellen Sie in Visual Studio ein neues .NET Core-C#-Projekt zur Console-Anwendung.
- Öffnen Sie den Paketmanager, wählen Sie die Paketquelle nuget.org aus und fügen Sie die folgenden Pakete hinzu:
Google.Apis.AndroidProvisioningPartner.v1
Google.Apis.Auth
Weitere Informationen finden Sie im Microsoft-Dokument Installation und Verwendung eines Paket.
Schritt 4: Beispiel einrichten
- Ziehen Sie
service_account_key.json
(in Schritt 1 heruntergeladen) in Ihr visuelles Element Studio-Projektmappen-Explorer - Wählen Sie
service_account_key.json
aus und wechseln Sie dann zum Fenster „Properties“ (Eigenschaften). Setzen Sie das Feld In Ausgabeverzeichnis kopieren auf Immer kopieren. - Ersetzen Sie den Inhalt von
Program.cs
durch den folgenden Code. - Fügen Sie Ihre eigene Reseller-Partner-ID als Wert für
PartnerId
(erste Zeile der App) ein.
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"); } } } }
Partner-ID
Für API-Aufrufe ist in der Regel Ihre Reseller-Partner-ID als Argument erforderlich. So finden Sie Ihre Partner-ID im Zero-Touch-Registrierungsportal:
- Öffnen Sie das Portal. Eventuell musst du dich anmelden.
- Klicken Sie auf Service Konten.
- Kopieren Sie Ihre Partner-ID aus der Zeile Ihre Reseller-ID.
Schritt 5: Beispiel ausführen
Klicken Sie zum Erstellen und Ausführen des Beispiels in der Visual Studio-Symbolleiste auf
Start.Fehlerbehebung
Teilen Sie uns mit, was bei der Kurzanleitung schiefgelaufen ist. Wir werden dann daran arbeiten, und das Problem zu beheben. Weitere Informationen dazu, wie Zero-Touch Dienstkonten zum Autorisieren von API-Aufrufen verwendet, finden Sie unter Autorisierung.