0

새로운 사용자가 생성되면 웹 서비스를 호출하는 사용자/비밀번호 (Google에서 개발하지 않음)가있는 애플리케이션이 있습니다. 이 웹 서비스를 통해 google Directory API 서비스를 통해 사용자를 자동으로 생성하여 Google Apps for Education에 계정을 만들 수 있습니다.사용자가없는 디렉토리 API를 사용하여 사용자를 만드는 방법 (OAuth2 인증)

OAuth를 사용하지 않고 Google Apps 계정의 관리자 사용자 만 로그인/비밀번호를 사용하면 어떻게 할 수 있습니까?

Google Apps에서 계정을 만들거나 업데이트하기 위해 CSV 파일을 업데이트하는 것을 알고 있지만 수동으로 업로드 및 배치하지 않고도 Google에서 계정을 만들어야합니다.

답장을 보내 주셔서 감사합니다.

답변

1

Google API에 대한 이전 ClientLogin 인증 방법은 더 이상 사용되지 않으며 Admin SDK 디렉토리 API에서 지원되지 않습니다.

OAuth 2.0을 사용해야합니다. 스크립트 용 OAuth 2.0 새로 고침 토큰을 얻은 후에는 매번 사용자를 다시 인증 할 필요가 없습니다. 현재 액세스 토큰이 만료되면 새 액세스 토큰을 가져 오면됩니다.

GAM과 같은 OAuth 작업을 이미 수행 한 기존 애플리케이션을 활용할 수도 있습니다.

+0

외부 응용 프로그램에서 호출하는 웹 서비스가 내 Google Apps for Education 관리자 계정에 연결되고 웹 서비스에 전달 된 정보로 Google Apps for Education에 계정을 만들 필요가 있습니다. 어떻게해야합니까? OAuth2는 웹 애플리케이션을 통해 통합되고 실제 웹 사용자가 프로세스를 활성화한다고 가정합니다. GAM은 데스크톱 응용 프로그램 또는 파이썬 코드입니다 ... PHP 코드만으로도 사용자 상호 작용없이 서버 측에서 수행 할 수 있습니까? – user2607296

0

저는 GAfE 도메인에서 이와 똑같은 일을했습니다. 60,000 개의 계정을 신속하게 만들고 특정 조직 단위 (학교)에 배치해야했습니다. 이제는 make sense out of Google Apps for Education using the API explorer and OAuth 2.0하는 방법에 대한 시리즈를 정리 중입니다.

기본적으로 API를 사용하여 사용자/패스워드 인증 정보를 전달하는 것을 잊어 버릴 필요가 있습니다. OAuth 2.0 ID (웹 애플리케이션)를 만들고 리디렉션 URI (승인이 승인 된 후 요청을 처리 할 콜백 페이지)를 입력해야합니다. 이 시점에서 다음과 같은 정보가 포함 된 URL 문자열을 컴파일해야합니다 :

  • 자료의 URL을
  • 데이터 범위
  • 클라이언트 ID
  • 응답 유형
  • 이 URI를 재 인증 요청

아래의 예를 참조하십시오 :

https://accounts.google.com/o/oauth2/auth?scope=https://www.googleapis.com/auth/admin.directory.user&client_id=your_client_ID_copied_and_pasted_from_the_API_console&response_type=code&redirect_uri=https://www.example.com/callback.php

승인을 받으면 https : // accounts.google.com/o/에 POST 요청을 사용하여 ACCESS TOKEN을 교환하는 데 필요한 코드가 전달됩니다. oauth2/토큰. 응답에는 POST 요청에서 directory.users.insert API에 사용할 수있는 액세스 토큰이 포함됩니다.