【问题标题】:Trying to Provision IAM Users in AWS IAM with the AWS-CDK尝试使用 AWS-CDK 在 AWS IAM 中预置 IAM 用户
【发布时间】:2021-11-12 17:53:36
【问题描述】:

我正在尝试使用 AWS-CDK 预置 IAM 用户。我目前在为我正在创建的用户配置临时密码时遇到问题,我正在尝试找到一种使用机密管理器的方法,因为我认为应该有更简单的方法来做到这一点。这是我下面的代码(我传递给“CisUser”的密码道具当前出错了):

import cdk = require('@aws-cdk/core')
import * as logs from '@aws-cdk/aws-logs';
import s3 = require("@aws-cdk/aws-s3");
import * as cloudtrail from '@aws-cdk/aws-cloudtrail';
import cloudwatch = require('@aws-cdk/aws-cloudwatch');
import { User, Group } from "@aws-cdk/aws-iam";
import * as lambda from "@aws-cdk/aws-lambda"
import path = require('path');
import events = require("@aws-cdk/aws-events");
import * as targets from "@aws-cdk/aws-events-targets";
import { SecretValue } from '@aws-cdk/core';


export class CloudComplianceUserBaselineStack extends cdk.Stack {
    constructor(scope: cdk.Construct, id: string, props?: cdk.StackProps) {
      super(scope, id, props);
    
      const CisUser = new User(this, 'CisUser',{
          userName: 'CisUser',
          password: 'testPassword12345%$',
          passwordResetRequired: true,
      })
      const TestUser = new iam.User(this,"TestUser",{})
      const adminGroup = new iam.Group(this, 'AdminGroup',{
        managedPolicies: [
          iam.ManagedPolicy.fromAwsManagedPolicyName("AdministratorAccess")
        ]
      })
      const AuditGroup = new iam.Group(this,'AuditGroup',{
        managedPolicies:[
          iam.ManagedPolicy.fromAwsManagedPolicyName("ReadOnlyAccess")
        ]
      })
      AuditGroup.addUser(CisUser)
      adminGroup.addUser(TestUser)
      
      
    }}

提前谢谢你。

【问题讨论】:

    标签: typescript amazon-web-services amazon-iam aws-cdk


    【解决方案1】:

    我认为我们应该在尝试传递密码字段时使用确切的类型

    https://docs.aws.amazon.com/cdk/api/latest/docs/aws-iam-readme.html

    import { SecretValue } from '@aws-cdk/core';
    ...
    ...
    {
        password: SecretValue.plainText('testPassword12345%$'),
    
    }
    

    【讨论】:

    • 当用户更改它时,我应该如何更改我的代码?在代码中为用户提供临时密码似乎是多余的
    • 我在想我们只是在初始化时生成一个临时密码-当堆栈运行创建的新用户时-我们只是为用户提供此信息(密码应该由一些 PATTERN 生成)-用户可以在此之后更改密码 如果他们想要创建堆栈,用户应该分开,也许我们会有另一个堆栈 RESET PASSWORD STACK 以防用户将来忘记PASS。
    • @aroe 这是一个不同的问题。此答案回答了您最初的问题。
    猜你喜欢
    • 1970-01-01
    • 2020-07-12
    • 2019-05-10
    • 2021-10-15
    • 2021-05-11
    • 2020-12-16
    • 2018-02-22
    • 2016-11-08
    • 1970-01-01
    相关资源
    最近更新 更多