

# Monday 接続の設定
<a name="monday-configuring-connections"></a>

Monday は、認可メカニズムに次の 2 つのタイプをサポートしています。

1.  OAuth 認可: Monday は、OAuth2 の AUTHORIZATION\$1CODE グラントタイプをサポートしています。
   +  このグラントタイプは、ユーザーを認証するためにサードパーティーの認証サーバーにユーザーをリダイレクトすることから、「three-legged」の OAuth と見なされます。AWS Glue コンソール経由で接続を作成するときに使用されます。接続を作成するユーザーは、デフォルトで AWS Glue 所有の接続アプリケーションを使用できます。この場合、Monday インスタンス URL 以外の OAuth 関連情報を指定する必要はありません。AWS Glue コンソールでは、ユーザーが Monday にリダイレクトされます。ここではユーザーがログインし、Monday インスタンスにアクセスするためのリクエストされた権限を AWS Glue に許可する必要があります。
   +  ユーザーは、Monday で独自の接続アプリケーションを作成し、AWS Glue コンソールを介して接続を作成するときに独自のクライアント ID とクライアントシークレットを指定することを選択することもできます。このシナリオでも Monday にリダイレクトされてログインし、リソースへアクセスするために AWS Glue を認可します。
   +  このグラントタイプは、更新トークンとアクセストークンになります。アクセストークンは 1 時間有効で、更新トークンを使用することでユーザーとやり取りすることなく自動的に更新できます。
   +  詳細については、[AUTHORIZATION\$1CODE OAuth フローでの接続アプリケーションの作成に関するドキュメント](https://developers.Monday.com/docs/api/v1/Oauth)を参照してください。

1.  カスタム認可: 
   +  カスタム認可に必要な API キーの生成に関する Monday の公開ドキュメントについては、[https://developer.monday.com/api-reference/docs/authentication\$1api-token-permissions](https://developer.monday.com/api-reference/docs/authentication#api-token-permissions) を参照してください。

Monday 接続を設定するには

1.  AWS Secrets Manager で、次の詳細を含むシークレットを作成します。AWS Glue で接続ごとにシークレットを作成する必要があります。

   1.  OAuth 認可の場合: 
      +  カスタマーマネージド接続アプリケーションの場合 – シークレットには、USER\$1MANAGED\$1CLIENT\$1APPLICATION\$1CLIENT\$1SECRET を使用して接続されたアプリケーションのコンシューマーシークレットをキーとして含める必要があります。

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

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

   1.  [データ接続] の **[接続を作成]** を選択します。

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

   1. Monday の **[instanceURL]** を指定します。

   1.  AWS Glue が次のアクションを担い、その権限を持つことができる IAM ロールを選択します。

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

****  

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

------

   1.  Monday に接続するための認可タイプを選択する 
      +  OAuth 認可の場合: 接続する Monday の **[トークン URL]** と **[ユーザーマネージドクライアントアプリケーション ClientId]** を指定します。
      +  カスタム認可の場合: 認証タイプ **[CUSTOM]** を選択して Monday に接続します。

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

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

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

1.  AWS Glue ジョブ設定で、**[追加のネットワーク接続]** として `connectionName` を指定します。