如何在lambda处理程序中使用secretmanager端点?

a7qyws3x  于 2021-06-29  发布在  Java
关注(0)|答案(1)|浏览(459)

我想写一封来自lambda的rds。由于它们在不同的帐户中,我在它们之间创建了一个对等连接,还创建了一个秘密端点来访问它。我有一个非循环的秘密管理器端点,我有一个lambda处理程序,比如

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'}

如何在这个处理程序中使用秘密端点,以及如何通过它引用表?由于我是新手,任何样本代码或文件将是有帮助的。找不到。

aor9mmx1

aor9mmx11#

如果lambda函数在vpc内部运行,并且端点可以访问,则不需要做任何事情1。根据端点(接口或网关)的类型,aws使用了一些dns技巧(aws为您设置的私有托管区域)来实现无缝连接。
基本上,代码不需要知道它正在与vpc端点通信,而vpc端点是在后台处理的。有几个例外在过去咬过我——见脚注。如果不起作用,请确保端点的安全组允许来自端口443上lambda函数的连接。
1:异常是iam和其他全局服务,在这里您应该在示例化客户端时指定一个区域终结点。

相关问题