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.
Escenarios de conectividad avanzada
AWS SDK para SAP ABAP consume Servicios de AWS realizando llamadas HTTPS a los AWS puntos finales. En general, los puntos de conexión de AWS son accesibles a través de Internet. Un sistema SAP debe poder conectarse a Internet para establecer estas conexiones salientes. El SDK de SAP ABAP nunca requiere una conexión entrante desde Internet al sistema SAP.
Los siguientes escenarios ofrecen diferentes formas de establecer la conexión saliente.
Escenarios
Conexión a través de un servidor proxy
Para establecer una conexión a través de un servidor proxy, siga estos pasos.
-
En el SDK, vaya a Transacción
SICF. -
Elija Ejecutar.
-
En el menú, seleccione Cliente > Servidor proxy.
-
Establezca la configuración del proxy como Activa.
-
En el campo para No hay proxy para las siguientes direcciones, muestre las excepciones separadas por punto y coma.
-
En los campos Protocolo HTTP y Protocolo HTTPS, especifique los detalles de conexión del servidor proxy.
El SDK desconoce el servidor proxy y no requiere ninguna configuración para utilizar la configuración del servidor proxy del sistema SAP.
nota
Si utiliza la autenticación de metadatos de la instancia de Amazon EC2, el sistema SAP no podrá utilizar el servidor proxy para acceder a los metadatos de la instancia local en http://169.254.169.254. Debe incluir 169.254.169.254 en el campo para No hay proxy para las siguientes direcciones.
nota
Puede anular el comportamiento del servidor proxy por servicio en la sección Enrutamiento avanzado de. /AWS1/IMG Para obtener más información, consulte Per-service anulación del servidor proxy.
Conexión a través de un firewall de inspección de paquetes
Puede configurar un firewall de inspección de paquetes para la conexión saliente. Estos firewalls descifran el tráfico SSL y, a continuación, lo vuelven a cifrar antes de pasarlo al punto de conexión. Esta configuración normalmente requiere que el firewall emita sus propios certificados para el sistema SAP que consume un Servicio de AWS. Debe instalar el certificado de CA de su firewall en STRUST. Para obtener más información, consulte Conectividad HTTPS.
Puntos de conexión de la puerta de enlace
Algunos Servicios de AWS ofrecen puntos finales de puerta de enlace para proporcionar a una VPC un acceso de alto rendimiento sin Internet. Estos puntos de conexión son transparentes para el SDK de SAP ABAP y no requieren ninguna configuración.
Para obtener más información, consulte Puntos de conexión de puerta de enlace.
Puntos de conexión personalizados
Si necesita anular la resolución de punto de conexión predeterminado por un punto de conexión personalizado, puede usar un punto de conexión de interfaz para proporcionar a su VPC acceso de alto rendimiento sin Internet. Para obtener más información, consulte Configurar un punto de conexión de interfaz.
Cuando no se utiliza un DNS privado, estos puntos de conexión tienen sus propias direcciones DNS y un programa ABAP debe anular de forma explícita la lógica habitual de resolución de puntos de conexión. Para obtener más información, consulte AWS re:Post : ¿Por qué no puedo resolver los nombres de dominio de servicio para un punto final de VPC de interfaz
En el siguiente ejemplo, se crea un punto final de interfaz para AWS STS y Amazon Translate. El sistema SAP no utiliza un DNS privado y llama a los servicios con un punto de conexión personalizado. Los recursos lógicos definidos en /AWS1/IMG representan las direcciones de punto de conexión de la interfaz física, por ejemplo, vpce-0123456789abcdef-hd52vxz.translate.us-west-2.vpce.amazonaws.com. Esto evita la codificación rígida del DNS en código.
En el código siguiente, los recursos lógicos en /AWS1/IMG se resuelven primero en los nombres de los puntos de conexión físicos. A continuación, se proporcionan a los métodos de fábrica de la clase de AWS sesión (que se utiliza AWS STS para asumir una función de IAM) y a la clase de API de traducción.
" This example assumes we have defined our logical endpoints in /AWS1/IMG " as logical resources so that we don't hardcode our endpoints in code. " The endpoints may be different in Dev, QA and Prod environments. DATA(lo_config) = /aws1/cl_rt_config=>create( 'DEMO' ). DATA(lo_resolver) = /aws1/cl_rt_lresource_resolver=>create( lo_config ). " logical resource STS_ENDPOINT should resolve to the interface endpoint " for example vpce-0123456789-abcdefg.sts.us-west-2.vpce.amazonaws.com DATA(lv_sts_endpoint) = lo_resolver->resolve_lresource( 'STS_ENDPOINT' ). " logical resource XL8_ENDPOINT should resolve to the interface endpoint " e.g. vpce-0123456789abcdefg-12345567.translate.us-west-2.vpce.amazonaws.com DATA(lv_xl8_endpoint) = lo_resolver->resolve_lresource( 'XL8_ENDPOINT' ). " the session itself uses the sts service to assume a role, so the " session creation process requires a custom endpoint, specified here DATA(lo_session) = /aws1/cl_rt_session_aws=>create( iv_profile_id = 'DEMO' iv_custom_sts_endpoint = |https://{ lv_sts_endpoint }| ). " now we create an API object, and override the default endpoint with " the custom endpoint DATA(lo_xl8) = /aws1/cl_xl8_factory=>create( io_session = lo_session iv_custom_endpoint = |https://{ lv_xl8_endpoint }| " provide custom endpoint ). " now calls to lo_xl8 go to custom endpoint...
Como se muestra en el ejemplo, cualquier llamada a un método en go_xl8 va al punto de conexión https://vpce-0123456789abcdefg-12345567.translate.us-west-2.vpce.amazonaws.com. También es posible definir el punto final personalizado de enrutamiento en la configuración de IMG en lugar de hacerlo en el código, como se muestra en la siguiente sección.
Enrutamiento avanzado
En la sección anterior, mostramos cómo se puede especificar un punto final personalizado en el iv_custom_endpoint argumento de los métodos de fábrica para los módulos del SDK. A medida que aumenta el número de programas ABAP que utilizan el SDK, esto puede resultar difícil de gestionar. Es posible configurar un mapeo desde un punto final Servicio de AWS a uno personalizado en el perfil del SDK. Para cada SID, cliente y escenario, la abreviatura de tres letras (TLA) del servicio se puede asignar a la URL de un punto final:
| TLA | URL de punto final personalizada |
|---|---|
| BDR | https://vpce-23456789abcdef012-3c4d5e6f.bedrock-runtime.us-east-1.vpce.amazonaws.com |
| LMD | https://vpce-123456789abcdef01-2b3c4d5e.lambda.us-east-1.vpce.amazonaws.com |
| S3 | https://vpce-0123456789abcdef0-1a2b3c4d.s3.us-east-1.vpce.amazonaws.com |
Con esta configuración, no es necesario especificar las llamadas a iv_custom_endpoint los métodos de fábrica. El punto final personalizado se selecciona automáticamente en la tabla de configuración. La configuración es específica del perfil del SDK, por lo que puede crear varios perfiles con diferentes enrutamientos en función de sus necesidades. Al igual que con otras configuraciones de perfiles del SDK, el enrutamiento es específico del SID y del cliente, por lo que se puede definir un enrutamiento independiente para diferentes sistemas.
Per-service anulación del servidor proxy
De forma predeterminada, el SDK usa la configuración del servidor proxy configurada en Transaction SICF (consulteConexión a través de un servidor proxy). La configuración del proxy se SICF aplica globalmente a todas las conexiones HTTP salientes del sistema SAP. En algunos entornos, es posible que necesite un control más preciso sobre cuáles Servicios de AWS utilizan el servidor proxy y cuáles se conectan directamente.
En la sección Enrutamiento avanzado de/AWS1/IMG, puede configurar la opción Usar servidor proxy para cada servicio. Esta configuración controla si el SDK enruta las solicitudes de ese servicio a través del servidor proxy definido enSICF, independientemente de la configuración global de activación o filtro del proxy.
Están disponibles los siguientes valores:
-
Predeterminado: utilice el comportamiento del proxy en el que esté configurado
SICF. Si el proxy está activo y el filtro no excluye el punto final, se utiliza el proxy. Este es el comportamiento predeterminado. -
Siempre: dirija siempre las solicitudes de este servicio a través del servidor proxy definido en
SICF, independientemente de la configuración global de activación o filtro. -
Nunca: nunca dirija las solicitudes de este servicio a través del servidor proxy, independientemente de la configuración global de activación o filtro. Úselo cuando se pueda acceder a un punto final de servicio directamente sin un proxy, por ejemplo, cuando se utiliza un punto final de VPC.
Por ejemplo, puede configurar Amazon S3 para que nunca utilice el proxy (ya que se accede AWS STS a ellos a través de los puntos de enlace de la puerta de enlace de VPC), mientras que Amazon SNS siempre usa el proxy porque solo se puede acceder a él a través de Internet.
| TLA | Utilice un servidor proxy |
|---|---|
| EC2 | Predeterminado |
| S3 | Nunca |
| SNS | Siempre |
| STS | Nunca |
Esta configuración se define por perfil, SID, cliente y escenario del SDK. Puede crear varios perfiles con diferentes enrutamientos de proxy para adaptarse a diferentes entornos o casos de uso.
nota
El host y el puerto del servidor proxy siempre se definen en la pestaña Protocolo HTTPS de la configuración del proxy en TransactionSICF. La anulación por servicio solo controla si se usa el proxy, no qué servidor proxy se usa.
Acceso a puntos de conexión en varias regiones
AWS El punto final se determina automáticamente a partir del valor predeterminado Región de AWS definido en el perfil del SDK. También puede especificar una región mediante programación, anulando la región predeterminada. Esto se puede anular en el método CREATE() de fábrica o, posteriormente, con el objeto de configuración del SDK. Para obtener más información, consulte Configuración programática.
En el siguiente ejemplo, se utiliza el método CREATE() de fábrica para establecer la región y mostrar las colas de Amazon SQS en las regiones us-east-1 y us-west-2.
REPORT zdemo_sqs_queue_list. parameters: profile type /AWS1/RT_PROFILE_ID OBLIGATORY. START-OF-SELECTION. DATA(go_session) = /aws1/cl_rt_session_aws=>create( profile ). data(lt_region) = VALUE stringtab( ( |us-east-1| ) ( |us-west-2| ) ). LOOP AT lt_region INTO DATA(lv_region). DATA(go_sqs) = /aws1/cl_sqs_factory=>create( io_session = go_session iv_region = conv /AWS1/RT_REGION_ID( lv_region ) ). WRITE: / lv_region COLOR COL_HEADING. LOOP AT go_sqs->listqueues( )->get_queueurls( ) INTO DATA(lo_url). WRITE: / lo_url->get_value( ). ENDLOOP. ENDLOOP.