Googleディレクトリにユーザーを作成しようとするPHPアプリケーションを作成しました。私はGoogleライブラリを使用していません。私はAndroid Enterprise APIへのリクエストを作成しました。私はMSAでエンタープライズサービスアカウントを登録および登録解除できます。だから私はJWTと要求のための私のコードを動作すると仮定します。サービスアカウントを持つGoogleディレクトリにユーザーを追加する
サービスアカウントを作成し、「ドメイン全体の委任」を有効にし、APIクライアントに「APIクライアントアクセスの管理」ウィンドウの次のアクセス許可「https://www.googleapis.com/auth/admin.directory.user、https://www.googleapis.com/auth/admin.directory.group」を追加しました。 私のサービスアカウントには、「プロジェクトの権限」ウィンドウにステータスロール「エディタ」があります。
私の最初のスクリプトは、JWTを作成して私の秘密鍵で暗号化するために、Google ServerからBearerトークンを取得します。 トークンは、次のフィールドに
"iss" => sac[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 Serverは単に「不正なリクエスト」エラーを返すだけです。 APIページにあるAPIエクスプローラーでも同じエラーが表示されます。 APIが壊れている可能性がありますか?少なくともAPI Explorerは動作するはずです。 https://developers.google.com/admin-sdk/directory/v1/reference/users/list
私のサービスアカウントでユーザーを作成できない理由がありますか?