¿Cómo usar Secret Manager Endpoint en Lambda Handler? -- java campo con amazon-web-services campo con aws-lambda campo con amazon-rds campo con amazon-vpc camp Relacionados El problema

How to use secret manager endpoint in lambda handler?


0
vote

problema

Español

Quiero hacer una escritura a RDS de Lambda. Como ambos están en diferentes cuentas, creé una conexión entre parentes entre ellos y también creó un punto final secreto para acceder a ella. Tengo un punto final del gerente secreto no rotacional, tengo un manejador de lambda como

  LambdaHandler:     Type: AWS::Serverless::Function     Properties:       Handler: 'com.handle.lambda.handler.LambdaHandler::handleInputFeed'       Runtime: java8       CodeUri:         # Why are we using this instead of BATS::SAM::CodeS3Bucket         Bucket: {'Fn::If' : ['UseBatsKey', 'BATS::SAM::CodeS3Bucket', {"Fn::ImportValue" : {Ref: 'DeploymentBucketImportName'}}]}         Key: BATS::SAM::CodeS3Key       Description: Example lambda that takes an x and y value and returns the result of adding them.       Timeout: 20       Role:         Fn::GetAtt: [LambdaRole, Arn]       VpcConfig:         Fn::If:         - RunLambdaInVPC         - SecurityGroupIds: [{Ref: LambdaSecurityGroup}]           SubnetIds:           - {'Fn::ImportValue': PrivateSubnet01}           - {'Fn::ImportValue': PrivateSubnet02}         - {Ref: 'AWS::NoValue'}   

¿Cómo se utilizará el punto final secreto en este controlador y cómo puedo referirme a las tablas a través de eso? Como soy nuevo en esto, cualquier código de muestra o DOC sería útil. No puedo encontrar.

Original en ingles

I want to make a write to RDS from lambda. As they both are in different accounts, I created a peering connection between them and also created a secret endpoint to access it. I have a non-rotational secret manager endpoint, I have a lambda handler like

LambdaHandler:     Type: AWS::Serverless::Function     Properties:       Handler: 'com.handle.lambda.handler.LambdaHandler::handleInputFeed'       Runtime: java8       CodeUri:         # Why are we using this instead of BATS::SAM::CodeS3Bucket         Bucket: {'Fn::If' : ['UseBatsKey', 'BATS::SAM::CodeS3Bucket', {"Fn::ImportValue" : {Ref: 'DeploymentBucketImportName'}}]}         Key: BATS::SAM::CodeS3Key       Description: Example lambda that takes an x and y value and returns the result of adding them.       Timeout: 20       Role:         Fn::GetAtt: [LambdaRole, Arn]       VpcConfig:         Fn::If:         - RunLambdaInVPC         - SecurityGroupIds: [{Ref: LambdaSecurityGroup}]           SubnetIds:           - {'Fn::ImportValue': PrivateSubnet01}           - {'Fn::ImportValue': PrivateSubnet02}         - {Ref: 'AWS::NoValue'} 

How the secret endpoint will be used in this handler and how can I refer to the tables via that? As I am new to this any sample code or doc would be helpful. Not able to find.

              

Lista de respuestas

2
 
vote
vote
La mejor respuesta
 

No necesita hacer nada 1 , si la función lambda se está ejecutando dentro del VPC con el punto final accesible. Dependiendo del tipo de punto final ( interfaz o puerta de enlace ) Hay algunos trucos de DNS (zonas de alojamiento privado establecidas por usted por AWS) empleadas por AWS para que esto parezca perfecta.

Esencialmente, el código no necesita saber que está hablando con un punto final VPC, que se maneja en el fondo. Hay un par de excepciones que me han mordido en el pasado, vea la nota al pie. Si no funciona, asegúrese de que los grupos de seguridad del punto final permitan conexiones de las funciones LAMBDA en el puerto 443.


1 : La excepción es IAM y otros servicios globales, aquí debe especificar un punto final regional al instanciar al cliente.

 

