CreateAgreement - AWS Transfer Family

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

CreateAgreement

Crea un acuerdo. Un acuerdo es un acuerdo bilateral de socios comerciales, o asociación, entre un AWS Transfer Family servidor y un proceso AS2. El acuerdo define la relación de transferencia de archivos y mensajes entre el servidor y el proceso AS2. Para definir un acuerdo, Transfer Family combina un servidor, un perfil local, un perfil de socio, un certificado y otros atributos.

El socio se identifica con el PartnerProfileId y el proceso AS2 se identifica con el LocalProfileId.

Sintaxis de la solicitud

{ "AccessRole": "string", "BaseDirectory": "string", "Description": "string", "LocalProfileId": "string", "PartnerProfileId": "string", "ServerId": "string", "Status": "string", "Tags": [ { "Key": "string", "Value": "string" } ] }

Parámetros de la solicitud

Para obtener información sobre los parámetros comunes a todas las acciones, consulte Parámetros comunes.

La solicitud acepta los siguientes datos en formato JSON.

AccessRole

Los conectores se utilizan para enviar archivos mediante el protocolo AS2 o SFTP. Para la función de acceso, proporcione el nombre de recurso de Amazon (ARN) de la AWS Identity and Access Management función que se va a utilizar.

Para conectores AS2

Con AS2, puede enviar archivos llamando a StartFileTransfer y especificando las rutas de los archivos en el parámetro de solicitud, SendFilePaths. Utilizamos el directorio principal del archivo (por ejemplo, para --send-file-paths /bucket/dir/file.txt, el directorio principal es /bucket/dir/) para almacenar temporalmente un archivo de mensajes AS2 procesado, almacenar el MDN cuando lo recibimos del socio y escribir un archivo JSON final que contenga los metadatos relevantes de la transmisión. Por lo tanto, AccessRole debe proporcionar acceso de lectura y escritura al directorio principal de la ubicación del archivo que se utiliza en la solicitud StartFileTransfer. Además, debe proporcionar acceso de lectura y escritura al directorio principal de los archivos que desea enviar con StartFileTransfer.

Si utiliza la autenticación básica para el conector AS2, el rol de acceso requiere el permiso secretsmanager:GetSecretValue para el secreto. Si el secreto se cifra con una clave gestionada por el cliente en lugar de la clave AWS gestionada en Secrets Manager, el rol también necesitará el kms:Decrypt permiso para esa clave.

Para conectores SFTP

Asegúrese de que el acceso al rol proporcione acceso de lectura y escritura al directorio principal de la ubicación del archivo que se utiliza en la solicitud StartFileTransfer. Además, asegúrese de que el rol otorgue secretsmanager:GetSecretValue permiso a. AWS Secrets Manager

Tipo: cadena

Limitaciones de longitud: longitud mínima de 20. La longitud máxima es de 2048 caracteres.

Patrón: arn:.*role/\S+

Obligatorio: sí

BaseDirectory

El directorio de destino (carpeta) de los archivos que se transfieren a través del protocolo AS2.

Un ejemplo de BaseDirectory es /DOC-EXAMPLE-BUCKET/home/mydirectory.

Tipo: cadena

Limitaciones de longitud: longitud mínima de 0. La longitud máxima es de 1024 caracteres.

Patrón: (|/.*)

Obligatorio: sí

Description

El nombre o la descripción breve que se utilizan para identificar el acuerdo.

Tipo: string

Limitaciones de longitud: longitud mínima de 1. La longitud máxima es de 200 caracteres.

Patrón: [\p{Graph}]+

Obligatorio: no

LocalProfileId

Un identificador único para el perfil local de AS2.

Tipo: cadena

Limitaciones de longitud: longitud fija de 19.

Patrón: p-([0-9a-f]{17})

Obligatorio: sí

PartnerProfileId

Un identificador único para el perfil de socio utilizado en el acuerdo.

Tipo: cadena

Limitaciones de longitud: longitud fija de 19.

Patrón: p-([0-9a-f]{17})

Obligatorio: sí

ServerId

Identificador único asignado por el sistema para una instancia del servidor. Este identificador indica el servidor específico que utiliza el acuerdo.

Tipo: cadena

Limitaciones de longitud: longitud fija de 19.

Patrón: s-([0-9a-f]{17})

Obligatorio: sí

Status

El estado del acuerdo. El acuerdo puede ser ACTIVE o INACTIVE.

Tipo: cadena

Valores válidos: ACTIVE | INACTIVE

Obligatorio: no

Tags

Pares clave-valor que se pueden utilizar para agrupar y buscar acuerdos.

Tipo: Matriz de Tag objetos

Miembros de la matriz: número mínimo de 1 artículo. Número máximo de 50 artículos.

Obligatorio: no

Sintaxis de la respuesta

{ "AgreementId": "string" }

Elementos de respuesta

Si la acción se realiza correctamente, el servicio devuelve una respuesta HTTP 200.

El servicio devuelve los datos siguientes en formato JSON.

AgreementId

El identificador único para el acuerdo. Use este ID para eliminar o actualizar un acuerdo, así como en cualquier otra llamada a la API que requiera que especifique el ID del acuerdo.

Tipo: cadena

Limitaciones de longitud: longitud fija de 19.

Patrón: a-([0-9a-f]{17})

Errores

Para obtener información acerca de los errores comunes a todas las acciones, consulte Errores comunes.

InternalServiceError

Esta excepción se produce cuando se produce un error en el AWS Transfer Family servicio.

Código de estado HTTP: 500

InvalidRequestException

Esta excepción se produce cuando el cliente envía una solicitud con un formato incorrecto.

Código de estado HTTP: 400

ResourceExistsException

El recurso solicitado no existe o existe en una región distinta de la especificada para el comando.

Código de estado HTTP: 400

ResourceNotFoundException

Esta excepción se produce cuando el servicio AWS Transfer Family no encuentra un recurso.

Código de estado HTTP: 400

ServiceUnavailableException

La solicitud ha fallado porque el servicio AWS Transfer Family no está disponible.

Código de estado HTTP: 500

ThrottlingException

La solicitud fue denegada debido a una limitación de la solicitud.

Código de estado HTTP: 400

Ejemplos

Ejemplo

En el siguiente ejemplo, se crea un acuerdo y se devuelve el identificador del acuerdo.

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

Respuesta de ejemplo

La llamada a la API devuelve el identificador del nuevo acuerdo.

{ "AgreementId": "a-11112222333344444" }

Véase también

Para obtener más información sobre el uso de esta API en uno de los AWS SDK específicos del idioma, consulta lo siguiente: