翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
CreateAgreement
契約を作成します。契約とは、 AWS Transfer Family サーバーと AS2 プロセス間の二者間取引相手契約またはパートナーシップです。この契約は、サーバーと AS2 プロセス間のファイルおよびメッセージの転送の関係を定義します。Transfer Family は、サーバー、ローカルプロファイル、パートナープロファイル、証明書、その他の属性を組み合わせて、契約を定義します。
パートナーは PartnerProfileId
で識別され、AS2 プロセスは LocalProfileId
で識別されます。
リクエストの構文
{
"AccessRole": "string
",
"BaseDirectory": "string
",
"Description": "string
",
"LocalProfileId": "string
",
"PartnerProfileId": "string
",
"ServerId": "string
",
"Status": "string
",
"Tags": [
{
"Key": "string
",
"Value": "string
"
}
]
}
リクエストパラメータ
すべてのアクションに共通のパラメータの詳細については、「共通パラメータ」を参照してください。
リクエストは以下の JSON 形式のデータを受け入れます。
- AccessRole
-
コネクターは、AS2 または SFTP プロトコルを使用してファイルを送信するために使用されます。アクセスロールには、使用する AWS Identity and Access Management ロールの Amazon リソースネーム (ARN) を指定します。
AS2 コネクタ用
AS2 では、
StartFileTransfer
を呼び出してリクエストパラメータ にファイルパスを指定することでファイルを送信できます。SendFilePaths
ファイルの親ディレクトリ (例えば--send-file-paths /bucket/dir/file.txt
の場合、親ディレクトリは/bucket/dir/
) を使用して、処理済みの AS2 メッセージファイルを一時的に保存し、パートナーから受け取った MDN を保存して、送信の関連メタデータを含む最終的な JSON ファイルを記述します。そのため、AccessRole
は、StartFileTransfer
リクエストで使用されるファイルの場所の親ディレクトリに対する読み取り/書き込みアクセスを提供する必要があります。さらに、StartFileTransfer
で送信するファイルの親ディレクトリに対する読み取り/書き込みアクセスを提供する必要があります。AS2 コネクタに Basic 認証を使用している場合、アクセスロールにはシークレットの
secretsmanager:GetSecretValue
権限が必要です。Secrets Manager の マネージドキーではなく、カスタマー AWS マネージドキーを使用してシークレットが暗号化されている場合、ロールにはそのキーに対する アクセスkms:Decrypt
許可も必要です。SFTP コネクタ用
アクセスロールが、
StartFileTransfer
リクエストで使用されるファイルロケーションの親ディレクトリへの読み取りおよび書き込みアクセスを提供していることを確認します。さらに、ロールが にアクセスsecretsmanager:GetSecretValue
許可を付与していることを確認します AWS Secrets Manager。型: 文字列
長さの制限: 最小長は 20 です。最大長は 2,048 です。
Pattern:
arn:.*role/\S+
必須:はい
- BaseDirectory
-
AS2 プロトコルを使用して転送されるファイルのランディングディレクトリ(フォルダ)。
BaseDirectory
の例は/DOC-EXAMPLE-BUCKET/home/mydirectory
です。型: 文字列
長さの制限: 最小長は 0 です。最大長は 1,024 です。
Pattern:
(|/.*)
必須:はい
- Description
-
契約を識別するための名前または短い説明。
型: 文字列
長さの制限: 最小長は 1 です。最大長は 200 です。
Pattern:
[\p{Graph}]+
必須: いいえ
- LocalProfileId
-
AS2 ローカルプロファイルの一意の識別子です。
型: 文字列
長さの制限: 固定長は 19 です。
パターン:
p-([0-9a-f]{17})
必須:はい
- PartnerProfileId
-
契約で使用されるパートナープロファイルの一意の識別子です。
型: 文字列
長さの制限: 固定長は 19 です。
パターン:
p-([0-9a-f]{17})
必須:はい
- ServerId
-
サーバーインスタンスにシステムで割り当てられた一意の識別子。これは、契約が使用する特定のサーバーです。
型: 文字列
長さの制限: 固定長は 19 です。
パターン:
s-([0-9a-f]{17})
必須:はい
- Status
-
契約のステータス。合意内容は
ACTIVE
またはINACTIVE
のいずれかになります。型: 文字列
有効な値:
ACTIVE | INACTIVE
必須:いいえ
- Tags
-
契約のグループ化および検索に使用できるキーと値のペアです。
型: Tag オブジェクトの配列
配列メンバー:最小数は 1 項目です。最大数は 50 項目です。
必須:いいえ
レスポンスの構文
{
"AgreementId": "string"
}
レスポンス要素
アクションが成功すると、サービスは HTTP 200 レスポンスを返します。
サービスから以下のデータが JSON 形式で返されます。
- AgreementId
-
契約の一意の識別子。この ID は、契約を削除または更新する場合だけでなく、契約 ID を指定する必要があるその他の API 呼び出しでも使用できます。
型: 文字列
長さの制限: 固定長は 19 です。
パターン:
a-([0-9a-f]{17})
エラー
すべてのアクションに共通のエラーについては、「共通エラー」を参照してください。
- InternalServiceError
-
この例外は、 AWS Transfer Family サービスでエラーが発生した場合にスローされます。
HTTP ステータスコード:500
- InvalidRequestException
-
この例外は、クライアントが不正な形式のリクエストを送信した場合にスローされます。
HTTP ステータスコード:400
- ResourceExistsException
-
要求されたリソースは存在しないか、コマンドに指定されたリージョン以外のリージョンに存在します。
HTTP ステータスコード:400
- ResourceNotFoundException
-
この例外は、 AWS Transfer Family サービスによってリソースが見つからない場合にスローされます。
HTTP ステータスコード:400
- ServiceUnavailableException
-
AWS Transfer Family サービスが利用できないため、リクエストは失敗しました。
HTTP ステータスコード:500
- ThrottlingException
-
リクエストのスロットリングにより、リクエストが拒否されました。
HTTP ステータスコード:400
例
例
次の例では、契約を作成し、契約 ID を返します。
aws transfer create-agreement --server-id s-021345abcdef6789 --local-profile-id p-1234567890abcdef0 --partner-profile-id p-abcdef01234567890 --base-folder /DOC-EXAMPLE-BUCKET/AS2-files --access-role arn:aws:iam::111122223333:role/AS2-role
レスポンス例
API コールは、新しい契約の契約 ID を返します。
{ "AgreementId": "a-11112222333344444" }
以下の資料も参照してください。
言語固有の AWS SDKs のいずれかでこの API を使用する方法の詳細については、以下を参照してください。