我试图在别名下创建用户。例如。说我是公司,我的AWS账户是My-Org-007
,在此我可以创建用户。但我想用API做到这一点。当我浏览文档时,它给出如下。
https://iam.amazonaws.com/?Action=CreateUser
&Path=/division_abc/subdivision_xyz/
&UserName=Bob
&Version=2010-05-08
&AUTHPARAMS
我对Path
(我可以在哪里获取路径)和AUTHPARAMS
(我有Access key ID
和Secret access key
感到困惑,这些是我需要以及如何在API调用中访问它。
请告诉我如何使用API进行操作。
由于
答案 0 :(得分:0)
除非您有非常令人信服的理由直接使用AWS API,否则您可能希望使用AWS软件开发工具包。 SDK可以让您的生活轻松实现您的目标。检查NodeJS SDK的CreateUser文档(其他编程语言的SDK,如Go,Java,Python,.Net,C ++ ......也可供您使用):http://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/IAM.html
/ *以下create-user命令在当前帐户中创建名为Bob的IAM用户。 * /
// default streams configuration serdes are different from the actual output configurations
val streamsConfiguration: Properties = {
val p = new Properties()
p.put(StreamsConfig.APPLICATION_ID_CONFIG, kStreamsConf.getString("APPLICATION_ID"))
p.put(StreamsConfig.BOOTSTRAP_SERVERS_CONFIG, kStreamsConf.getString("BOOTSTRAP_SERVERS_CONFIG"))
p.put(ConsumerConfig.AUTO_OFFSET_RESET_CONFIG, kStreamsConf.getString("AUTO_OFFSET_RESET_CONFIG"))
p.put(StreamsConfig.KEY_SERDE_CLASS_CONFIG, Serdes.String.getClass.getName)
p.put(StreamsConfig.VALUE_SERDE_CLASS_CONFIG, Serdes.String.getClass.getName)
p.put(AbstractKafkaAvroSerDeConfig.SCHEMA_REGISTRY_URL_CONFIG, kStreamsConf.getString("SCHEMA_REGISTRY_URL_CONFIG"))
p
}
// adjusted output serdes for avro records
val keySerde: Serde[String] = Serdes.String
val valSerde: Serde[GenericData.Record] = new GenericAvroSerde()
valSerde.configure(
Collections.singletonMap(
AbstractKafkaAvroSerDeConfig.SCHEMA_REGISTRY_URL_CONFIG,
streamsConfiguration.get(AbstractKafkaAvroSerDeConfig.SCHEMA_REGISTRY_URL_CONFIG)
),
/* isKeySerde = */ false
)
// Now using the adjusted serdes to write to output like this
stream.to(keySerde, valSerde, "destTopic")
调用createUser操作
var params = {
UserName: "Bob"
};
iam.createUser(params, function(err, data) {
if (err) console.log(err, err.stack); // an error occurred
else console.log(data); // successful response
/*
data = {
User: {
Arn: "arn:aws:iam::123456789012:user/Bob",
CreateDate: <Date Representation>,
Path: "/",
UserId: "AKIAIOSFODNN7EXAMPLE",
UserName: "Bob"
}
}
*/
});