Google Sheetsの設定
Google Sheetsを使用する場合だけ、この手順を行ってください。
最初にGoogle Sheets入力の設定手順を開き、「Google Cloud側の準備」を完了します。
認証JSONは秘密情報です
サービスアカウントJSONのprivate keyを取得した人は、そのサービスアカウントとして認証できます。
- Unityプロジェクトの
Assets配下へ保存しない - Gitリポジトリへコミットしない
- チャット、メール、プロジェクトZIP、サポート資料へ添付しない
- 対象スプレッドシートだけに必要最小限の共有権限を与える
- 不要になったキーや漏えいが疑われるキーはGoogle Cloud側で無効化・削除する
Googleは、サービスアカウントキーをソースリポジトリへ保存しないことを推奨しています。詳しくはサービスアカウントキーの管理に関するベストプラクティスを参照してください。
推奨保存場所
認証JSONは、UnityプロジェクトとGitリポジトリの外にある、アクセス権を制限したユーザー専用フォルダへ保存してください。
例:
<ユーザー専用フォルダ>/Wiener/credentials.jsonチームポリシーによりUnityプロジェクト内へ置く必要がある場合は、Assets ではなく次のようなローカル設定領域を使用し、Git除外を確認してください。
<Project>/UserSettings/Wiener/credentials.jsonUnityプロジェクトの .gitignore には、少なくとも次を追加します。
/UserSettings/Wiener/
**/wiener-service-account*.json
配布パッケージのダミーファイル
Unity Asset版には Assets/Wiener/Data/secrets/wiener-service-account.json というダミーファイルが含まれます。内容は有効な認証情報ではありません。
実際のキーでこのダミーファイルを上書きしないでください。外部ファイルを登録し、設定の credential_path をそのパスへ変更します。
Setting Editorへの登録
Converterが使うsettings YAMLには、外部に保存した認証JSONを登録します。
- Unityメニューから
Tools > Wiener > Open Setting Editorを開く google_sheetsを有効にするcredential_pathのファイル選択から、外部に保存したJSONを選ぶ- settings YAMLを保存する
現行のUnity Setting Editorは、プロジェクト外のJSONを選択でき、その絶対パスを保持します。settings YAMLをチームで共有する場合、ユーザーごとにパスが異なるため、認証パスを含むローカル設定を分けて管理してください。
YamlEditorへの登録
Google SheetsからYAMLを作成する機能を使う場合は、YamlEditor上部の Google Sheets Credential JSON から同じ外部JSONを選択します。この選択はUnityのローカルEditor設定に絶対パスとして保存され、JSONの内容そのものは保存されません。


キーの運用
- ユーザー間でJSONファイルそのものを共有しない
- 可能であれば用途・利用者ごとにサービスアカウントまたはキーを分ける
- 対象スプレッドシート以外へ権限を広げない
- 定期的に不要なキーを確認し、削除する
- 漏えいが疑われる場合は、リポジトリから消すだけでなくGoogle Cloud側で直ちにキーを無効化・削除する