You don't need to do anything1 , if the Lambda function is running inside the VPC with the endpoint accessible. Depending on the kind of Endpoint (Interface or Gateway) there are some DNS-tricks (Private Hosted Zones set up for you by AWS) employed by AWS to make this seem seamless.

Essentially the code doesn't need to know it's talking to a VPC endpoint, that's handled in the background. There are a couple exceptions that have bitten me in the past - see the footnote. If it doesn't work, make sure the security groups of the endpoint allow connections from the Lambda functions on Port 443.


1: The exception being IAM and other global services, here you should specify a regional endpoint when instantiating the client.

 
 

Relacionados problema

73  Amazon Elb en VPC  ( Amazon elb in vpc ) 
Estamos usando Amazon EC2, y queremos poner un ELB (cargar equilibrador) a 2 instancias en una subred privada. Si solo agregamos la subred privada al ELB, no ...

0  Mueva la instancia de RDS de EC2-Classic a VPC  ( Move rds instance from ec2 classic to vpc ) 
Actualmente estoy migrando mi sistema de producción de la plataforma EC2-Classic a VPC. Todo se realiza, excepto la instancia de RDS, que aún está en EC2-Cl...

0  ¿AWS: SourceVPCE Filtros Solicitar no usar VPC?  ( Does awssourcevpce filters request not using vpc ) 
Me gustaría filtrar el acceso a S3 en el exterior de VPC específico, y planeará aplicar la política como este artículo . En este caso, mediante el uso de ...

1  ¿Cómo configuro VPC para permitir el tráfico saliente sobre la puerta de enlace de clientes?  ( How do i configure vpc to allow outbound traffic over customer gateway ) 
He configurado un VPC para comunicarse con una red privada en ON-Privada como se describe aquí Soy capaz de hacer un ping servidores en mi red en la On-Prem...

2  Terraform Lambda en VPC (mirada con MongoDB Atlas) Conexión NAT Gateway  ( Terraform lambda in vpc peered with mongodb atlas connection nat gateway ) 
He construido una configuración de Terraform que implementa un clúster de MongoDB Atlas Cloud, y configura un Peer VPC con mi cuenta AWS. La configuración de ...

2  Cómo configurar los hosts de bastión para acceder a las instancias de EC2 que están en diferentes VPCS  ( How to setup bastion hosts for accessing ec2 instances that are in different vpc ) 
Actualmente, hemos configurado que utiliza diferentes hosts de bastión para EC2 en diferentes VPC. ¿Es posible usar solo un host de bastión para acceder a tod...

0  EC2ResponseError: 401 no autorizado usando saltstack boto_vpc módulo  ( Ec2responseerror 401 unauthorized using saltstack boto vpc module ) 
Estoy tratando de crear un VPC con el módulo de saltack y boto_vpc. Este es mi estado: vpc_create: module.run: - name: boto_vpc.create ...

4  ¿Por qué mi lambda funcione de tiempo de espera de conexión a SES VPC Endpoint?  ( Why does my lambda function timeout connecting to ses vpc endpoint ) 
desde abril 2020 , AWS es compatible con los puntos finales de VPC para SES (servicio de correo electrónico simple) A pesar de esto, no puedo obtener una lam...

1  Utilice el valor de salida en el objeto Terraform  ( Use output value in terraform object ) 
Tengo variable de salida múltiple, quiero hacer que una variable de un padre salga y luego coloque otras salidas. He buscado al respecto y encontré que podemo...

5  Acceda a Internet desde la instancia de AWS VPC sin dirección IP pública  ( Access internet from aws vpc instance without public ip address ) 
Estamos configurando un VPC de Amazon en el que provisionaremos (por ahora) una sola instancia de EC2 y una instancia de RDS. Esto es para "extender nuestro c...




© 2022 respuesta.top Reservados todos los derechos. Centro de preguntas y respuestas reservados todos los derechos