はじめに
Google Workspaceの管理コンソールの「ドライブとドキュメント」の『共有オプション』で「オン」以外を選択した場合、Google DriveやGoogle Sheetsなどの「共有」でサービスアカウントを共有ユーザーに追加できなくなります。
共有オプションで「オフ」が選択されている場合
共有オプションで「許可リスト登録済みドメイン」が選択されている場合
なお、以下の通りサービスアカウントを許可リストに含めることはできません。
https://support.google.com/a/answer/6160020?hl=ja より引用
Google サービス アカウント(ドメイン名の末尾が「gserviceaccount.com」)を、信頼しているドメインにすることはできません。
対応方法
サービスアカウントに対してファイルやフォルダを共有させることはできないため、次のAあるいはBで対応を進めることになります。
- A) Google Workspace上に存在するユーザーでOAuth2認証を行う
- B) システムユーザーとしてGoogle Workspaceアカウントを追加し、OAuth2認証を行う
なお、Aで対応する場合、そのユーザーのアカウントがGoogle Workspace上から削除されると、API経由でのGoogle Workspaceサービスへのアクセスが行えない状態となります。関連するシステムに障害が生じないよう、アカウントの取り扱いには注意が必要となります。
最後に
私が出した結論は以上の通りですが、「サービスアカウントに対してファイルを共有させることが出来る」方法をお持ちの方がいらっしゃいましたら、是非共有いただけましたら幸いです。