用户管理接口
更新时间:2024-09-29
创建用户
通过以下代码可以创建子用户。
name := "test-user-sdk-go"
args := &api.CreateUserArgs{
Name: name,
Description: "description",
}
result, err := client.CreateUser(args)
if err != nil {
fmt.Println("Create iam user failed", err)
} else {
fmt.Println("Create iam user success", result)
}
提示:
- 详细的参数配置及限制条件,可以参考IAM API文档CreateUser创建用户。
查询用户
通过以下代码可以查询单个子用户。
name := "test-user-sdk-go"
result, err := client.GetUser(name)
if err != nil {
fmt.Println("Get iam user failed", err)
} else {
fmt.Println("Get iam user success", result)
}
提示:
- 详细的参数配置及限制条件,可以参考IAM API文档GetUser查询用户。
更新用户
通过以下代码可以更新子用户。
name := "test-user-sdk-go"
args := &api.UpdateUserArgs{
Description: "newDescription",
}
result, err := client.UpdateUser(name, args)
if err != nil {
fmt.Println("Update iam user failed", err)
} else {
fmt.Println("Update iam user success", result)
}
提示:
- 详细的参数配置及限制条件,可以参考IAM API文档UpdateUser更新用户。
列举用户
通过以下代码可以列举子用户。
result, err := client.ListUser()
if err != nil {
fmt.Println("List iam user failed", err)
} else {
fmt.Println("List iam user success", result)
}
提示:
- 详细的参数配置及限制条件,可以参考IAM API文档ListUser创建用户。
删除用户
通过以下代码可以更新子用户。
name := "test-user-sdk-go"
err = client.DeleteUser(name)
if err != nil {
fmt.Println("Delete iam user failed", err)
} else {
fmt.Println("Delete iam user success", name)
}
提示:
- 详细的参数配置及限制条件,可以参考IAM API文档DeleteUser删除用户。
配置用户控制台登录
通过以下代码可以配置用户的控制台登录,为其配置登录密码、开启登录MFA、配置第三方账号绑定等。
name := "test-user-sdk-go-login-profile"
args := &api.UpdateUserLoginProfileArgs{
Password: "1@3Qwe4f",
EnabledLoginMfa: false,
LoginMfaType: "PHONE",
}
result, err := client.UpdateUserLoginProfile(name, args)
if err != nil {
fmt.Println("Update iam user login profile failed", err)
} else {
fmt.Println("Update iam user login profile success", result)
}
提示:
- 详细的参数配置及限制条件,可以参考IAM API文档UpdateUserLoginProfile配置用户控制台登录。
查询控制台登录配置
通过以下代码可以查询用户的控制台登录配置。
name := "test-user-sdk-go-login-profile"
result, err := client.GetUserLoginProfile(name)
if err != nil {
fmt.Println("Get iam user login profile failed", err)
} else {
fmt.Println("Get iam user login profile success", result)
}
提示:
- 详细的参数配置及限制条件,可以参考IAM API文档GetUserLoginProfile查询用户控制台登录。
关闭控制台登录配置
关闭用户的控制台登录配置,即关闭用户的控制台登录。
name := "test-user-sdk-go-login-profile"
err = client.DeleteUserLoginProfile(name)
if err != nil {
fmt.Println("Delete iam user login profile failed", err)
} else {
fmt.Println("Delete iam user login profile success", name)
}
提示:
- 详细的参数配置及限制条件,可以参考IAM API文档DeleteUserLoginProfile关闭用户控制台登录。
修改子用户操作保护
通过以下代码修改子用户操作保护。
userName := "test-user-sdk-go-switch-operation-mfa"
enableMfa := true
mfaType := "PHONE,TOTP"
args := &api.UserSwitchMfaArgs{
UserName: userName,
EnabledMfa: enableMfa,
MfaType: mfaType,
}
err := IAM_CLIENT.UserOperationMfaSwitch(args)
if err != nil {
fmt.Println("switch user mfa failed", err)
} else {
fmt.Println("switch user mfa success", result)
}
提示:
- 详细的参数配置及限制条件,可以参考IAM API文档修改子用户操作保护。
修改子用户密码
通过以下代码修改子用户密码。
userName := "test-user-name-sdk-go-sub-update"
Password := "Baidu@123"
args := &api.UpdateSubUserArgs{
Password: Password,
}
res, err := IAM_CLIENT.SubUserUpdate(userName, args)
if err != nil {
fmt.Println("update sub user failed", err)
} else {
fmt.Println("update sub user success", result)
}
提示:
- 详细的参数配置及限制条件,可以参考IAM API文档修改子用户密码。
创建用户的AccessKey
通过以下代码为用户创建一组AccessKey访问密钥。
name := "test-user-sdk-go-accessKey"
result, err := client.CreateAccessKey(name)
if err != nil {
fmt.Println("Create accessKey failed", err)
} else {
fmt.Println("Create accessKey success", result)
}
提示:
- 详细的参数配置及限制条件,可以参考IAM API文档创建用户的AccessKey。
禁用用户的AccessKey
通过以下代码为禁用用户的AccessKey。
name := "test-user-sdk-go-accessKey"
accessKeyId := "<your-access-key-id>"
result, err := client.DisableAccessKey(name, accessKeyId)
if err != nil {
fmt.Println("Disable accessKey failed", err)
} else {
fmt.Println("Disable accessKey success", result)
}
提示:
- 详细的参数配置及限制条件,可以参考IAM API文档禁用用户的AccessKey。
启用用户的AccessKey
通过以下代码为启用用户的AccessKey。
name := "test-user-sdk-go-accessKey"
accessKeyId := "<your-access-key-id>"
result, err := client.EnableAccessKey(name, accessKeyId)
if err != nil {
fmt.Println("Enable accessKey failed", err)
} else {
fmt.Println("Enable accessKey success", result)
}
提示:
- 详细的参数配置及限制条件,可以参考IAM API文档启用用户的AccessKey。
删除用户的AccessKey
删除用户的指定一组AccessKey访问密钥。
name := "test-user-sdk-go-accessKey"
accessKeyId := "<your-access-key-id>"
err = client.DeleteAccessKey(name, accessKeyId)
if err != nil {
fmt.Println("Delete accessKey failed", err)
} else {
fmt.Println("Delete accessKey success", accessKeyId)
}
提示:
- 详细的参数配置及限制条件,可以参考IAM API文档删除用户的AccessKey。
列举用户的AccessKey
列举用户的全部AccessKey访问密钥。
name := "test-user-sdk-go-accessKey"
result, err := client.ListAccessKey(name)
if err != nil {
fmt.Println("List accessKey failed", err)
} else {
fmt.Println("List accessKey success", result)
}
提示:
- 详细的参数配置及限制条件,可以参考IAM API文档列举用户的AccessKey。
查询IAM用户联合信息
查询IAM用户联合信息,对应页面菜单:多用户访问控制->外部账号接入->IAM用户联合页面的内容。
result, err := client.GetSubUserIdpConfig()
if err != nil {
fmt.Println("Get subUser idp config failed", err)
} else {
fmt.Println("Get subUser idp config success", result)
}
提示:
- 详细的参数配置及限制条件,可以参考IAM API文档查询IAM用户联合信息。
更新IAM用户联合功能状态
更新IAM用户联合功能状态。
status := "disable"
result, err := client.UpdateSubUserIdpStatus(status)
if err != nil {
fmt.Println("Updte subUser idp config status failed", err)
} else {
fmt.Println("Updte subUser idp config status success", result)
}
提示:
- 详细的参数配置及限制条件,可以参考IAM API文档更新IAM用户联合功能状态。
更新IAM用户联合功能配置
更新IAM用户联合功能配置。
var request api.UpdateSubUserIdpRequest
fileName := "ok.xml"
request.AuxiliaryDomain = "<your-auxiliary-domain>"
request.FileName = "<your-file-name>"
request..EncodeMetadata = "<your-encode-metadata>"
result, err := client.UpdateSubUserIdp(&request)
if err != nil {
fmt.Println("Updte subUser idp config failed", err)
} else {
fmt.Println("Updte subUser idp config success", result)
}
提示:
- 详细的参数配置及限制条件,可以参考IAM API文档更新IAM用户联合功能配置。
删除IAM用户联合配置
删除IAM用户联合功能配置。
err := IAM_CLIENT.DeleteSubUserIdp()
if err != nil {
fmt.Println("Delete subUser idp config failed", err)
} else {
fmt.Println("Updte subUser idp config success")
}
提示:
- 详细的参数配置及限制条件,可以参考IAM API文档删除IAM用户联合配置。