小编Rob*_*bin的帖子

如何将 VPC 和安全组分配给 AWS CDK 中的 Lambda?

我有一个带有需要插入 RDS 数据库的 lambda 函数的 AWS CDK 堆栈。部署堆栈时,lambda 函数无法访问数据库并给出错误:getaddrinfo ENOTFOUND [RDS 端点由我定义]。手动添加RDS数据库所在的VPC、子网和安全组后,lambda函数正常工作。

您如何在 AWS CDK 中定义 VPC、子网和安全组,最好是在 TypeScript 中?就文档而言,我尝试过:

const vpc = ec2.Vpc.fromLookup(this, "VPC", { vpcName: "myVPC" });

const securityGroup = ec2.SecurityGroup.fromSecurityGroupId(
  this,
  "SG",
  "sg-XXXXX"
);

const subnet1a = ec2.PrivateSubnet.fromSubnetAttributes(this, "SUBNET1A", {
  subnetId: "eu-central-1a"
});

const myLambda = new lambda.Function(this, "myLambda", {
  runtime: lambda.Runtime.NODEJS_12_X,
  code: lambda.Code.fromAsset("lambda"),
  handler: "myLambda.handler",
  description: "myLambda",
  environment: {
    DB_HOST: "XXXX",
    DB_USER: "XXXX",
    DB_PASSWORD: "XXXX",
    DB_NAME: "XXXX"
  },
  vpc: vpc,
  vpcSubnets: [subnet1a],
  securityGroups: [securityGroup]
});
Run Code Online (Sandbox Code Playgroud)

运行 cdk …

amazon-web-services aws-lambda aws-security-group aws-cdk

7
推荐指数
2
解决办法
8002
查看次数

启用 Keycloak 只读用户属性时出现问题

我尝试按照文档在 Keycloak 中启用只读用户属性:https: //www.keycloak.org/docs/latest/server_admin/ 但是,记录的配置实际上并不能阻止用户更改其属性。

将 Keycloak 15.0.0 与 docker hub 中的常规 Docker 映像结合使用创建了一个 .cli 文件并将其添加到我的 Docker 映像中,该映像由

FROM jboss/keycloak:15.0.0
ADD RESTRICT_USER_ATTRIBUTES.cli /opt/jboss/startup-scripts/
Run Code Online (Sandbox Code Playgroud)

包含 RESTRICT_USER_ATTRIBUTES.cli 的内容:

embed-server --server-config=standalone-ha.xml --std-out=echo

batch

/subsystem=keycloak-server/spi=userProfile/:add
/subsystem=keycloak-server/spi=userProfile/provider=legacy-user-profile/:add(properties={},enabled=true)
/subsystem=keycloak-server/spi=userProfile/provider=legacy-user-profile/:map-put(name=properties,key=read-only-attributes,value=[myUserAttribute])

run-batch

stop-embedded-server
Run Code Online (Sandbox Code Playgroud)

根据日志处理.cli 文件。我可以执行 docker 实例并使用 jboss-cli.sh 检查配置。但最终用户可以使用 Postman 或其他工具自由编辑 myUserAttribute。

我在这里做错了什么?

docker keycloak

5
推荐指数
1
解决办法
1347
查看次数