앱에서 제로터치 등록 고객 API에 대한 호출을 승인합니다. OAuth를 사용합니다. 이 문서에서는 엔터프라이즈 모바일 관리 (EMM) 공급자 및 엔터프라이즈 IT 개발자와의 협업이 있었습니다. 이 문서를 읽고 나면 앱 사용자에게 계정 요구사항을 설명합니다.
승인 빠른 시작
- 제로터치 등록 API로 Google Cloud Platform 프로젝트 설정하기 OAuth 클라이언트 비밀번호를 확인하려면 이 마법사를 실행하세요.
- Java, .NET 또는 Python. Google의 API 클라이언트 라이브러리를 사용하여 있습니다.
개요
- 한 명 이상의 IT 관리자가 제로터치 등록 고객 계정의 사용자입니다.
- IT 관리자는 Google 계정을 사용하여 본인 인증을 진행합니다.
- API 요청은 OAuth2 토큰을 전달하여 IT 관리자입니다.
고객 계정
조직의 구성, 기기, (IT 관리자) 사용자는 확인할 수 있습니다. 고객 계정은 그룹과 비슷하며 확인할 수 있습니다 조직에서 처음 고객을 설정할 때 리셀러가 고객을 설정합니다. 제로터치 등록을 위해 기기를 구매합니다. IT 관리자는 의 다른 사용자를 관리합니다. 제로터치 등록 포털을 사용해 조직을 보호할 수 있습니다.
API는 숫자로 된 고객 ID를 사용하여 계정을 식별합니다. 고객 ID를 API 메서드를 호출할 때 URL 경로의 일부로 사용합니다. 앱은 사용자의 고객 ID를 제공해야 합니다.
아래 예시는 해당 사용자의 고객 계정을 가져오는 방법을 보여줍니다. 가 API 호출을 승인합니다.
자바
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']))
앱에서는 계정 결과 페이지를 탐색해야 합니다. 위 예에서는 처음 100개의 계정만 출력합니다. 자세한 내용은 페이징된 결과.
조직에는 일반적으로 고객 계정이 하나이지만 더 큰 조직은
각 부서에 별도의 고객 계정을 사용할 수 있습니다. IT 관리자는
다른 고객 계정의 구성원인 경우 앱을 통해 사용자가
새 고객 계정을 사용합니다 앱에서
companyName
값입니다.
사용자
IT 관리자는 앱에서 관리자를 대신하여 전송하는 API 요청을 승인합니다. 받는사람 인증 API 요청을 인증하려면 앱 사용자는 다음을 수행해야 합니다.
- Google 계정을 이메일 주소와 연결합니다.
- 동일한 이메일 주소를 사용하여 고객 계정에 가입합니다.
- 제로터치 등록 고객 서비스 약관 (ToS)에 동의합니다.
앱 사용자의 설정에 도움이 되도록 시작 및 Google 계정 연결 확인하시기 바랍니다.
사용자 관리
IT 관리자가 제로터치에서 고객 계정의 사용자를 관리합니다. 등록할 수 있습니다. 고객 계정의 사용자는 소유자 또는 관리자 두 역할 모두 고객 API에 대해 동일한 액세스 권한을 갖지만 소유자는 다른 사용자를 관리할 수 있습니다.
서비스 약관 동의
앱 사용자가 API 호출을 승인하려면 먼저 최신 권한을 수락해야 합니다.
서비스 약관 이는 IT 관리자가 제로터치 등록을 처음 사용하거나
서비스 약관을 업데이트합니다 사용자가 최신 서비스 약관에 동의하지 않은 경우 API는
HTTP 403 Forbidden
상태 코드와 응답 본문에 다음이 포함됩니다.
TosError
사용자가 서명할 때 최신 서비스 약관에 동의하라는 메시지가 자동으로 표시됩니다. 인치 앱에 포함될 수 있는 권장 접근 방식을 확인하려면 약관 처리 서비스를 참조하세요.
앱에 승인 추가
앱에서 고객 API로 전송하는 모든 요청에는 승인이 포함되어야 합니다. 토큰입니다. Google은 이 토큰을 사용하여 애플리케이션을 식별합니다. 왜냐하면 고객 API에서 사용자 데이터에 액세스하는 경우 데이터를 수집하는 데 사용됩니다 앱에서 OAuth 2.0을 사용하여 IT 관리자에게 API 승인을 위임합니다. 프로토콜을 사용합니다.
안내
Java, .NET, Python 앱 다른 언어를 사용하는 경우 승인을 설정하는 방법은 다음과 같습니다. 있습니다.
승인에 대해 자세히 알아보려면 OAuth 2.0을 사용하여 Google에 액세스하기 API를 참고하세요.
승인 범위
API 승인 범위 사용
앱에서 https://www.googleapis.com/auth/androidworkzerotouchemm
요청
OAuth 2.0 액세스 토큰을
생성할 수 있습니다
범위 매개변수는 토큰이 있어야 합니다 액세스 토큰은 작업 집합에 대해서만 유효합니다. 리소스 및 리소스에 대한 액세스 권한을 제공합니다 API는 표시된 단일 제로터치 등록 범위가 있는 메서드 및 리소스 참조하세요.
Google API와 함께 사용되는 제로터치 등록 범위의 예 클라이언트 라이브러리에 대해 자세히 알아보려면 Java, .NET, Python. Google API 범위 사용에 대해 자세히 알아보려면 사용 OAuth 2.0을 통한 Google API 액세스를 참조하세요.
API 키 권장사항
애플리케이션에서 API 키를 사용할 때는 안전하게 보호해야 합니다. 사용자 인증 정보를 공개적으로 노출하면 계정이 계정에 예기치 않은 요금이 청구될 수 있습니다. 보관하기 API 키를 안전하게 보호하려면 다음 권장사항을 따르세요.
- 코드에 API 키를 직접 삽입하지 마세요.
- 코드에 삽입된 API 키가 실수로 공개(예: 공개해야 하는 코드에서 키를 삭제하는 것을 잊은 경우) 공유할 수 있습니다. 애플리케이션에 API 키를 삽입하는 대신 환경 변수 또는 애플리케이션 소스 외부의 파일에서 있습니다.
- 애플리케이션의 소스 트리 내 파일에 API 키를 저장하지 않습니다.
- API 키를 파일에 저장하는 경우 파일을 애플리케이션 키가 소스 코드 관리에 들어가지 않도록 하는 데 도움이 되는 소스 트리 있습니다. 이는 공개 소스 코드를 사용하는 경우 특히 중요합니다. 관리 시스템입니다.
- API 키가 IP 주소, 리퍼러 URL, 필요한 모바일 앱에만
- 노출이 제한된 IP 주소, 리퍼러 URL, 모바일 앱을 API 키 유출로 인한 영향을 줄일 수 있습니다. 다음과 같은 작업을 할 수 있습니다. Google API 콘솔에서 각 키를 사용할 수 있는 호스트와 앱 지정 사용자 인증 정보 페이지를 연 다음 새 API를 만들거나 키를 사용하거나 API의 설정을 수정할 수 있습니다. 키를 누릅니다.
- 불필요한 API 키 삭제
- 공격에 대한 노출을 최소화하려면 권한이 없는 모든 API 키를 삭제하세요. 도움이 될 수 있습니다
- 주기적으로 API 키 재생성
- Google API 콘솔에서 사용자 인증 정보 페이지에서 API 키를 선택하고 재생성하기 클릭 키를 사용할 수 있습니다. 그런 다음 새로 생성된 키를 누릅니다. 이전 키는 생성 후 24시간 동안 계속 작동합니다. 교체할 수 있습니다.
- 코드를 공개적으로 출시하기 전에 검토
- 코드에 API 키나 다른 비공개 항목이 포함되어서는 안 됩니다. 코드 공개 전에 확인해야 합니다.