

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

 

Productboard は、カスタム認可と `OAuth2.0` をサポートしています。`OAuth2.0` の場合、Productboard は、`AUTHORIZATION_CODE` グラントタイプをサポートしています。
+ このグラントタイプは、ユーザーを認可するためにサードパーティーの認可サーバーにユーザーをリダイレクトすることから、「three-legged」の `OAuth` と見なされます。AWS Glue コンソール経由で接続を作成するときに使用されます。接続を作成するユーザーは、デフォルトで AWS Glue 所有の接続アプリケーションを使用できます。この場合、Productboard クライアント ID とクライアントシークレット以外の `OAuth` 関連情報を指定する必要はありません。AWS Glue コンソールでは、ユーザーが Productboard にリダイレクトされます。ここではユーザーがログインし、Productboard インスタンスにアクセスするためのリクエストされた権限を AWS Glue に許可する必要があります。
+ ユーザーは、Productboard で独自の接続アプリケーションを作成し、AWS Glue コンソールを介して接続を作成するときに独自のクライアント ID とクライアントシークレットを指定することを選択できます。このシナリオでは、引き続き Productboard にリダイレクトされてログインし、リソースへアクセスするために AWS Glue を認可します。
+ このグラントタイプは、更新トークンとアクセストークンになります。アクセストークンの有効期間は短く、更新トークンを使用してユーザーとやり取りすることなく自動的に更新される場合があります。
+ `AUTHORIZATION_CODE OAuth` フロー用の接続アプリケーションの作成に関する Productboard の公開ドキュメントについては、「[How to integrate with Productboard via OAuth2 - developer documentation](https://developer.productboard.com/docs/how-to-integrate-with-productboard-via-oauth2-developer-documentation)」を参照してください。

Productboard 接続を設定するには:

1. AWS Secrets Manager で、次の詳細を含むシークレットを作成します。
   + `OAuth` 認可 – カスタマーマネージド接続アプリケーションの場合: シークレットには、`USER_MANAGED_CLIENT_APPLICATION_CLIENT_SECRET` を使用して接続されたアプリケーションのコンシューマーシークレットをキーとして含める必要があります。
   + `Custom auth` – カスタマーマネージド接続アプリケーションの場合: シークレットには、`access_token` を使用して接続されたアプリケーションの `JWT token` をキーとして含める必要があります。
**注記**  
AWS Glue で接続ごとにシークレットを作成する必要があります。

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

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

   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. データソースに接続するための認可タイプを選択します。
      + `OAuth` 認可の場合 – Productboard アプリケーションの `Token URL`、および `User Managed Client Application ClientId` を指定します。

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

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

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

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