내 Google 디렉토리에서 사용자를 만들려고하는 PHP 응용 프로그램을 작성했습니다. Google 도서관을 사용하지 않습니다. 필자는 Android Enterprise API에 요청을 제출했다. 내 MSA에 엔터프라이즈 서비스 계정을 등록하고 등록 취소 할 수 있습니다. 그래서 JWT와 Requests 코드에 대한 제 코드를 사용합니다. 서비스 계정이있는 Google 디렉토리에 사용자 삽입
나는 서비스 계정을 생성하고 "도메인 와이드 위임"을 활성화하고 "API 클라이언트 액세스 관리"창에서 내 API 클라이언트에 다음과 같은 권한을 " https://www.googleapis.com/auth/admin.directory.user, https://www.googleapis.com/auth/admin.directory.group"를 추가했다. 내 서비스 계정의 "프로젝트 권한"창에 상태 역할 "편집기"가 있습니다.먼저 내 스크립트는 JWT를 만들고 내 개인 키로 암호화하기 위해 Google 서버에서 무기명 토큰을 가져옵니다. 토큰은 다음과 같은 필드를
"iss" => [email protected]
"scope" => "https://www.googleapis.com/auth/admin.directory.user, https://www.googleapis.com/auth/admin.directory.group"
"aud" => "https://www.googleapis.com/oauth2/v4/token",
"exp" => timestamp+3000,
"iat" => timestamp
내가 무기명 토큰을 얻을 해당 요청을 수행하지만 난 항상 메시지가 삽입 요청을 해당 토큰을 사용할 때 "이 자원에 액세스 할 수있는 권한이 없습니다/API를 포함 "HTTP 403. 필드"sub "를 JWT에 추가하고 프로젝트 관리자"[email protected] "의 이메일을 지정하면 무기명 토큰을 얻을 수 없다는 메시지가 표시되면서 401 오류가 발생합니다. 다음 메시지 "승인되지 않은 클라이언트 또는 요청 범위가 있습니다."
"쉬운"것을 시도한 후에, 나는 단지 내 디렉토리에있는 모든 사용자의 목록을 얻고 싶었습니다. 그러나 Google 서버는 "잘못된 요청"오류로 다시 회신합니다. API 페이지에있는 API 탐색기에서 같은 오류가 발생했습니다. 어쩌면 API가 고장 났을까요? 적어도 API 탐색기가 작동해야합니다. https://developers.google.com/admin-sdk/directory/v1/reference/users/list
내 서비스 계정으로 사용자를 만들 수없는 이유가 있습니까?