本番環境の接続情報を定義しよう
クエスト概要
稼動前準備として、実際の運用に利用する本番環境の接続設定をします。
テスト環境で構築した時と同様に、本番環境の接続情報と起動トリガーを定義します。
I/Fの接続先は、I/Fの連携元/先のシステムの本番環境を接続情報として定義しましょう
接続情報の入力方法はテスト環境作成時と同様です。
※ここで接続情報を定義しても、I/Fが実際に動き出すことはないのでご安心下さい。 この後の「本番環境への適用」クエストを完了させた後、I/Fは本稼動を迎えます。
- ファイルストレージサービス - Amazon S3
- クラウドアプリケーション・プロトコル - WEBAPI(HTTP・HTTPS)
- プロトコル - ファイル(FTPS・SFTP)
連携方式で「ファイルストレージサービス - Amazon S3」を選択した場合
認証方式
キーペア方式
AWSアクセスキーIDとシークレットアクセスキーの組み合わせを使用して、AWSリソースへのアクセスを認証する方法です。STS方式
STS(セキュリティトークンサービス)方式の認証では、一時的な認証トークンを使用してアクセスを制御します。 STSは、AWSが提供するサービスであり、アクセス許可を付与されたユーザーに対して一時的なセキュリティトークンを発行します。このトークンは一定期間有効であり、クライアントはこのトークンを使用してアクセスを行います。
リージョン
リージョンは、クラウドサービスプロバイダーが提供するサーバーが物理的に配置されている地理的な地域を指します。 例えば、AWSのリージョンには米国東部(バージニア北部)、アジアパシフィック(東京)などがあります。 リージョンは、データの保存場所やネットワークレイテンシーなどの要素に影響を与えます。
バケット名
バケット名は、オブジェクトストレージサービス(例: AWS S3、Google Cloud Storage)におけるデータの格納場所を識別するための一意の名前です。 バケットはファイルやデータのコンテナであり、バケット名は他のバケットと区別するために重要です。
接続先ごとのフォルダパス
接続先ごとのフォルダパスは、ファイルやデータを保存する場所のパスを指します。
これは、ファイルシステムやオブジェクトストレージ内のディレクトリ構造を表します。
例えば、オブジェクトストレージの場合、バケット名とオブジェクトキー(ファイル名やディレクトリ名)を組み合わせて配置先パスを形成します。
接続するファイルパスは、{接続先ごとの定義したフォルダパス}{I/Fごとに定義したS3キー}となります。
AWSアクセスキーID
AWSリソースにアクセスするための一意の識別子です。一般的には、20文字の英数字の組み合わせで表されます。
※認証方式がキーペア方式で利用
シークレットアクセスキー
シークレットアクセスキーは、AWSアクセスキーIDに対応する秘密の鍵であり、アクセスキーIDと共に使用することでAWSサービスへの認証を行います。
※認証方式がキーペア方式で利用
ロールのARN(Amazon Resource Name)
AWSリソースへのアクセスを制御するためのロールを表す一意の識別子です。ARNは、リージョン、アカウント番号、ロール名などの要素で構成されます。
※認証方式がSTS方式で利用
外部ID
ロールへのアクセスを制限するためのオプションのパラメータです。
外部IDは、信頼するアカウントから提供され、アクセスを許可されるアカウントがその外部IDを使用してアクセスを要求する必要があります。
※認証方式がSTS方式で利用
連携方式で「クラウドアプリケーション」 「プロトコル - WEBAPI(HTTP・HTTPS)」を選択した場合
認証に関する設定
構築したI/Fに利用する認証方式を決定します。
認証方式
リクエストヘッダ等にトークンを指定
この方式では、明示的な認証手段を使用せず、リクエストヘッダや他のトークンを利用してアクセスを制御します。
例えば、APIキーをリクエストヘッダに含めることで、アクセスの認証を行います。
利用するAPIに各アプリケーションから事前に発行されたトークンを埋め込むパターンです。OAuth2.0-ユーザー・パスワード方式
この方式では、ユーザー名とパスワードを使用してアクセスを認証します。
ユーザーはクライアントアプリケーションに対してユーザー名とパスワードを提供し、クライアントアプリケーションはこれを使用してアクセストークンを取得します。
トークン取得のためのリクエスト情報に、grant_type=passwordという記載があればこちらを選択して下さい。OAuth2.0-クライアント認証情報方式
この方式では、クライアントアプリケーションがクライアントIDとクライアントシークレットを使用してアクセスを認証します。
クライアントアプリケーションはこれらの情報を使用してアクセストークンを取得し、リクエストヘッダに含めてサーバーに送信します。 サーバーはクライアントIDとクライアントシークレットの検証を行い、アクセスの認証を行います。
トークン取得のためのリクエスト情報に、grant_type=client_credentialsという記載があればこちらを選択して下さい。OAuth2.0-リフレッシュトークンフロー
トークン取得のためのリクエスト情報に、grant_type=refresh_tokenという記載があればこちらを選択して下さい。OAuth2.0-べアラートークンフロー
この方式では、JWT(JSON Web Token)を使用してアクセスを認証します。
クライアントアプリケーションは、署名されたJWTトークンを作成し、リクエストヘッダに含めてサーバーに送信します。
サーバーはトークンの署名を検証し、アクセスの認証を行います。
トークン取得のためのリクエスト情報に、grant_type=jwt_bearerという記載があればこちらを選択して下さい。カスタマイズトークン発行
トークン取得のためのAPIがOAuthの規約通りではない場合はこちらを選択して下さい。
API接続に関する設定
構築したI/FのAPI接続に関する設定をします。
ホスト名(ドメイン名)
リクエストを送信する対象のサーバーのホスト名(ドメイン名)を指定します。
例えば、Googleの場合、 www.google.com というホスト名を指定することができます。
ポート
サーバーが待ち受けるポート番号を指定します。
HTTPの場合は通常80番ポート、HTTPSの場合は通常443番ポートが使用されますが、特定のポート番号を使用する場合には指定する必要があります。
各I/Fの連携時のリクエストヘッダに指定するパラメータ
リクエストヘッダパラメータは、リクエストヘッダの情報のうち、個々の情報を表すキーと値のペアのことです。
例えば、User-Agentというヘッダパラメータは、クライアントの種類やバージョンなどの情報を含みます。
※認証トークンをリクエストヘッダに入れて接続する際に(I/F単位ではなく接続する環境毎にトークンを切り替えるケース等)
ここでリクエストパラメータを設定します。当該領域を定義することで、
「接続情報で設定したリクエストパラメータ+I/F単位で設定したリクエストパラメータ」を連携システムに渡すことができます。
各I/Fの連携時のリクエストボディに指定するパラメータ
リクエストボディパラメータは、リクエストボディの情報のうち、個々の情報を表すキーと値のペアのことです。
例えば、APIに対して送信されるJSON形式のデータには、キーと値のペアが複数含まれ、それぞれがリクエストボディパラメータとして扱われます。
JSONやXMLなどの形式で送信することが一般的です。Web APIでは、JSON形式のデータをリクエストボディに含めて、サーバーにデータを送信することがよくあります。例えば、以下のようなJSON形式のデータをリクエストボディに含めて、新しい商品を作成するAPIを呼び出すことができます。
{ "name": "新商品",
"price": 1000,
"description": "これは新しい商品です"}
この場合、リクエストボディには「name」「price」「description」というキーを持つ値が含まれており、サーバー側のアプリケーションはこれらの値を受け取ります。
※認証トークンをリクエストボディに入れて接続する際に(I/F単位ではなく接続する環境毎にトークンを切り替えるケース等)
ここでリクエストパラメータを設定します。当該領域を定義することで、
「接続情報で設定したリクエストパラメータ+I/F単位で設定したリクエストパラメータ」を連携システムに渡すことができます。
連携方式で「プロトコル - ファイル(FTPS・SFTP)」を選択した場合
接続方式
FTPS
FTPSではSSL(Secure Sockets Layer)・TLS(Transport Layer Security)という、通信を暗号化する仕組みを採用しており、高いセキュリティのもとでファイルを転送します。FTP
各種データファイルのアップロード・ダウンロードに使用される、最もシンプルな方法です。 FTPのデメリットは、利用者のユーザー名・パスワードが暗号化されておらず、セキュリティに関して脆弱であるため利用は推奨されません。SFTP
SFTPは、暗号化技術にSSH(Secure Shell)を使用して通信をするファイル転送プロトコルです。 SSHは、ネットワーク接続された端末の遠隔操作に使用される暗号化技術であり、SSLより高いセキュリティのもとで通信をします。そのため、SFTPではFTPSよりも高いセキュリティのもとでファイル転送を実行できます。
ホスト名もしくはIPアドレス
ファイルを連携する対象のサーバーのホスト名(ドメイン名)、もしくはIPアドレスを指定します。
ユーザー名
対象のサーバーに接続するためのユーザー名を指定します。
パスワード
対象のサーバーに接続するためのパスワードを指定します。
ポート
サーバーが待ち受けるポート番号を指定します。
HTTPの場合は通常80番ポート、HTTPSの場合は通常443番ポートが使用されますが、特定のポート番号を使用する場合には指定する必要があります。
接続先毎のフォルダパス
接続するファイルパスは、{接続先ごとの定義したフォルダパス}{I/Fごとに定義したS3キー}となります。※I/Fごとに決定できる場合は定義不要です。