

# Google Sheet 接続の設定
<a name="googlesheets-configuring-connections"></a>

Google Sheet 接続を設定するには:

1. AWS Secrets Manager で、次の詳細を含むシークレットを作成します。

   1.  AuthorizationCode グラントタイプの場合: 
      +  カスタマーマネージド接続アプリケーションの場合 – シークレットには、`USER_MANAGED_CLIENT_APPLICATION_CLIENT_SECRET` を使用して接続されたアプリケーションのコンシューマーシークレットをキーとして含める必要があります。

1. AWS Glue Glue Studio で、以下の手順に従って **[データ接続]** の下に接続を作成します。

   1. **[データソース]** を選択する際に、[Google Sheets] を選択します。

   1. Google Sheet 環境を指定します。

      1.  AWS Glue でこの接続に使用する `secretName` を選択して、トークンを配置します。

      1.  ネットワークを使用する場合は、ネットワークオプションを選択します。

1.  AWS Glue ジョブに関連付けられている IAM ロールに `secretName` を読み取るアクセス許可を付与します。

------
#### [ JSON ]

****  

   ```
   {
     "Version":"2012-10-17",		 	 	 
     "Statement": [
       {
         "Effect": "Allow",
         "Action": [
           "secretsmanager:DescribeSecret",
           "secretsmanager:GetSecretValue",
           "secretsmanager:PutSecretValue",
           "ec2:CreateNetworkInterface",
           "ec2:DescribeNetworkInterfaces",
           "ec2:DeleteNetworkInterface"
         ],
         "Resource": "*"
       }
     ]
   }
   ```

------

 **AUTHORIZATION\$1CODE のグラントタイプ** 

 このグラントタイプは、ユーザーを認証するためにサードパーティーの認証サーバーにユーザーをリダイレクトすることから、「three-legged」の OAuth と見なされます。AWS Glue コンソール経由で接続を作成するときに使用されます。AWS Glue コンソールでは、ユーザーが Google Sheets にリダイレクトされます。ここではユーザーがログインし、Google Sheets インスタンスにアクセスするためのリクエストされた権限を AWS Glue に許可する必要があります。

 ユーザーは、Google Sheets で独自の接続アプリを作成し、AWS Glue コンソールを介して接続を作成するときに独自のクライアント ID とクライアントシークレットを指定することを選択できます。このシナリオでは、引き続き Google Sheets にリダイレクトされてログインし、リソースへアクセスするために AWS Glue を承認します。

 このグラントタイプは、更新トークンとアクセストークンになります。アクセストークンの有効期間は短く、更新トークンを使用してユーザーとやり取りすることなく自動的に更新される場合があります。

 詳細については、「[OAuth 認証コードフローでの接続されたアプリケーションの作成に関する Google Sheets の公開ドキュメント](https://developers.google.com/workspace/guides/create-credentials)」を参照してください。