AwsCustomResource в CDK для создания соединителя AD - PullRequest
0 голосов
/ 05 ноября 2019

Я использую следующий код, чтобы попытаться создать AD Connector, используя AWS Custom Resource в AWS CDK

. У меня возникают две проблемы:

Как настроить DeleteCall с помощьюDirectoryId, созданный в CreateCall для правильного удаления?

И как, если возможно, я могу использовать диспетчер хранилища параметров или секретов для предоставления пароля?

var password = StringParameter.ValueForSecureStringParameter(this, "ad-connector-password", 1);

var connectSettingsObj = new Dictionary<string, object>
{
    { "VpcId", "vpc-12345" },
    {"SubnetIds", new [] {"subnet-1","subnet-2"}},
    {"CustomerDnsIps", new [] {"1.2.3.4","5.6.7.8"}},
    {"CustomerUserName", "aws.ad-connector"}
};

var createCall = new AwsSdkCall
{
    Service = "DirectoryService",
    Action = "connectDirectory",
    PhysicalResourceIdPath = "DirectoryId",
    Parameters = new Dictionary<string, object>
    {
        {"Name", "example.com"},
        {"Size", "Small"},
        {"ConnectSettings", connectSettingsObj},
        {"Password", password}
    },
    Region = "eu-west-1"
};

var ps = new PolicyStatement(new PolicyStatementProps
    {
        Actions = new[] {"*"},
        Resources = new[] {"*"}
    });        

var adConnector = new AwsCustomResource(this, "ad-connector-test", new AwsCustomResourceProps
{
    OnCreate = createCall,

    PolicyStatements = new []{ ps }
});
...