Google の新しい Admin SDK の使用に問題があります。特に、Oauth2 を使用するディレクトリ API。私はほとんどそこにいると思いますが、Directory API を使用してユーザーの詳細を取得しようとして行き詰まりました (私は Google Education Edition ドメインを使用しています)。
基本的に私がやろうとしているのは、AD によって管理されている登録ステータスに基づいてユーザーをプロビジョニングまたはプロビジョニング解除する Python スクリプトを作成することです。Oauth1 を使用してこれを行うスクリプトを持っていますが、Oauth2 を使用するように更新したいと考えています。
これは、私が見つけたいくつかの例に基づくコード スニペットです。
f = file('test_key.p12', 'rb')
key = f.read()
f.close()
credentials = SignedJwtAssertionCredentials(
'606346240424-10stfco1ukj9h4m4b4r40@developer.gserviceaccount.com',
key,
scope= 'https://www.googleapis.com/auth/admin.directory.user')
http = httplib2.Http()
http = credentials.authorize(http)
service = build(serviceName='admin', version='directory_v1', http=http)
lists = service.users().get(userKey='joe.blogs@mydomain.com').execute(http=http)
pprint.pprint(lists)
このコードは正しく接続されているように見えますが、クエリを実行しようとすると 403 エラーが発生します。
エラー: https://www.googleapis.com/admin/directory/v1/users/joe.blogs@mydomain.com?alt=json が「このリソース/API にアクセスする権限がありません」を返しました">
私が最初に考えたのは、管理者コンソール ( Google API のコンソール) でこの API を有効にしていないためです。(実際には、Directory API ではなく Admin SDK を有効にしました。有効にする Directory API がなく、それが動作する Admin SDK の一部であることを確認したためです)。
私が見逃している別のステップはありますか、それともどこかでばかげた間違いを犯しましたか?