Yetkilendirme

Uygulamalar, el değmeden kayıt müşteri API'sine yapılan çağrıları yetkilendirir. OAuth kullanarak güncelleyin. Bu belgede, API'nin yetkilendirme aşamasındaki kurumsal mobilite yönetimi (EMM) sağlayıcıları ve kurumsal BT geliştiricileri. Bu belgeyi okuduktan sonra, ve hesap gereksinimlerini uygulamanızın kullanıcılarına açıklayın.

Yetkilendirme hızlı başlangıç kılavuzu

  • El değmeden kayıt API'si ile Google Cloud Platform projesi oluşturmak için ve OAuth istemci gizli anahtarları için bu sihirbazı çalıştırın.
  • Java, .NET veya Python. Google'ın API istemci kitaplıklarını kullanarak dil.

Genel Bakış

Cihaz ve müşteri kaynağı ilişkisi

  1. Bir veya daha fazla BT yöneticisi, el değmeden kayıt özelliğini kullanan müşteri hesabındaki kullanıcılardır.
  2. BT yöneticileri kimlik doğrulaması için bir Google Hesabı kullanır.
  3. API istekleri, API isteklerini bir kullanıcı adına yetkilendirmek için OAuth2 jetonu iletir. BT yöneticisi.

Müşteri hesapları

Bir kuruluşun yapılandırmaları, cihazları ve (BT yöneticisi) kullanıcıları hesap oluşturabilirsiniz. Müşteri hesabı bir gruba benzer ve Bayi, kuruluş ilk kez gerçekleştirdiğinde bir müşteri El değmeden kayıt için cihaz satın alır. BT yöneticileri diğer kullanıcıları el değmeden kayıt portalını kullanarak kuruluşlarına tanıtırlar.

API, hesapları tanımlamak için sayısal müşteri kimlikleri kullanır. Müşteri kimliğini API yöntemleri çağrılırken URL yolunun parçası olarak. Uygulamanızın, API yöntemlerini çağırmadan önce kullanıcının müşteri kimliğini alması gerekir.

Aşağıdaki örnekte, API çağrısını yetkilendiren kullanıcının müşteri hesaplarının nasıl alınacağı gösterilmektedir:

Java

AndroidProvisioningPartner.Customers.List accountRequest = service.customers().list();
accountRequest.setPageSize(100);
CustomerListCustomersResponse accountResponse = accountRequest.execute();

List<Company> customers = accountResponse.getCustomers();
if (customers == null || customers.isEmpty()) {
    // No accounts found for the user. Confirm the Google Account
    // that authorizes the request can access the zero-touch portal.
    System.out.println("No zero-touch enrollment account found.");
} else {
    // Print the customers in this page.
    for (Company customer : customers) {
        System.out.format("%s\tcustomers/%d\n",
              customer.getCompanyName(), customer.getCompanyId());
    }
}

.NET

CustomersResource.ListRequest accountRequest = service.Customers.List();
accountRequest.PageSize = 100;
CustomerListCustomersResponse accountResponse = accountRequest.Execute();
IList<Company> customers = accountResponse.Customers ?? new List<Company>();
if (customers.Count == 0)
{
    // No accounts found for the user. Confirm the Google Account
    // that authorizes the request can access the zero-touch portal.
    Console.WriteLine("No zero-touch enrollment account found.");
}
foreach (Company customer in customers)
{
    Console.WriteLine("{0}\tcustomers/{1}",
                      customer.CompanyName,
                      customer.CompanyId);
}

Python

response = service.customers().list(pageSize=100).execute()
if 'customers' not in response:
  # No accounts found for the user. Confirm the Google Account
  # that authorizes the request can access the zero-touch portal.
  print('No zero-touch enrollment account found.')
  response['customers'] = []

for customer in response['customers']:
  print('{0}\tcustomers/{1}'.format(
      customer['companyName'], customer['companyId']))

Uygulamanızda, hesap sonuç sayfalarında gezinmeniz gerekir çünkü Yukarıdaki örnekte yalnızca ilk 100 hesap yazdırılır. Bunu nasıl yapacağınızı öğrenmek için Sayfalandırılmış sonuçlar başlıklı makaleyi okuyun.

Her kuruluşun genellikle bir müşteri hesabı fakat daha büyük kuruluşlar vardır Her bölüm için farklı müşteri hesapları kullanabilir. BT yöneticileri farklı müşteri hesaplarının üyesi olabileceğinden, uygulamanız kullanıcıların yeni müşteri hesaplarını bulup kullanmasına yardımcı olmalıdır. Uygulamanızda, her müşteri hesabını aşağıdakileri kullanarak etiketleyin: companyName değerini belirleyin.

Kullanıcılar

BT yöneticileri, uygulamanızın kendileri adına gönderdiği API isteklerini yetkilendirir. API isteklerine yetki vermek için uygulamanızın kullanıcısının aşağıdakileri yapması gerekir:

  1. E-posta adresiyle bir Google Hesabı ilişkilendirin.
  2. Aynı e-posta adresini kullanarak bir müşteri hesabına katılın.
  3. El değmeden kayıt müşteri Hizmet Şartları'nı (ToS) kabul edin.

Uygulamanızı kullananların kurulum yapmasına yardımcı olmak için başlayın ve bir Google Hesabı ile ilişkilendirin kendi dokümanlarınızda bulabilirsiniz.

Kullanıcı yönetimi

BT yöneticileri, müşteri hesaplarının kullanıcılarını el değmeden kayıtta yönetir. kayıt portalına gidin. Bir müşteri hesabındaki kullanıcıların rolü: Sahip veya Yönetici. Her iki rol de müşteri API'sine aynı erişime sahiptir ancak Sahip, diğer kullanıcıları yönetebilir.

Hizmet Şartları kabulü

Uygulamanızın kullanıcılarının API çağrılarını yetkilendirebilmesi için en son Hükümler ve Koşullar'ı kabul etmeleri gerekir. Bu durum, BT yöneticileri el değmeden kayıt özelliğini ilk kez kullandığında veya Hizmet Şartları'nı güncellemeniz gerekir. Kullanıcı en son Hizmet Şartları'nı kabul etmediğinde API, HTTP 403 Forbidden durum kodu ve yanıt gövdesinde bir TosError

Portal, oturum açan kullanıcılardan en yeni Hizmet Şartları'nı kabul etmelerini otomatik olarak ister. inç Uygulamanızda kullanabileceğiniz önerilen yaklaşımları görmek için EMM entegrasyon kılavuzundaki Hizmet Şartları ile İlgili İşlemler bölümünü okuyun.

Uygulamanıza yetkilendirme ekleme

Uygulamanız tarafından müşteri API'sine gönderilen her isteğin bir yetkilendirme jetonu içermesi gerekir. Bu jeton ayrıca uygulamanızı Google'a tanıtır. Çünkü müşteri API'si kullanıcı verilerine erişiyorsa dışı verilerdir. Uygulamanız, API yetkilendirmesi yetkisini BT yöneticilerine OAuth 2.0 protokolüne bakın.

Talimatlar

Java, .NET ve Python uygulamaları için geçerlidir. Farklı bir dil kullanıyorsanız aşağıdaki iki dildeki talimatları uygulayın: aşağıdaki adımları izleyerek uygulamasını indirin.

Yetkilendirme hakkında daha fazla bilgi edinmek için Google'a Erişmek için OAuth 2.0'ı Kullanma API'ler.

Yetkilendirme kapsamları

API yetkilendirme kapsamını kullanma İstekte bulunmak için uygulamanızda https://www.googleapis.com/auth/androidworkzerotouchemm OAuth 2.0 erişim jetonu.

Kapsam parametresi, belirli bir erişime sahip olan çağrıya izin verir. Erişim jetonları yalnızca işlem kümesi için geçerlidir ve jeton isteğinin kapsamında açıklanan kaynaklar. API tüm Gösterilen tek el değmeden kayıt kapsamının gösterildiği yöntemler ve kaynaklar bölümünü ziyaret edin.

Google API ile kullanılan el değmeden kayıt kapsamı örneği hakkında daha fazla bilgi edinmek için Java, .NET ve Python. Google API kapsamlarını kullanma hakkında daha fazla bilgi için Google API'lerine Erişmek için OAuth 2.0

API anahtarları için en iyi uygulamalar

Uygulamalarınızda API anahtarları kullanırken bu anahtarların güvenliğini sağlamaya özen gösterin. Kimlik bilgilerinizin herkese açık şekilde ifşa edilmesi, hesabınızın hesabınızdan beklenmedik ücretlere neden olabilecek şekilde, güvenliği ihlal edilmiş olabilir. Saklamak için API anahtarlarınızın güvenliğini sağlamak için aşağıdaki en iyi uygulamaları izleyin:

API anahtarlarını doğrudan koda yerleştirmeyin
Kod içine yerleştirilmiş API anahtarları yanlışlıkla genel (örneğin, kullandığınız koddan anahtarları kaldırmayı unutursanız) paylaşacağım. API anahtarlarınızı uygulamalarınıza yerleştirmek yerine şurada depolayın: ortam değişkenleri veya uygulamanızın kaynağının dışındaki dosyalarda ağacı.
API anahtarlarını uygulamanızın kaynak ağacındaki dosyalarda saklamayın
API anahtarlarını dosyalarda depoluyorsanız dosyaları uygulamanızın anahtarlarınızın kaynak kodu kontrolünüze girmediğinden emin olmak için kaynak ağacını bahsedeceğim. Bu, özellikle herkese açık bir kaynak kodu kullanıyorsanız önemlidir yönetim sistemlerinden biri olabilir.
API anahtarlarınızın yalnızca IP adresleri, yönlendiren URL'ler ve mobil uygulamalarla ilgili
IP adreslerini, yönlendiren URL'leri ve mobil uygulamaları kısıtlayarak güvenliği ihlal edilmiş bir API anahtarının etkisini azaltabilirsiniz. Şunları yapabilirsiniz: Google API Konsolu'ndaki her anahtarı kullanabilecek ana makineleri ve uygulamaları belirtin Kimlik bilgileri sayfasını açıp yeni bir API oluşturarak anahtarını kullanın veya API'nin ayarlarını düzenleyin tuşuna basın.
Gereksiz API anahtarlarını silin
saldırıya maruz kalma riskinizi en aza indirmek için kullanmadığınız API anahtarlarını silin gerek yok.
API anahtarlarınızı düzenli aralıklarla yeniden oluşturma
API anahtarlarını yeniden oluşturmak için Google API Konsolu'ndan Kimlik bilgileri sayfası, bir API anahtarı seçin ve Yeniden oluştur'u tıklayın tuşu. Ardından, uygulamalarınızı yeni oluşturulan ve tuşlarını kullanın. Eski anahtarlarınız, oluşturmanızdan sonra 24 saat daha çalışmaya devam eder anahtarları kullanabilirsiniz.
Kodunuzu herkese açık olarak yayınlamadan önce inceleyin
Kodunuzun API anahtarı veya başka bir gizli anahtarı içermediğinden emin olun bilgileri gözden geçirin.