ram-20150501/core/Client.cs (4,496 lines of code) (raw):
// This file is auto-generated, don't edit it. Thanks.
using System;
using System.Collections;
using System.Collections.Generic;
using System.IO;
using System.Threading.Tasks;
using Tea;
using Tea.Utils;
using AlibabaCloud.SDK.Ram20150501.Models;
namespace AlibabaCloud.SDK.Ram20150501
{
public class Client : AlibabaCloud.OpenApiClient.Client
{
public Client(AlibabaCloud.OpenApiClient.Models.Config config): base(config)
{
this._endpointRule = "central";
CheckConfig(config);
this._endpoint = GetEndpoint("ram", _regionId, _endpointRule, _network, _suffix, _endpointMap, _endpoint);
}
public string GetEndpoint(string productId, string regionId, string endpointRule, string network, string suffix, Dictionary<string, string> endpointMap, string endpoint)
{
if (!AlibabaCloud.TeaUtil.Common.Empty(endpoint))
{
return endpoint;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(endpointMap) && !AlibabaCloud.TeaUtil.Common.Empty(endpointMap.Get(regionId)))
{
return endpointMap.Get(regionId);
}
return AlibabaCloud.EndpointUtil.Common.GetEndpointRules(productId, regionId, endpointRule, network, suffix);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Adds a RAM user to a RAM user group.</para>
/// </summary>
///
/// <param name="request">
/// AddUserToGroupRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// AddUserToGroupResponse
/// </returns>
public AddUserToGroupResponse AddUserToGroupWithOptions(AddUserToGroupRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.GroupName))
{
query["GroupName"] = request.GroupName;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UserName))
{
query["UserName"] = request.UserName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "AddUserToGroup",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<AddUserToGroupResponse>(CallApi(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Adds a RAM user to a RAM user group.</para>
/// </summary>
///
/// <param name="request">
/// AddUserToGroupRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// AddUserToGroupResponse
/// </returns>
public async Task<AddUserToGroupResponse> AddUserToGroupWithOptionsAsync(AddUserToGroupRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.GroupName))
{
query["GroupName"] = request.GroupName;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UserName))
{
query["UserName"] = request.UserName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "AddUserToGroup",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<AddUserToGroupResponse>(await CallApiAsync(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Adds a RAM user to a RAM user group.</para>
/// </summary>
///
/// <param name="request">
/// AddUserToGroupRequest
/// </param>
///
/// <returns>
/// AddUserToGroupResponse
/// </returns>
public AddUserToGroupResponse AddUserToGroup(AddUserToGroupRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return AddUserToGroupWithOptions(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Adds a RAM user to a RAM user group.</para>
/// </summary>
///
/// <param name="request">
/// AddUserToGroupRequest
/// </param>
///
/// <returns>
/// AddUserToGroupResponse
/// </returns>
public async Task<AddUserToGroupResponse> AddUserToGroupAsync(AddUserToGroupRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return await AddUserToGroupWithOptionsAsync(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Attaches a policy to a RAM user group.</para>
/// </summary>
///
/// <param name="request">
/// AttachPolicyToGroupRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// AttachPolicyToGroupResponse
/// </returns>
public AttachPolicyToGroupResponse AttachPolicyToGroupWithOptions(AttachPolicyToGroupRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.GroupName))
{
query["GroupName"] = request.GroupName;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PolicyName))
{
query["PolicyName"] = request.PolicyName;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PolicyType))
{
query["PolicyType"] = request.PolicyType;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "AttachPolicyToGroup",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<AttachPolicyToGroupResponse>(CallApi(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Attaches a policy to a RAM user group.</para>
/// </summary>
///
/// <param name="request">
/// AttachPolicyToGroupRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// AttachPolicyToGroupResponse
/// </returns>
public async Task<AttachPolicyToGroupResponse> AttachPolicyToGroupWithOptionsAsync(AttachPolicyToGroupRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.GroupName))
{
query["GroupName"] = request.GroupName;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PolicyName))
{
query["PolicyName"] = request.PolicyName;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PolicyType))
{
query["PolicyType"] = request.PolicyType;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "AttachPolicyToGroup",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<AttachPolicyToGroupResponse>(await CallApiAsync(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Attaches a policy to a RAM user group.</para>
/// </summary>
///
/// <param name="request">
/// AttachPolicyToGroupRequest
/// </param>
///
/// <returns>
/// AttachPolicyToGroupResponse
/// </returns>
public AttachPolicyToGroupResponse AttachPolicyToGroup(AttachPolicyToGroupRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return AttachPolicyToGroupWithOptions(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Attaches a policy to a RAM user group.</para>
/// </summary>
///
/// <param name="request">
/// AttachPolicyToGroupRequest
/// </param>
///
/// <returns>
/// AttachPolicyToGroupResponse
/// </returns>
public async Task<AttachPolicyToGroupResponse> AttachPolicyToGroupAsync(AttachPolicyToGroupRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return await AttachPolicyToGroupWithOptionsAsync(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Attaches a policy to a RAM role.</para>
/// </summary>
///
/// <param name="request">
/// AttachPolicyToRoleRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// AttachPolicyToRoleResponse
/// </returns>
public AttachPolicyToRoleResponse AttachPolicyToRoleWithOptions(AttachPolicyToRoleRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PolicyName))
{
query["PolicyName"] = request.PolicyName;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PolicyType))
{
query["PolicyType"] = request.PolicyType;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RoleName))
{
query["RoleName"] = request.RoleName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "AttachPolicyToRole",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<AttachPolicyToRoleResponse>(CallApi(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Attaches a policy to a RAM role.</para>
/// </summary>
///
/// <param name="request">
/// AttachPolicyToRoleRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// AttachPolicyToRoleResponse
/// </returns>
public async Task<AttachPolicyToRoleResponse> AttachPolicyToRoleWithOptionsAsync(AttachPolicyToRoleRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PolicyName))
{
query["PolicyName"] = request.PolicyName;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PolicyType))
{
query["PolicyType"] = request.PolicyType;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RoleName))
{
query["RoleName"] = request.RoleName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "AttachPolicyToRole",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<AttachPolicyToRoleResponse>(await CallApiAsync(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Attaches a policy to a RAM role.</para>
/// </summary>
///
/// <param name="request">
/// AttachPolicyToRoleRequest
/// </param>
///
/// <returns>
/// AttachPolicyToRoleResponse
/// </returns>
public AttachPolicyToRoleResponse AttachPolicyToRole(AttachPolicyToRoleRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return AttachPolicyToRoleWithOptions(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Attaches a policy to a RAM role.</para>
/// </summary>
///
/// <param name="request">
/// AttachPolicyToRoleRequest
/// </param>
///
/// <returns>
/// AttachPolicyToRoleResponse
/// </returns>
public async Task<AttachPolicyToRoleResponse> AttachPolicyToRoleAsync(AttachPolicyToRoleRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return await AttachPolicyToRoleWithOptionsAsync(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Attaches a policy to a RAM user.</para>
/// </summary>
///
/// <param name="request">
/// AttachPolicyToUserRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// AttachPolicyToUserResponse
/// </returns>
public AttachPolicyToUserResponse AttachPolicyToUserWithOptions(AttachPolicyToUserRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PolicyName))
{
query["PolicyName"] = request.PolicyName;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PolicyType))
{
query["PolicyType"] = request.PolicyType;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UserName))
{
query["UserName"] = request.UserName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "AttachPolicyToUser",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<AttachPolicyToUserResponse>(CallApi(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Attaches a policy to a RAM user.</para>
/// </summary>
///
/// <param name="request">
/// AttachPolicyToUserRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// AttachPolicyToUserResponse
/// </returns>
public async Task<AttachPolicyToUserResponse> AttachPolicyToUserWithOptionsAsync(AttachPolicyToUserRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PolicyName))
{
query["PolicyName"] = request.PolicyName;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PolicyType))
{
query["PolicyType"] = request.PolicyType;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UserName))
{
query["UserName"] = request.UserName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "AttachPolicyToUser",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<AttachPolicyToUserResponse>(await CallApiAsync(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Attaches a policy to a RAM user.</para>
/// </summary>
///
/// <param name="request">
/// AttachPolicyToUserRequest
/// </param>
///
/// <returns>
/// AttachPolicyToUserResponse
/// </returns>
public AttachPolicyToUserResponse AttachPolicyToUser(AttachPolicyToUserRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return AttachPolicyToUserWithOptions(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Attaches a policy to a RAM user.</para>
/// </summary>
///
/// <param name="request">
/// AttachPolicyToUserRequest
/// </param>
///
/// <returns>
/// AttachPolicyToUserResponse
/// </returns>
public async Task<AttachPolicyToUserResponse> AttachPolicyToUserAsync(AttachPolicyToUserRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return await AttachPolicyToUserWithOptionsAsync(request, runtime);
}
/// <param name="request">
/// BindMFADeviceRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// BindMFADeviceResponse
/// </returns>
public BindMFADeviceResponse BindMFADeviceWithOptions(BindMFADeviceRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.AuthenticationCode1))
{
query["AuthenticationCode1"] = request.AuthenticationCode1;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.AuthenticationCode2))
{
query["AuthenticationCode2"] = request.AuthenticationCode2;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.SerialNumber))
{
query["SerialNumber"] = request.SerialNumber;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UserName))
{
query["UserName"] = request.UserName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "BindMFADevice",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<BindMFADeviceResponse>(CallApi(params_, req, runtime));
}
/// <param name="request">
/// BindMFADeviceRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// BindMFADeviceResponse
/// </returns>
public async Task<BindMFADeviceResponse> BindMFADeviceWithOptionsAsync(BindMFADeviceRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.AuthenticationCode1))
{
query["AuthenticationCode1"] = request.AuthenticationCode1;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.AuthenticationCode2))
{
query["AuthenticationCode2"] = request.AuthenticationCode2;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.SerialNumber))
{
query["SerialNumber"] = request.SerialNumber;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UserName))
{
query["UserName"] = request.UserName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "BindMFADevice",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<BindMFADeviceResponse>(await CallApiAsync(params_, req, runtime));
}
/// <param name="request">
/// BindMFADeviceRequest
/// </param>
///
/// <returns>
/// BindMFADeviceResponse
/// </returns>
public BindMFADeviceResponse BindMFADevice(BindMFADeviceRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return BindMFADeviceWithOptions(request, runtime);
}
/// <param name="request">
/// BindMFADeviceRequest
/// </param>
///
/// <returns>
/// BindMFADeviceResponse
/// </returns>
public async Task<BindMFADeviceResponse> BindMFADeviceAsync(BindMFADeviceRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return await BindMFADeviceWithOptionsAsync(request, runtime);
}
/// <term><b>Description:</b></term>
/// <description>
/// <remarks>
/// <para> This operation is available only for RAM users. Before you call this operation, make sure that <c>AllowUserToChangePassword</c> in <a href="https://help.aliyun.com/document_detail/43765.html">SetSecurityPreference</a> is set to <c>True</c>. The value True indicates that RAM users can change their passwords.</para>
/// </remarks>
/// </description>
///
/// <param name="request">
/// ChangePasswordRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// ChangePasswordResponse
/// </returns>
public ChangePasswordResponse ChangePasswordWithOptions(ChangePasswordRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.NewPassword))
{
query["NewPassword"] = request.NewPassword;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.OldPassword))
{
query["OldPassword"] = request.OldPassword;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "ChangePassword",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<ChangePasswordResponse>(CallApi(params_, req, runtime));
}
/// <term><b>Description:</b></term>
/// <description>
/// <remarks>
/// <para> This operation is available only for RAM users. Before you call this operation, make sure that <c>AllowUserToChangePassword</c> in <a href="https://help.aliyun.com/document_detail/43765.html">SetSecurityPreference</a> is set to <c>True</c>. The value True indicates that RAM users can change their passwords.</para>
/// </remarks>
/// </description>
///
/// <param name="request">
/// ChangePasswordRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// ChangePasswordResponse
/// </returns>
public async Task<ChangePasswordResponse> ChangePasswordWithOptionsAsync(ChangePasswordRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.NewPassword))
{
query["NewPassword"] = request.NewPassword;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.OldPassword))
{
query["OldPassword"] = request.OldPassword;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "ChangePassword",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<ChangePasswordResponse>(await CallApiAsync(params_, req, runtime));
}
/// <term><b>Description:</b></term>
/// <description>
/// <remarks>
/// <para> This operation is available only for RAM users. Before you call this operation, make sure that <c>AllowUserToChangePassword</c> in <a href="https://help.aliyun.com/document_detail/43765.html">SetSecurityPreference</a> is set to <c>True</c>. The value True indicates that RAM users can change their passwords.</para>
/// </remarks>
/// </description>
///
/// <param name="request">
/// ChangePasswordRequest
/// </param>
///
/// <returns>
/// ChangePasswordResponse
/// </returns>
public ChangePasswordResponse ChangePassword(ChangePasswordRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return ChangePasswordWithOptions(request, runtime);
}
/// <term><b>Description:</b></term>
/// <description>
/// <remarks>
/// <para> This operation is available only for RAM users. Before you call this operation, make sure that <c>AllowUserToChangePassword</c> in <a href="https://help.aliyun.com/document_detail/43765.html">SetSecurityPreference</a> is set to <c>True</c>. The value True indicates that RAM users can change their passwords.</para>
/// </remarks>
/// </description>
///
/// <param name="request">
/// ChangePasswordRequest
/// </param>
///
/// <returns>
/// ChangePasswordResponse
/// </returns>
public async Task<ChangePasswordResponse> ChangePasswordAsync(ChangePasswordRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return await ChangePasswordWithOptionsAsync(request, runtime);
}
/// <param name="request">
/// ClearAccountAliasRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// ClearAccountAliasResponse
/// </returns>
public ClearAccountAliasResponse ClearAccountAliasWithOptions(AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest();
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "ClearAccountAlias",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<ClearAccountAliasResponse>(CallApi(params_, req, runtime));
}
/// <param name="request">
/// ClearAccountAliasRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// ClearAccountAliasResponse
/// </returns>
public async Task<ClearAccountAliasResponse> ClearAccountAliasWithOptionsAsync(AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest();
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "ClearAccountAlias",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<ClearAccountAliasResponse>(await CallApiAsync(params_, req, runtime));
}
/// <returns>
/// ClearAccountAliasResponse
/// </returns>
public ClearAccountAliasResponse ClearAccountAlias()
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return ClearAccountAliasWithOptions(runtime);
}
/// <returns>
/// ClearAccountAliasResponse
/// </returns>
public async Task<ClearAccountAliasResponse> ClearAccountAliasAsync()
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return await ClearAccountAliasWithOptionsAsync(runtime);
}
/// <param name="request">
/// CreateAccessKeyRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// CreateAccessKeyResponse
/// </returns>
public CreateAccessKeyResponse CreateAccessKeyWithOptions(CreateAccessKeyRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UserName))
{
query["UserName"] = request.UserName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "CreateAccessKey",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<CreateAccessKeyResponse>(CallApi(params_, req, runtime));
}
/// <param name="request">
/// CreateAccessKeyRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// CreateAccessKeyResponse
/// </returns>
public async Task<CreateAccessKeyResponse> CreateAccessKeyWithOptionsAsync(CreateAccessKeyRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UserName))
{
query["UserName"] = request.UserName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "CreateAccessKey",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<CreateAccessKeyResponse>(await CallApiAsync(params_, req, runtime));
}
/// <param name="request">
/// CreateAccessKeyRequest
/// </param>
///
/// <returns>
/// CreateAccessKeyResponse
/// </returns>
public CreateAccessKeyResponse CreateAccessKey(CreateAccessKeyRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return CreateAccessKeyWithOptions(request, runtime);
}
/// <param name="request">
/// CreateAccessKeyRequest
/// </param>
///
/// <returns>
/// CreateAccessKeyResponse
/// </returns>
public async Task<CreateAccessKeyResponse> CreateAccessKeyAsync(CreateAccessKeyRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return await CreateAccessKeyWithOptionsAsync(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Creates a RAM user group.</para>
/// </summary>
///
/// <param name="request">
/// CreateGroupRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// CreateGroupResponse
/// </returns>
public CreateGroupResponse CreateGroupWithOptions(CreateGroupRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Comments))
{
query["Comments"] = request.Comments;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.GroupName))
{
query["GroupName"] = request.GroupName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "CreateGroup",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<CreateGroupResponse>(CallApi(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Creates a RAM user group.</para>
/// </summary>
///
/// <param name="request">
/// CreateGroupRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// CreateGroupResponse
/// </returns>
public async Task<CreateGroupResponse> CreateGroupWithOptionsAsync(CreateGroupRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Comments))
{
query["Comments"] = request.Comments;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.GroupName))
{
query["GroupName"] = request.GroupName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "CreateGroup",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<CreateGroupResponse>(await CallApiAsync(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Creates a RAM user group.</para>
/// </summary>
///
/// <param name="request">
/// CreateGroupRequest
/// </param>
///
/// <returns>
/// CreateGroupResponse
/// </returns>
public CreateGroupResponse CreateGroup(CreateGroupRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return CreateGroupWithOptions(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Creates a RAM user group.</para>
/// </summary>
///
/// <param name="request">
/// CreateGroupRequest
/// </param>
///
/// <returns>
/// CreateGroupResponse
/// </returns>
public async Task<CreateGroupResponse> CreateGroupAsync(CreateGroupRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return await CreateGroupWithOptionsAsync(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Enables console logon for a RAM user.</para>
/// </summary>
///
/// <param name="request">
/// CreateLoginProfileRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// CreateLoginProfileResponse
/// </returns>
public CreateLoginProfileResponse CreateLoginProfileWithOptions(CreateLoginProfileRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.MFABindRequired))
{
query["MFABindRequired"] = request.MFABindRequired;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Password))
{
query["Password"] = request.Password;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PasswordResetRequired))
{
query["PasswordResetRequired"] = request.PasswordResetRequired;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UserName))
{
query["UserName"] = request.UserName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "CreateLoginProfile",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<CreateLoginProfileResponse>(CallApi(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Enables console logon for a RAM user.</para>
/// </summary>
///
/// <param name="request">
/// CreateLoginProfileRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// CreateLoginProfileResponse
/// </returns>
public async Task<CreateLoginProfileResponse> CreateLoginProfileWithOptionsAsync(CreateLoginProfileRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.MFABindRequired))
{
query["MFABindRequired"] = request.MFABindRequired;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Password))
{
query["Password"] = request.Password;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PasswordResetRequired))
{
query["PasswordResetRequired"] = request.PasswordResetRequired;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UserName))
{
query["UserName"] = request.UserName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "CreateLoginProfile",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<CreateLoginProfileResponse>(await CallApiAsync(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Enables console logon for a RAM user.</para>
/// </summary>
///
/// <param name="request">
/// CreateLoginProfileRequest
/// </param>
///
/// <returns>
/// CreateLoginProfileResponse
/// </returns>
public CreateLoginProfileResponse CreateLoginProfile(CreateLoginProfileRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return CreateLoginProfileWithOptions(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Enables console logon for a RAM user.</para>
/// </summary>
///
/// <param name="request">
/// CreateLoginProfileRequest
/// </param>
///
/// <returns>
/// CreateLoginProfileResponse
/// </returns>
public async Task<CreateLoginProfileResponse> CreateLoginProfileAsync(CreateLoginProfileRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return await CreateLoginProfileWithOptionsAsync(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Creates a custom policy.</para>
/// </summary>
///
/// <term><b>Description:</b></term>
/// <description>
/// <para>For more information about policies, see <a href="https://help.aliyun.com/document_detail/93732.html">Policy overview</a>.
/// This topic provides an example on how to create a custom policy to query Elastic Compute Service (ECS) instances in a specific region.</para>
/// </description>
///
/// <param name="request">
/// CreatePolicyRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// CreatePolicyResponse
/// </returns>
public CreatePolicyResponse CreatePolicyWithOptions(CreatePolicyRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Description))
{
query["Description"] = request.Description;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PolicyDocument))
{
query["PolicyDocument"] = request.PolicyDocument;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PolicyName))
{
query["PolicyName"] = request.PolicyName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "CreatePolicy",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<CreatePolicyResponse>(CallApi(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Creates a custom policy.</para>
/// </summary>
///
/// <term><b>Description:</b></term>
/// <description>
/// <para>For more information about policies, see <a href="https://help.aliyun.com/document_detail/93732.html">Policy overview</a>.
/// This topic provides an example on how to create a custom policy to query Elastic Compute Service (ECS) instances in a specific region.</para>
/// </description>
///
/// <param name="request">
/// CreatePolicyRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// CreatePolicyResponse
/// </returns>
public async Task<CreatePolicyResponse> CreatePolicyWithOptionsAsync(CreatePolicyRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Description))
{
query["Description"] = request.Description;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PolicyDocument))
{
query["PolicyDocument"] = request.PolicyDocument;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PolicyName))
{
query["PolicyName"] = request.PolicyName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "CreatePolicy",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<CreatePolicyResponse>(await CallApiAsync(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Creates a custom policy.</para>
/// </summary>
///
/// <term><b>Description:</b></term>
/// <description>
/// <para>For more information about policies, see <a href="https://help.aliyun.com/document_detail/93732.html">Policy overview</a>.
/// This topic provides an example on how to create a custom policy to query Elastic Compute Service (ECS) instances in a specific region.</para>
/// </description>
///
/// <param name="request">
/// CreatePolicyRequest
/// </param>
///
/// <returns>
/// CreatePolicyResponse
/// </returns>
public CreatePolicyResponse CreatePolicy(CreatePolicyRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return CreatePolicyWithOptions(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Creates a custom policy.</para>
/// </summary>
///
/// <term><b>Description:</b></term>
/// <description>
/// <para>For more information about policies, see <a href="https://help.aliyun.com/document_detail/93732.html">Policy overview</a>.
/// This topic provides an example on how to create a custom policy to query Elastic Compute Service (ECS) instances in a specific region.</para>
/// </description>
///
/// <param name="request">
/// CreatePolicyRequest
/// </param>
///
/// <returns>
/// CreatePolicyResponse
/// </returns>
public async Task<CreatePolicyResponse> CreatePolicyAsync(CreatePolicyRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return await CreatePolicyWithOptionsAsync(request, runtime);
}
/// <param name="request">
/// CreatePolicyVersionRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// CreatePolicyVersionResponse
/// </returns>
public CreatePolicyVersionResponse CreatePolicyVersionWithOptions(CreatePolicyVersionRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PolicyDocument))
{
query["PolicyDocument"] = request.PolicyDocument;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PolicyName))
{
query["PolicyName"] = request.PolicyName;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RotateStrategy))
{
query["RotateStrategy"] = request.RotateStrategy;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.SetAsDefault))
{
query["SetAsDefault"] = request.SetAsDefault;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "CreatePolicyVersion",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<CreatePolicyVersionResponse>(CallApi(params_, req, runtime));
}
/// <param name="request">
/// CreatePolicyVersionRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// CreatePolicyVersionResponse
/// </returns>
public async Task<CreatePolicyVersionResponse> CreatePolicyVersionWithOptionsAsync(CreatePolicyVersionRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PolicyDocument))
{
query["PolicyDocument"] = request.PolicyDocument;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PolicyName))
{
query["PolicyName"] = request.PolicyName;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RotateStrategy))
{
query["RotateStrategy"] = request.RotateStrategy;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.SetAsDefault))
{
query["SetAsDefault"] = request.SetAsDefault;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "CreatePolicyVersion",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<CreatePolicyVersionResponse>(await CallApiAsync(params_, req, runtime));
}
/// <param name="request">
/// CreatePolicyVersionRequest
/// </param>
///
/// <returns>
/// CreatePolicyVersionResponse
/// </returns>
public CreatePolicyVersionResponse CreatePolicyVersion(CreatePolicyVersionRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return CreatePolicyVersionWithOptions(request, runtime);
}
/// <param name="request">
/// CreatePolicyVersionRequest
/// </param>
///
/// <returns>
/// CreatePolicyVersionResponse
/// </returns>
public async Task<CreatePolicyVersionResponse> CreatePolicyVersionAsync(CreatePolicyVersionRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return await CreatePolicyVersionWithOptionsAsync(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Creates a RAM role.</para>
/// </summary>
///
/// <term><b>Description:</b></term>
/// <description>
/// <h2>Description</h2>
/// <para>For more information about RAM roles, see <a href="https://help.aliyun.com/document_detail/93689.html">Overview of RAM roles</a>.</para>
/// </description>
///
/// <param name="request">
/// CreateRoleRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// CreateRoleResponse
/// </returns>
public CreateRoleResponse CreateRoleWithOptions(CreateRoleRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.AssumeRolePolicyDocument))
{
query["AssumeRolePolicyDocument"] = request.AssumeRolePolicyDocument;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Description))
{
query["Description"] = request.Description;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.MaxSessionDuration))
{
query["MaxSessionDuration"] = request.MaxSessionDuration;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RoleName))
{
query["RoleName"] = request.RoleName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "CreateRole",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<CreateRoleResponse>(CallApi(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Creates a RAM role.</para>
/// </summary>
///
/// <term><b>Description:</b></term>
/// <description>
/// <h2>Description</h2>
/// <para>For more information about RAM roles, see <a href="https://help.aliyun.com/document_detail/93689.html">Overview of RAM roles</a>.</para>
/// </description>
///
/// <param name="request">
/// CreateRoleRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// CreateRoleResponse
/// </returns>
public async Task<CreateRoleResponse> CreateRoleWithOptionsAsync(CreateRoleRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.AssumeRolePolicyDocument))
{
query["AssumeRolePolicyDocument"] = request.AssumeRolePolicyDocument;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Description))
{
query["Description"] = request.Description;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.MaxSessionDuration))
{
query["MaxSessionDuration"] = request.MaxSessionDuration;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RoleName))
{
query["RoleName"] = request.RoleName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "CreateRole",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<CreateRoleResponse>(await CallApiAsync(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Creates a RAM role.</para>
/// </summary>
///
/// <term><b>Description:</b></term>
/// <description>
/// <h2>Description</h2>
/// <para>For more information about RAM roles, see <a href="https://help.aliyun.com/document_detail/93689.html">Overview of RAM roles</a>.</para>
/// </description>
///
/// <param name="request">
/// CreateRoleRequest
/// </param>
///
/// <returns>
/// CreateRoleResponse
/// </returns>
public CreateRoleResponse CreateRole(CreateRoleRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return CreateRoleWithOptions(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Creates a RAM role.</para>
/// </summary>
///
/// <term><b>Description:</b></term>
/// <description>
/// <h2>Description</h2>
/// <para>For more information about RAM roles, see <a href="https://help.aliyun.com/document_detail/93689.html">Overview of RAM roles</a>.</para>
/// </description>
///
/// <param name="request">
/// CreateRoleRequest
/// </param>
///
/// <returns>
/// CreateRoleResponse
/// </returns>
public async Task<CreateRoleResponse> CreateRoleAsync(CreateRoleRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return await CreateRoleWithOptionsAsync(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Creates a Resource Access Management (RAM) user.</para>
/// </summary>
///
/// <term><b>Description:</b></term>
/// <description>
/// <para>This topic provides an example on how to create a RAM user named <c>alice</c>.</para>
/// </description>
///
/// <param name="request">
/// CreateUserRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// CreateUserResponse
/// </returns>
public CreateUserResponse CreateUserWithOptions(CreateUserRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Comments))
{
query["Comments"] = request.Comments;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DisplayName))
{
query["DisplayName"] = request.DisplayName;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Email))
{
query["Email"] = request.Email;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.MobilePhone))
{
query["MobilePhone"] = request.MobilePhone;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UserName))
{
query["UserName"] = request.UserName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "CreateUser",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<CreateUserResponse>(CallApi(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Creates a Resource Access Management (RAM) user.</para>
/// </summary>
///
/// <term><b>Description:</b></term>
/// <description>
/// <para>This topic provides an example on how to create a RAM user named <c>alice</c>.</para>
/// </description>
///
/// <param name="request">
/// CreateUserRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// CreateUserResponse
/// </returns>
public async Task<CreateUserResponse> CreateUserWithOptionsAsync(CreateUserRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Comments))
{
query["Comments"] = request.Comments;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DisplayName))
{
query["DisplayName"] = request.DisplayName;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Email))
{
query["Email"] = request.Email;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.MobilePhone))
{
query["MobilePhone"] = request.MobilePhone;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UserName))
{
query["UserName"] = request.UserName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "CreateUser",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<CreateUserResponse>(await CallApiAsync(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Creates a Resource Access Management (RAM) user.</para>
/// </summary>
///
/// <term><b>Description:</b></term>
/// <description>
/// <para>This topic provides an example on how to create a RAM user named <c>alice</c>.</para>
/// </description>
///
/// <param name="request">
/// CreateUserRequest
/// </param>
///
/// <returns>
/// CreateUserResponse
/// </returns>
public CreateUserResponse CreateUser(CreateUserRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return CreateUserWithOptions(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Creates a Resource Access Management (RAM) user.</para>
/// </summary>
///
/// <term><b>Description:</b></term>
/// <description>
/// <para>This topic provides an example on how to create a RAM user named <c>alice</c>.</para>
/// </description>
///
/// <param name="request">
/// CreateUserRequest
/// </param>
///
/// <returns>
/// CreateUserResponse
/// </returns>
public async Task<CreateUserResponse> CreateUserAsync(CreateUserRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return await CreateUserWithOptionsAsync(request, runtime);
}
/// <param name="request">
/// CreateVirtualMFADeviceRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// CreateVirtualMFADeviceResponse
/// </returns>
public CreateVirtualMFADeviceResponse CreateVirtualMFADeviceWithOptions(CreateVirtualMFADeviceRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.VirtualMFADeviceName))
{
query["VirtualMFADeviceName"] = request.VirtualMFADeviceName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "CreateVirtualMFADevice",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<CreateVirtualMFADeviceResponse>(CallApi(params_, req, runtime));
}
/// <param name="request">
/// CreateVirtualMFADeviceRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// CreateVirtualMFADeviceResponse
/// </returns>
public async Task<CreateVirtualMFADeviceResponse> CreateVirtualMFADeviceWithOptionsAsync(CreateVirtualMFADeviceRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.VirtualMFADeviceName))
{
query["VirtualMFADeviceName"] = request.VirtualMFADeviceName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "CreateVirtualMFADevice",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<CreateVirtualMFADeviceResponse>(await CallApiAsync(params_, req, runtime));
}
/// <param name="request">
/// CreateVirtualMFADeviceRequest
/// </param>
///
/// <returns>
/// CreateVirtualMFADeviceResponse
/// </returns>
public CreateVirtualMFADeviceResponse CreateVirtualMFADevice(CreateVirtualMFADeviceRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return CreateVirtualMFADeviceWithOptions(request, runtime);
}
/// <param name="request">
/// CreateVirtualMFADeviceRequest
/// </param>
///
/// <returns>
/// CreateVirtualMFADeviceResponse
/// </returns>
public async Task<CreateVirtualMFADeviceResponse> CreateVirtualMFADeviceAsync(CreateVirtualMFADeviceRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return await CreateVirtualMFADeviceWithOptionsAsync(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Decodes the diagnostic information in the response that contains an access denied error. The error is caused by no RAM permissions.</para>
/// </summary>
///
/// <param name="request">
/// DecodeDiagnosticMessageRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// DecodeDiagnosticMessageResponse
/// </returns>
public DecodeDiagnosticMessageResponse DecodeDiagnosticMessageWithOptions(DecodeDiagnosticMessageRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.EncodedDiagnosticMessage))
{
query["EncodedDiagnosticMessage"] = request.EncodedDiagnosticMessage;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "DecodeDiagnosticMessage",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<DecodeDiagnosticMessageResponse>(CallApi(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Decodes the diagnostic information in the response that contains an access denied error. The error is caused by no RAM permissions.</para>
/// </summary>
///
/// <param name="request">
/// DecodeDiagnosticMessageRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// DecodeDiagnosticMessageResponse
/// </returns>
public async Task<DecodeDiagnosticMessageResponse> DecodeDiagnosticMessageWithOptionsAsync(DecodeDiagnosticMessageRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.EncodedDiagnosticMessage))
{
query["EncodedDiagnosticMessage"] = request.EncodedDiagnosticMessage;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "DecodeDiagnosticMessage",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<DecodeDiagnosticMessageResponse>(await CallApiAsync(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Decodes the diagnostic information in the response that contains an access denied error. The error is caused by no RAM permissions.</para>
/// </summary>
///
/// <param name="request">
/// DecodeDiagnosticMessageRequest
/// </param>
///
/// <returns>
/// DecodeDiagnosticMessageResponse
/// </returns>
public DecodeDiagnosticMessageResponse DecodeDiagnosticMessage(DecodeDiagnosticMessageRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return DecodeDiagnosticMessageWithOptions(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Decodes the diagnostic information in the response that contains an access denied error. The error is caused by no RAM permissions.</para>
/// </summary>
///
/// <param name="request">
/// DecodeDiagnosticMessageRequest
/// </param>
///
/// <returns>
/// DecodeDiagnosticMessageResponse
/// </returns>
public async Task<DecodeDiagnosticMessageResponse> DecodeDiagnosticMessageAsync(DecodeDiagnosticMessageRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return await DecodeDiagnosticMessageWithOptionsAsync(request, runtime);
}
/// <param name="request">
/// DeleteAccessKeyRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// DeleteAccessKeyResponse
/// </returns>
public DeleteAccessKeyResponse DeleteAccessKeyWithOptions(DeleteAccessKeyRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UserAccessKeyId))
{
query["UserAccessKeyId"] = request.UserAccessKeyId;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UserName))
{
query["UserName"] = request.UserName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "DeleteAccessKey",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<DeleteAccessKeyResponse>(CallApi(params_, req, runtime));
}
/// <param name="request">
/// DeleteAccessKeyRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// DeleteAccessKeyResponse
/// </returns>
public async Task<DeleteAccessKeyResponse> DeleteAccessKeyWithOptionsAsync(DeleteAccessKeyRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UserAccessKeyId))
{
query["UserAccessKeyId"] = request.UserAccessKeyId;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UserName))
{
query["UserName"] = request.UserName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "DeleteAccessKey",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<DeleteAccessKeyResponse>(await CallApiAsync(params_, req, runtime));
}
/// <param name="request">
/// DeleteAccessKeyRequest
/// </param>
///
/// <returns>
/// DeleteAccessKeyResponse
/// </returns>
public DeleteAccessKeyResponse DeleteAccessKey(DeleteAccessKeyRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return DeleteAccessKeyWithOptions(request, runtime);
}
/// <param name="request">
/// DeleteAccessKeyRequest
/// </param>
///
/// <returns>
/// DeleteAccessKeyResponse
/// </returns>
public async Task<DeleteAccessKeyResponse> DeleteAccessKeyAsync(DeleteAccessKeyRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return await DeleteAccessKeyWithOptionsAsync(request, runtime);
}
/// <term><b>Description:</b></term>
/// <description>
/// <para>Before you delete a RAM user group, make sure that no policies are attached to the group and no RAM users are included in the group.</para>
/// </description>
///
/// <param name="request">
/// DeleteGroupRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// DeleteGroupResponse
/// </returns>
public DeleteGroupResponse DeleteGroupWithOptions(DeleteGroupRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.GroupName))
{
query["GroupName"] = request.GroupName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "DeleteGroup",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<DeleteGroupResponse>(CallApi(params_, req, runtime));
}
/// <term><b>Description:</b></term>
/// <description>
/// <para>Before you delete a RAM user group, make sure that no policies are attached to the group and no RAM users are included in the group.</para>
/// </description>
///
/// <param name="request">
/// DeleteGroupRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// DeleteGroupResponse
/// </returns>
public async Task<DeleteGroupResponse> DeleteGroupWithOptionsAsync(DeleteGroupRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.GroupName))
{
query["GroupName"] = request.GroupName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "DeleteGroup",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<DeleteGroupResponse>(await CallApiAsync(params_, req, runtime));
}
/// <term><b>Description:</b></term>
/// <description>
/// <para>Before you delete a RAM user group, make sure that no policies are attached to the group and no RAM users are included in the group.</para>
/// </description>
///
/// <param name="request">
/// DeleteGroupRequest
/// </param>
///
/// <returns>
/// DeleteGroupResponse
/// </returns>
public DeleteGroupResponse DeleteGroup(DeleteGroupRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return DeleteGroupWithOptions(request, runtime);
}
/// <term><b>Description:</b></term>
/// <description>
/// <para>Before you delete a RAM user group, make sure that no policies are attached to the group and no RAM users are included in the group.</para>
/// </description>
///
/// <param name="request">
/// DeleteGroupRequest
/// </param>
///
/// <returns>
/// DeleteGroupResponse
/// </returns>
public async Task<DeleteGroupResponse> DeleteGroupAsync(DeleteGroupRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return await DeleteGroupWithOptionsAsync(request, runtime);
}
/// <param name="request">
/// DeleteLoginProfileRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// DeleteLoginProfileResponse
/// </returns>
public DeleteLoginProfileResponse DeleteLoginProfileWithOptions(DeleteLoginProfileRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UserName))
{
query["UserName"] = request.UserName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "DeleteLoginProfile",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<DeleteLoginProfileResponse>(CallApi(params_, req, runtime));
}
/// <param name="request">
/// DeleteLoginProfileRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// DeleteLoginProfileResponse
/// </returns>
public async Task<DeleteLoginProfileResponse> DeleteLoginProfileWithOptionsAsync(DeleteLoginProfileRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UserName))
{
query["UserName"] = request.UserName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "DeleteLoginProfile",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<DeleteLoginProfileResponse>(await CallApiAsync(params_, req, runtime));
}
/// <param name="request">
/// DeleteLoginProfileRequest
/// </param>
///
/// <returns>
/// DeleteLoginProfileResponse
/// </returns>
public DeleteLoginProfileResponse DeleteLoginProfile(DeleteLoginProfileRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return DeleteLoginProfileWithOptions(request, runtime);
}
/// <param name="request">
/// DeleteLoginProfileRequest
/// </param>
///
/// <returns>
/// DeleteLoginProfileResponse
/// </returns>
public async Task<DeleteLoginProfileResponse> DeleteLoginProfileAsync(DeleteLoginProfileRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return await DeleteLoginProfileWithOptionsAsync(request, runtime);
}
/// <param name="request">
/// DeletePolicyRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// DeletePolicyResponse
/// </returns>
public DeletePolicyResponse DeletePolicyWithOptions(DeletePolicyRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.CascadingDelete))
{
query["CascadingDelete"] = request.CascadingDelete;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PolicyName))
{
query["PolicyName"] = request.PolicyName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "DeletePolicy",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<DeletePolicyResponse>(CallApi(params_, req, runtime));
}
/// <param name="request">
/// DeletePolicyRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// DeletePolicyResponse
/// </returns>
public async Task<DeletePolicyResponse> DeletePolicyWithOptionsAsync(DeletePolicyRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.CascadingDelete))
{
query["CascadingDelete"] = request.CascadingDelete;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PolicyName))
{
query["PolicyName"] = request.PolicyName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "DeletePolicy",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<DeletePolicyResponse>(await CallApiAsync(params_, req, runtime));
}
/// <param name="request">
/// DeletePolicyRequest
/// </param>
///
/// <returns>
/// DeletePolicyResponse
/// </returns>
public DeletePolicyResponse DeletePolicy(DeletePolicyRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return DeletePolicyWithOptions(request, runtime);
}
/// <param name="request">
/// DeletePolicyRequest
/// </param>
///
/// <returns>
/// DeletePolicyResponse
/// </returns>
public async Task<DeletePolicyResponse> DeletePolicyAsync(DeletePolicyRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return await DeletePolicyWithOptionsAsync(request, runtime);
}
/// <param name="request">
/// DeletePolicyVersionRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// DeletePolicyVersionResponse
/// </returns>
public DeletePolicyVersionResponse DeletePolicyVersionWithOptions(DeletePolicyVersionRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PolicyName))
{
query["PolicyName"] = request.PolicyName;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.VersionId))
{
query["VersionId"] = request.VersionId;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "DeletePolicyVersion",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<DeletePolicyVersionResponse>(CallApi(params_, req, runtime));
}
/// <param name="request">
/// DeletePolicyVersionRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// DeletePolicyVersionResponse
/// </returns>
public async Task<DeletePolicyVersionResponse> DeletePolicyVersionWithOptionsAsync(DeletePolicyVersionRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PolicyName))
{
query["PolicyName"] = request.PolicyName;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.VersionId))
{
query["VersionId"] = request.VersionId;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "DeletePolicyVersion",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<DeletePolicyVersionResponse>(await CallApiAsync(params_, req, runtime));
}
/// <param name="request">
/// DeletePolicyVersionRequest
/// </param>
///
/// <returns>
/// DeletePolicyVersionResponse
/// </returns>
public DeletePolicyVersionResponse DeletePolicyVersion(DeletePolicyVersionRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return DeletePolicyVersionWithOptions(request, runtime);
}
/// <param name="request">
/// DeletePolicyVersionRequest
/// </param>
///
/// <returns>
/// DeletePolicyVersionResponse
/// </returns>
public async Task<DeletePolicyVersionResponse> DeletePolicyVersionAsync(DeletePolicyVersionRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return await DeletePolicyVersionWithOptionsAsync(request, runtime);
}
/// <param name="request">
/// DeleteRoleRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// DeleteRoleResponse
/// </returns>
public DeleteRoleResponse DeleteRoleWithOptions(DeleteRoleRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RoleName))
{
query["RoleName"] = request.RoleName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "DeleteRole",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<DeleteRoleResponse>(CallApi(params_, req, runtime));
}
/// <param name="request">
/// DeleteRoleRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// DeleteRoleResponse
/// </returns>
public async Task<DeleteRoleResponse> DeleteRoleWithOptionsAsync(DeleteRoleRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RoleName))
{
query["RoleName"] = request.RoleName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "DeleteRole",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<DeleteRoleResponse>(await CallApiAsync(params_, req, runtime));
}
/// <param name="request">
/// DeleteRoleRequest
/// </param>
///
/// <returns>
/// DeleteRoleResponse
/// </returns>
public DeleteRoleResponse DeleteRole(DeleteRoleRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return DeleteRoleWithOptions(request, runtime);
}
/// <param name="request">
/// DeleteRoleRequest
/// </param>
///
/// <returns>
/// DeleteRoleResponse
/// </returns>
public async Task<DeleteRoleResponse> DeleteRoleAsync(DeleteRoleRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return await DeleteRoleWithOptionsAsync(request, runtime);
}
/// <term><b>Description:</b></term>
/// <description>
/// <para>Before you delete a RAM user, make sure that no policies are attached to the RAM user and that the RAM user does not belong to any groups.</para>
/// </description>
///
/// <param name="request">
/// DeleteUserRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// DeleteUserResponse
/// </returns>
public DeleteUserResponse DeleteUserWithOptions(DeleteUserRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UserName))
{
query["UserName"] = request.UserName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "DeleteUser",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<DeleteUserResponse>(CallApi(params_, req, runtime));
}
/// <term><b>Description:</b></term>
/// <description>
/// <para>Before you delete a RAM user, make sure that no policies are attached to the RAM user and that the RAM user does not belong to any groups.</para>
/// </description>
///
/// <param name="request">
/// DeleteUserRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// DeleteUserResponse
/// </returns>
public async Task<DeleteUserResponse> DeleteUserWithOptionsAsync(DeleteUserRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UserName))
{
query["UserName"] = request.UserName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "DeleteUser",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<DeleteUserResponse>(await CallApiAsync(params_, req, runtime));
}
/// <term><b>Description:</b></term>
/// <description>
/// <para>Before you delete a RAM user, make sure that no policies are attached to the RAM user and that the RAM user does not belong to any groups.</para>
/// </description>
///
/// <param name="request">
/// DeleteUserRequest
/// </param>
///
/// <returns>
/// DeleteUserResponse
/// </returns>
public DeleteUserResponse DeleteUser(DeleteUserRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return DeleteUserWithOptions(request, runtime);
}
/// <term><b>Description:</b></term>
/// <description>
/// <para>Before you delete a RAM user, make sure that no policies are attached to the RAM user and that the RAM user does not belong to any groups.</para>
/// </description>
///
/// <param name="request">
/// DeleteUserRequest
/// </param>
///
/// <returns>
/// DeleteUserResponse
/// </returns>
public async Task<DeleteUserResponse> DeleteUserAsync(DeleteUserRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return await DeleteUserWithOptionsAsync(request, runtime);
}
/// <param name="request">
/// DeleteVirtualMFADeviceRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// DeleteVirtualMFADeviceResponse
/// </returns>
public DeleteVirtualMFADeviceResponse DeleteVirtualMFADeviceWithOptions(DeleteVirtualMFADeviceRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.SerialNumber))
{
query["SerialNumber"] = request.SerialNumber;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "DeleteVirtualMFADevice",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<DeleteVirtualMFADeviceResponse>(CallApi(params_, req, runtime));
}
/// <param name="request">
/// DeleteVirtualMFADeviceRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// DeleteVirtualMFADeviceResponse
/// </returns>
public async Task<DeleteVirtualMFADeviceResponse> DeleteVirtualMFADeviceWithOptionsAsync(DeleteVirtualMFADeviceRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.SerialNumber))
{
query["SerialNumber"] = request.SerialNumber;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "DeleteVirtualMFADevice",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<DeleteVirtualMFADeviceResponse>(await CallApiAsync(params_, req, runtime));
}
/// <param name="request">
/// DeleteVirtualMFADeviceRequest
/// </param>
///
/// <returns>
/// DeleteVirtualMFADeviceResponse
/// </returns>
public DeleteVirtualMFADeviceResponse DeleteVirtualMFADevice(DeleteVirtualMFADeviceRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return DeleteVirtualMFADeviceWithOptions(request, runtime);
}
/// <param name="request">
/// DeleteVirtualMFADeviceRequest
/// </param>
///
/// <returns>
/// DeleteVirtualMFADeviceResponse
/// </returns>
public async Task<DeleteVirtualMFADeviceResponse> DeleteVirtualMFADeviceAsync(DeleteVirtualMFADeviceRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return await DeleteVirtualMFADeviceWithOptionsAsync(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Detaches a policy from a RAM user group.</para>
/// </summary>
///
/// <param name="request">
/// DetachPolicyFromGroupRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// DetachPolicyFromGroupResponse
/// </returns>
public DetachPolicyFromGroupResponse DetachPolicyFromGroupWithOptions(DetachPolicyFromGroupRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.GroupName))
{
query["GroupName"] = request.GroupName;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PolicyName))
{
query["PolicyName"] = request.PolicyName;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PolicyType))
{
query["PolicyType"] = request.PolicyType;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "DetachPolicyFromGroup",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<DetachPolicyFromGroupResponse>(CallApi(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Detaches a policy from a RAM user group.</para>
/// </summary>
///
/// <param name="request">
/// DetachPolicyFromGroupRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// DetachPolicyFromGroupResponse
/// </returns>
public async Task<DetachPolicyFromGroupResponse> DetachPolicyFromGroupWithOptionsAsync(DetachPolicyFromGroupRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.GroupName))
{
query["GroupName"] = request.GroupName;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PolicyName))
{
query["PolicyName"] = request.PolicyName;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PolicyType))
{
query["PolicyType"] = request.PolicyType;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "DetachPolicyFromGroup",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<DetachPolicyFromGroupResponse>(await CallApiAsync(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Detaches a policy from a RAM user group.</para>
/// </summary>
///
/// <param name="request">
/// DetachPolicyFromGroupRequest
/// </param>
///
/// <returns>
/// DetachPolicyFromGroupResponse
/// </returns>
public DetachPolicyFromGroupResponse DetachPolicyFromGroup(DetachPolicyFromGroupRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return DetachPolicyFromGroupWithOptions(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Detaches a policy from a RAM user group.</para>
/// </summary>
///
/// <param name="request">
/// DetachPolicyFromGroupRequest
/// </param>
///
/// <returns>
/// DetachPolicyFromGroupResponse
/// </returns>
public async Task<DetachPolicyFromGroupResponse> DetachPolicyFromGroupAsync(DetachPolicyFromGroupRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return await DetachPolicyFromGroupWithOptionsAsync(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Detaches a policy from a RAM role.</para>
/// </summary>
///
/// <param name="request">
/// DetachPolicyFromRoleRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// DetachPolicyFromRoleResponse
/// </returns>
public DetachPolicyFromRoleResponse DetachPolicyFromRoleWithOptions(DetachPolicyFromRoleRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PolicyName))
{
query["PolicyName"] = request.PolicyName;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PolicyType))
{
query["PolicyType"] = request.PolicyType;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RoleName))
{
query["RoleName"] = request.RoleName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "DetachPolicyFromRole",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<DetachPolicyFromRoleResponse>(CallApi(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Detaches a policy from a RAM role.</para>
/// </summary>
///
/// <param name="request">
/// DetachPolicyFromRoleRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// DetachPolicyFromRoleResponse
/// </returns>
public async Task<DetachPolicyFromRoleResponse> DetachPolicyFromRoleWithOptionsAsync(DetachPolicyFromRoleRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PolicyName))
{
query["PolicyName"] = request.PolicyName;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PolicyType))
{
query["PolicyType"] = request.PolicyType;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RoleName))
{
query["RoleName"] = request.RoleName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "DetachPolicyFromRole",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<DetachPolicyFromRoleResponse>(await CallApiAsync(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Detaches a policy from a RAM role.</para>
/// </summary>
///
/// <param name="request">
/// DetachPolicyFromRoleRequest
/// </param>
///
/// <returns>
/// DetachPolicyFromRoleResponse
/// </returns>
public DetachPolicyFromRoleResponse DetachPolicyFromRole(DetachPolicyFromRoleRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return DetachPolicyFromRoleWithOptions(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Detaches a policy from a RAM role.</para>
/// </summary>
///
/// <param name="request">
/// DetachPolicyFromRoleRequest
/// </param>
///
/// <returns>
/// DetachPolicyFromRoleResponse
/// </returns>
public async Task<DetachPolicyFromRoleResponse> DetachPolicyFromRoleAsync(DetachPolicyFromRoleRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return await DetachPolicyFromRoleWithOptionsAsync(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Detaches a policy from a RAM user.</para>
/// </summary>
///
/// <param name="request">
/// DetachPolicyFromUserRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// DetachPolicyFromUserResponse
/// </returns>
public DetachPolicyFromUserResponse DetachPolicyFromUserWithOptions(DetachPolicyFromUserRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PolicyName))
{
query["PolicyName"] = request.PolicyName;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PolicyType))
{
query["PolicyType"] = request.PolicyType;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UserName))
{
query["UserName"] = request.UserName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "DetachPolicyFromUser",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<DetachPolicyFromUserResponse>(CallApi(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Detaches a policy from a RAM user.</para>
/// </summary>
///
/// <param name="request">
/// DetachPolicyFromUserRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// DetachPolicyFromUserResponse
/// </returns>
public async Task<DetachPolicyFromUserResponse> DetachPolicyFromUserWithOptionsAsync(DetachPolicyFromUserRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PolicyName))
{
query["PolicyName"] = request.PolicyName;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PolicyType))
{
query["PolicyType"] = request.PolicyType;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UserName))
{
query["UserName"] = request.UserName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "DetachPolicyFromUser",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<DetachPolicyFromUserResponse>(await CallApiAsync(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Detaches a policy from a RAM user.</para>
/// </summary>
///
/// <param name="request">
/// DetachPolicyFromUserRequest
/// </param>
///
/// <returns>
/// DetachPolicyFromUserResponse
/// </returns>
public DetachPolicyFromUserResponse DetachPolicyFromUser(DetachPolicyFromUserRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return DetachPolicyFromUserWithOptions(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Detaches a policy from a RAM user.</para>
/// </summary>
///
/// <param name="request">
/// DetachPolicyFromUserRequest
/// </param>
///
/// <returns>
/// DetachPolicyFromUserResponse
/// </returns>
public async Task<DetachPolicyFromUserResponse> DetachPolicyFromUserAsync(DetachPolicyFromUserRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return await DetachPolicyFromUserWithOptionsAsync(request, runtime);
}
/// <param name="request">
/// GetAccessKeyLastUsedRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// GetAccessKeyLastUsedResponse
/// </returns>
public GetAccessKeyLastUsedResponse GetAccessKeyLastUsedWithOptions(GetAccessKeyLastUsedRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UserAccessKeyId))
{
query["UserAccessKeyId"] = request.UserAccessKeyId;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UserName))
{
query["UserName"] = request.UserName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "GetAccessKeyLastUsed",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<GetAccessKeyLastUsedResponse>(CallApi(params_, req, runtime));
}
/// <param name="request">
/// GetAccessKeyLastUsedRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// GetAccessKeyLastUsedResponse
/// </returns>
public async Task<GetAccessKeyLastUsedResponse> GetAccessKeyLastUsedWithOptionsAsync(GetAccessKeyLastUsedRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UserAccessKeyId))
{
query["UserAccessKeyId"] = request.UserAccessKeyId;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UserName))
{
query["UserName"] = request.UserName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "GetAccessKeyLastUsed",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<GetAccessKeyLastUsedResponse>(await CallApiAsync(params_, req, runtime));
}
/// <param name="request">
/// GetAccessKeyLastUsedRequest
/// </param>
///
/// <returns>
/// GetAccessKeyLastUsedResponse
/// </returns>
public GetAccessKeyLastUsedResponse GetAccessKeyLastUsed(GetAccessKeyLastUsedRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return GetAccessKeyLastUsedWithOptions(request, runtime);
}
/// <param name="request">
/// GetAccessKeyLastUsedRequest
/// </param>
///
/// <returns>
/// GetAccessKeyLastUsedResponse
/// </returns>
public async Task<GetAccessKeyLastUsedResponse> GetAccessKeyLastUsedAsync(GetAccessKeyLastUsedRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return await GetAccessKeyLastUsedWithOptionsAsync(request, runtime);
}
/// <param name="request">
/// GetAccountAliasRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// GetAccountAliasResponse
/// </returns>
public GetAccountAliasResponse GetAccountAliasWithOptions(AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest();
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "GetAccountAlias",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<GetAccountAliasResponse>(CallApi(params_, req, runtime));
}
/// <param name="request">
/// GetAccountAliasRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// GetAccountAliasResponse
/// </returns>
public async Task<GetAccountAliasResponse> GetAccountAliasWithOptionsAsync(AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest();
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "GetAccountAlias",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<GetAccountAliasResponse>(await CallApiAsync(params_, req, runtime));
}
/// <returns>
/// GetAccountAliasResponse
/// </returns>
public GetAccountAliasResponse GetAccountAlias()
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return GetAccountAliasWithOptions(runtime);
}
/// <returns>
/// GetAccountAliasResponse
/// </returns>
public async Task<GetAccountAliasResponse> GetAccountAliasAsync()
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return await GetAccountAliasWithOptionsAsync(runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries the information of a RAM user group.</para>
/// </summary>
///
/// <param name="request">
/// GetGroupRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// GetGroupResponse
/// </returns>
public GetGroupResponse GetGroupWithOptions(GetGroupRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.GroupName))
{
query["GroupName"] = request.GroupName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "GetGroup",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<GetGroupResponse>(CallApi(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries the information of a RAM user group.</para>
/// </summary>
///
/// <param name="request">
/// GetGroupRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// GetGroupResponse
/// </returns>
public async Task<GetGroupResponse> GetGroupWithOptionsAsync(GetGroupRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.GroupName))
{
query["GroupName"] = request.GroupName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "GetGroup",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<GetGroupResponse>(await CallApiAsync(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries the information of a RAM user group.</para>
/// </summary>
///
/// <param name="request">
/// GetGroupRequest
/// </param>
///
/// <returns>
/// GetGroupResponse
/// </returns>
public GetGroupResponse GetGroup(GetGroupRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return GetGroupWithOptions(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries the information of a RAM user group.</para>
/// </summary>
///
/// <param name="request">
/// GetGroupRequest
/// </param>
///
/// <returns>
/// GetGroupResponse
/// </returns>
public async Task<GetGroupResponse> GetGroupAsync(GetGroupRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return await GetGroupWithOptionsAsync(request, runtime);
}
/// <param name="request">
/// GetLoginProfileRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// GetLoginProfileResponse
/// </returns>
public GetLoginProfileResponse GetLoginProfileWithOptions(GetLoginProfileRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UserName))
{
query["UserName"] = request.UserName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "GetLoginProfile",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<GetLoginProfileResponse>(CallApi(params_, req, runtime));
}
/// <param name="request">
/// GetLoginProfileRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// GetLoginProfileResponse
/// </returns>
public async Task<GetLoginProfileResponse> GetLoginProfileWithOptionsAsync(GetLoginProfileRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UserName))
{
query["UserName"] = request.UserName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "GetLoginProfile",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<GetLoginProfileResponse>(await CallApiAsync(params_, req, runtime));
}
/// <param name="request">
/// GetLoginProfileRequest
/// </param>
///
/// <returns>
/// GetLoginProfileResponse
/// </returns>
public GetLoginProfileResponse GetLoginProfile(GetLoginProfileRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return GetLoginProfileWithOptions(request, runtime);
}
/// <param name="request">
/// GetLoginProfileRequest
/// </param>
///
/// <returns>
/// GetLoginProfileResponse
/// </returns>
public async Task<GetLoginProfileResponse> GetLoginProfileAsync(GetLoginProfileRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return await GetLoginProfileWithOptionsAsync(request, runtime);
}
/// <param name="request">
/// GetPasswordPolicyRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// GetPasswordPolicyResponse
/// </returns>
public GetPasswordPolicyResponse GetPasswordPolicyWithOptions(AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest();
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "GetPasswordPolicy",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<GetPasswordPolicyResponse>(CallApi(params_, req, runtime));
}
/// <param name="request">
/// GetPasswordPolicyRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// GetPasswordPolicyResponse
/// </returns>
public async Task<GetPasswordPolicyResponse> GetPasswordPolicyWithOptionsAsync(AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest();
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "GetPasswordPolicy",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<GetPasswordPolicyResponse>(await CallApiAsync(params_, req, runtime));
}
/// <returns>
/// GetPasswordPolicyResponse
/// </returns>
public GetPasswordPolicyResponse GetPasswordPolicy()
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return GetPasswordPolicyWithOptions(runtime);
}
/// <returns>
/// GetPasswordPolicyResponse
/// </returns>
public async Task<GetPasswordPolicyResponse> GetPasswordPolicyAsync()
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return await GetPasswordPolicyWithOptionsAsync(runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries the information of a policy.</para>
/// </summary>
///
/// <param name="request">
/// GetPolicyRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// GetPolicyResponse
/// </returns>
public GetPolicyResponse GetPolicyWithOptions(GetPolicyRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PolicyName))
{
query["PolicyName"] = request.PolicyName;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PolicyType))
{
query["PolicyType"] = request.PolicyType;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "GetPolicy",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<GetPolicyResponse>(CallApi(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries the information of a policy.</para>
/// </summary>
///
/// <param name="request">
/// GetPolicyRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// GetPolicyResponse
/// </returns>
public async Task<GetPolicyResponse> GetPolicyWithOptionsAsync(GetPolicyRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PolicyName))
{
query["PolicyName"] = request.PolicyName;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PolicyType))
{
query["PolicyType"] = request.PolicyType;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "GetPolicy",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<GetPolicyResponse>(await CallApiAsync(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries the information of a policy.</para>
/// </summary>
///
/// <param name="request">
/// GetPolicyRequest
/// </param>
///
/// <returns>
/// GetPolicyResponse
/// </returns>
public GetPolicyResponse GetPolicy(GetPolicyRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return GetPolicyWithOptions(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries the information of a policy.</para>
/// </summary>
///
/// <param name="request">
/// GetPolicyRequest
/// </param>
///
/// <returns>
/// GetPolicyResponse
/// </returns>
public async Task<GetPolicyResponse> GetPolicyAsync(GetPolicyRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return await GetPolicyWithOptionsAsync(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries the information of a policy version.</para>
/// </summary>
///
/// <param name="request">
/// GetPolicyVersionRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// GetPolicyVersionResponse
/// </returns>
public GetPolicyVersionResponse GetPolicyVersionWithOptions(GetPolicyVersionRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PolicyName))
{
query["PolicyName"] = request.PolicyName;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PolicyType))
{
query["PolicyType"] = request.PolicyType;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.VersionId))
{
query["VersionId"] = request.VersionId;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "GetPolicyVersion",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<GetPolicyVersionResponse>(CallApi(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries the information of a policy version.</para>
/// </summary>
///
/// <param name="request">
/// GetPolicyVersionRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// GetPolicyVersionResponse
/// </returns>
public async Task<GetPolicyVersionResponse> GetPolicyVersionWithOptionsAsync(GetPolicyVersionRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PolicyName))
{
query["PolicyName"] = request.PolicyName;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PolicyType))
{
query["PolicyType"] = request.PolicyType;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.VersionId))
{
query["VersionId"] = request.VersionId;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "GetPolicyVersion",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<GetPolicyVersionResponse>(await CallApiAsync(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries the information of a policy version.</para>
/// </summary>
///
/// <param name="request">
/// GetPolicyVersionRequest
/// </param>
///
/// <returns>
/// GetPolicyVersionResponse
/// </returns>
public GetPolicyVersionResponse GetPolicyVersion(GetPolicyVersionRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return GetPolicyVersionWithOptions(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries the information of a policy version.</para>
/// </summary>
///
/// <param name="request">
/// GetPolicyVersionRequest
/// </param>
///
/// <returns>
/// GetPolicyVersionResponse
/// </returns>
public async Task<GetPolicyVersionResponse> GetPolicyVersionAsync(GetPolicyVersionRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return await GetPolicyVersionWithOptionsAsync(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries information of a RAM role.</para>
/// </summary>
///
/// <param name="request">
/// GetRoleRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// GetRoleResponse
/// </returns>
public GetRoleResponse GetRoleWithOptions(GetRoleRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RoleName))
{
query["RoleName"] = request.RoleName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "GetRole",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<GetRoleResponse>(CallApi(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries information of a RAM role.</para>
/// </summary>
///
/// <param name="request">
/// GetRoleRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// GetRoleResponse
/// </returns>
public async Task<GetRoleResponse> GetRoleWithOptionsAsync(GetRoleRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RoleName))
{
query["RoleName"] = request.RoleName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "GetRole",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<GetRoleResponse>(await CallApiAsync(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries information of a RAM role.</para>
/// </summary>
///
/// <param name="request">
/// GetRoleRequest
/// </param>
///
/// <returns>
/// GetRoleResponse
/// </returns>
public GetRoleResponse GetRole(GetRoleRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return GetRoleWithOptions(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries information of a RAM role.</para>
/// </summary>
///
/// <param name="request">
/// GetRoleRequest
/// </param>
///
/// <returns>
/// GetRoleResponse
/// </returns>
public async Task<GetRoleResponse> GetRoleAsync(GetRoleRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return await GetRoleWithOptionsAsync(request, runtime);
}
/// <param name="request">
/// GetSecurityPreferenceRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// GetSecurityPreferenceResponse
/// </returns>
public GetSecurityPreferenceResponse GetSecurityPreferenceWithOptions(AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest();
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "GetSecurityPreference",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<GetSecurityPreferenceResponse>(CallApi(params_, req, runtime));
}
/// <param name="request">
/// GetSecurityPreferenceRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// GetSecurityPreferenceResponse
/// </returns>
public async Task<GetSecurityPreferenceResponse> GetSecurityPreferenceWithOptionsAsync(AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest();
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "GetSecurityPreference",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<GetSecurityPreferenceResponse>(await CallApiAsync(params_, req, runtime));
}
/// <returns>
/// GetSecurityPreferenceResponse
/// </returns>
public GetSecurityPreferenceResponse GetSecurityPreference()
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return GetSecurityPreferenceWithOptions(runtime);
}
/// <returns>
/// GetSecurityPreferenceResponse
/// </returns>
public async Task<GetSecurityPreferenceResponse> GetSecurityPreferenceAsync()
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return await GetSecurityPreferenceWithOptionsAsync(runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries the information about a RAM user.</para>
/// </summary>
///
/// <term><b>Description:</b></term>
/// <description>
/// <para>This topic provides an example on how to query the information about the RAM user <c>alice</c>.</para>
/// </description>
///
/// <param name="request">
/// GetUserRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// GetUserResponse
/// </returns>
public GetUserResponse GetUserWithOptions(GetUserRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UserName))
{
query["UserName"] = request.UserName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "GetUser",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<GetUserResponse>(CallApi(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries the information about a RAM user.</para>
/// </summary>
///
/// <term><b>Description:</b></term>
/// <description>
/// <para>This topic provides an example on how to query the information about the RAM user <c>alice</c>.</para>
/// </description>
///
/// <param name="request">
/// GetUserRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// GetUserResponse
/// </returns>
public async Task<GetUserResponse> GetUserWithOptionsAsync(GetUserRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UserName))
{
query["UserName"] = request.UserName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "GetUser",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<GetUserResponse>(await CallApiAsync(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries the information about a RAM user.</para>
/// </summary>
///
/// <term><b>Description:</b></term>
/// <description>
/// <para>This topic provides an example on how to query the information about the RAM user <c>alice</c>.</para>
/// </description>
///
/// <param name="request">
/// GetUserRequest
/// </param>
///
/// <returns>
/// GetUserResponse
/// </returns>
public GetUserResponse GetUser(GetUserRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return GetUserWithOptions(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries the information about a RAM user.</para>
/// </summary>
///
/// <term><b>Description:</b></term>
/// <description>
/// <para>This topic provides an example on how to query the information about the RAM user <c>alice</c>.</para>
/// </description>
///
/// <param name="request">
/// GetUserRequest
/// </param>
///
/// <returns>
/// GetUserResponse
/// </returns>
public async Task<GetUserResponse> GetUserAsync(GetUserRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return await GetUserWithOptionsAsync(request, runtime);
}
/// <param name="request">
/// GetUserMFAInfoRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// GetUserMFAInfoResponse
/// </returns>
public GetUserMFAInfoResponse GetUserMFAInfoWithOptions(GetUserMFAInfoRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UserName))
{
query["UserName"] = request.UserName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "GetUserMFAInfo",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<GetUserMFAInfoResponse>(CallApi(params_, req, runtime));
}
/// <param name="request">
/// GetUserMFAInfoRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// GetUserMFAInfoResponse
/// </returns>
public async Task<GetUserMFAInfoResponse> GetUserMFAInfoWithOptionsAsync(GetUserMFAInfoRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UserName))
{
query["UserName"] = request.UserName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "GetUserMFAInfo",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<GetUserMFAInfoResponse>(await CallApiAsync(params_, req, runtime));
}
/// <param name="request">
/// GetUserMFAInfoRequest
/// </param>
///
/// <returns>
/// GetUserMFAInfoResponse
/// </returns>
public GetUserMFAInfoResponse GetUserMFAInfo(GetUserMFAInfoRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return GetUserMFAInfoWithOptions(request, runtime);
}
/// <param name="request">
/// GetUserMFAInfoRequest
/// </param>
///
/// <returns>
/// GetUserMFAInfoResponse
/// </returns>
public async Task<GetUserMFAInfoResponse> GetUserMFAInfoAsync(GetUserMFAInfoRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return await GetUserMFAInfoWithOptionsAsync(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries the list of all AccessKey pairs that belong to a RAM user.</para>
/// </summary>
///
/// <param name="request">
/// ListAccessKeysRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// ListAccessKeysResponse
/// </returns>
public ListAccessKeysResponse ListAccessKeysWithOptions(ListAccessKeysRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UserName))
{
query["UserName"] = request.UserName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "ListAccessKeys",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<ListAccessKeysResponse>(CallApi(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries the list of all AccessKey pairs that belong to a RAM user.</para>
/// </summary>
///
/// <param name="request">
/// ListAccessKeysRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// ListAccessKeysResponse
/// </returns>
public async Task<ListAccessKeysResponse> ListAccessKeysWithOptionsAsync(ListAccessKeysRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UserName))
{
query["UserName"] = request.UserName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "ListAccessKeys",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<ListAccessKeysResponse>(await CallApiAsync(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries the list of all AccessKey pairs that belong to a RAM user.</para>
/// </summary>
///
/// <param name="request">
/// ListAccessKeysRequest
/// </param>
///
/// <returns>
/// ListAccessKeysResponse
/// </returns>
public ListAccessKeysResponse ListAccessKeys(ListAccessKeysRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return ListAccessKeysWithOptions(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries the list of all AccessKey pairs that belong to a RAM user.</para>
/// </summary>
///
/// <param name="request">
/// ListAccessKeysRequest
/// </param>
///
/// <returns>
/// ListAccessKeysResponse
/// </returns>
public async Task<ListAccessKeysResponse> ListAccessKeysAsync(ListAccessKeysRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return await ListAccessKeysWithOptionsAsync(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries the entities to which a policy is attached.</para>
/// </summary>
///
/// <param name="request">
/// ListEntitiesForPolicyRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// ListEntitiesForPolicyResponse
/// </returns>
public ListEntitiesForPolicyResponse ListEntitiesForPolicyWithOptions(ListEntitiesForPolicyRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PolicyName))
{
query["PolicyName"] = request.PolicyName;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PolicyType))
{
query["PolicyType"] = request.PolicyType;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "ListEntitiesForPolicy",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<ListEntitiesForPolicyResponse>(CallApi(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries the entities to which a policy is attached.</para>
/// </summary>
///
/// <param name="request">
/// ListEntitiesForPolicyRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// ListEntitiesForPolicyResponse
/// </returns>
public async Task<ListEntitiesForPolicyResponse> ListEntitiesForPolicyWithOptionsAsync(ListEntitiesForPolicyRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PolicyName))
{
query["PolicyName"] = request.PolicyName;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PolicyType))
{
query["PolicyType"] = request.PolicyType;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "ListEntitiesForPolicy",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<ListEntitiesForPolicyResponse>(await CallApiAsync(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries the entities to which a policy is attached.</para>
/// </summary>
///
/// <param name="request">
/// ListEntitiesForPolicyRequest
/// </param>
///
/// <returns>
/// ListEntitiesForPolicyResponse
/// </returns>
public ListEntitiesForPolicyResponse ListEntitiesForPolicy(ListEntitiesForPolicyRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return ListEntitiesForPolicyWithOptions(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries the entities to which a policy is attached.</para>
/// </summary>
///
/// <param name="request">
/// ListEntitiesForPolicyRequest
/// </param>
///
/// <returns>
/// ListEntitiesForPolicyResponse
/// </returns>
public async Task<ListEntitiesForPolicyResponse> ListEntitiesForPolicyAsync(ListEntitiesForPolicyRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return await ListEntitiesForPolicyWithOptionsAsync(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries RAM user groups.</para>
/// </summary>
///
/// <param name="request">
/// ListGroupsRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// ListGroupsResponse
/// </returns>
public ListGroupsResponse ListGroupsWithOptions(ListGroupsRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Marker))
{
query["Marker"] = request.Marker;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.MaxItems))
{
query["MaxItems"] = request.MaxItems;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "ListGroups",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<ListGroupsResponse>(CallApi(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries RAM user groups.</para>
/// </summary>
///
/// <param name="request">
/// ListGroupsRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// ListGroupsResponse
/// </returns>
public async Task<ListGroupsResponse> ListGroupsWithOptionsAsync(ListGroupsRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Marker))
{
query["Marker"] = request.Marker;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.MaxItems))
{
query["MaxItems"] = request.MaxItems;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "ListGroups",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<ListGroupsResponse>(await CallApiAsync(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries RAM user groups.</para>
/// </summary>
///
/// <param name="request">
/// ListGroupsRequest
/// </param>
///
/// <returns>
/// ListGroupsResponse
/// </returns>
public ListGroupsResponse ListGroups(ListGroupsRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return ListGroupsWithOptions(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries RAM user groups.</para>
/// </summary>
///
/// <param name="request">
/// ListGroupsRequest
/// </param>
///
/// <returns>
/// ListGroupsResponse
/// </returns>
public async Task<ListGroupsResponse> ListGroupsAsync(ListGroupsRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return await ListGroupsWithOptionsAsync(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries the Resource Access Management (RAM) user groups to which a RAM user belongs.</para>
/// </summary>
///
/// <term><b>Description:</b></term>
/// <description>
/// <para>This topic provides an example on how to query the RAM user groups to which the RAM user <c>Alice</c> belongs. The response shows that <c>Alice</c> belongs to the RAM user group named <c>Dev-Team</c>.</para>
/// </description>
///
/// <param name="request">
/// ListGroupsForUserRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// ListGroupsForUserResponse
/// </returns>
public ListGroupsForUserResponse ListGroupsForUserWithOptions(ListGroupsForUserRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UserName))
{
query["UserName"] = request.UserName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "ListGroupsForUser",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<ListGroupsForUserResponse>(CallApi(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries the Resource Access Management (RAM) user groups to which a RAM user belongs.</para>
/// </summary>
///
/// <term><b>Description:</b></term>
/// <description>
/// <para>This topic provides an example on how to query the RAM user groups to which the RAM user <c>Alice</c> belongs. The response shows that <c>Alice</c> belongs to the RAM user group named <c>Dev-Team</c>.</para>
/// </description>
///
/// <param name="request">
/// ListGroupsForUserRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// ListGroupsForUserResponse
/// </returns>
public async Task<ListGroupsForUserResponse> ListGroupsForUserWithOptionsAsync(ListGroupsForUserRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UserName))
{
query["UserName"] = request.UserName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "ListGroupsForUser",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<ListGroupsForUserResponse>(await CallApiAsync(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries the Resource Access Management (RAM) user groups to which a RAM user belongs.</para>
/// </summary>
///
/// <term><b>Description:</b></term>
/// <description>
/// <para>This topic provides an example on how to query the RAM user groups to which the RAM user <c>Alice</c> belongs. The response shows that <c>Alice</c> belongs to the RAM user group named <c>Dev-Team</c>.</para>
/// </description>
///
/// <param name="request">
/// ListGroupsForUserRequest
/// </param>
///
/// <returns>
/// ListGroupsForUserResponse
/// </returns>
public ListGroupsForUserResponse ListGroupsForUser(ListGroupsForUserRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return ListGroupsForUserWithOptions(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries the Resource Access Management (RAM) user groups to which a RAM user belongs.</para>
/// </summary>
///
/// <term><b>Description:</b></term>
/// <description>
/// <para>This topic provides an example on how to query the RAM user groups to which the RAM user <c>Alice</c> belongs. The response shows that <c>Alice</c> belongs to the RAM user group named <c>Dev-Team</c>.</para>
/// </description>
///
/// <param name="request">
/// ListGroupsForUserRequest
/// </param>
///
/// <returns>
/// ListGroupsForUserResponse
/// </returns>
public async Task<ListGroupsForUserResponse> ListGroupsForUserAsync(ListGroupsForUserRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return await ListGroupsForUserWithOptionsAsync(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries a list of policies.</para>
/// </summary>
///
/// <param name="request">
/// ListPoliciesRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// ListPoliciesResponse
/// </returns>
public ListPoliciesResponse ListPoliciesWithOptions(ListPoliciesRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Marker))
{
query["Marker"] = request.Marker;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.MaxItems))
{
query["MaxItems"] = request.MaxItems;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PolicyType))
{
query["PolicyType"] = request.PolicyType;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "ListPolicies",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<ListPoliciesResponse>(CallApi(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries a list of policies.</para>
/// </summary>
///
/// <param name="request">
/// ListPoliciesRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// ListPoliciesResponse
/// </returns>
public async Task<ListPoliciesResponse> ListPoliciesWithOptionsAsync(ListPoliciesRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Marker))
{
query["Marker"] = request.Marker;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.MaxItems))
{
query["MaxItems"] = request.MaxItems;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PolicyType))
{
query["PolicyType"] = request.PolicyType;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "ListPolicies",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<ListPoliciesResponse>(await CallApiAsync(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries a list of policies.</para>
/// </summary>
///
/// <param name="request">
/// ListPoliciesRequest
/// </param>
///
/// <returns>
/// ListPoliciesResponse
/// </returns>
public ListPoliciesResponse ListPolicies(ListPoliciesRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return ListPoliciesWithOptions(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries a list of policies.</para>
/// </summary>
///
/// <param name="request">
/// ListPoliciesRequest
/// </param>
///
/// <returns>
/// ListPoliciesResponse
/// </returns>
public async Task<ListPoliciesResponse> ListPoliciesAsync(ListPoliciesRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return await ListPoliciesWithOptionsAsync(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries the policies that are attached to a RAM user group.</para>
/// </summary>
///
/// <param name="request">
/// ListPoliciesForGroupRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// ListPoliciesForGroupResponse
/// </returns>
public ListPoliciesForGroupResponse ListPoliciesForGroupWithOptions(ListPoliciesForGroupRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.GroupName))
{
query["GroupName"] = request.GroupName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "ListPoliciesForGroup",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<ListPoliciesForGroupResponse>(CallApi(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries the policies that are attached to a RAM user group.</para>
/// </summary>
///
/// <param name="request">
/// ListPoliciesForGroupRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// ListPoliciesForGroupResponse
/// </returns>
public async Task<ListPoliciesForGroupResponse> ListPoliciesForGroupWithOptionsAsync(ListPoliciesForGroupRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.GroupName))
{
query["GroupName"] = request.GroupName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "ListPoliciesForGroup",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<ListPoliciesForGroupResponse>(await CallApiAsync(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries the policies that are attached to a RAM user group.</para>
/// </summary>
///
/// <param name="request">
/// ListPoliciesForGroupRequest
/// </param>
///
/// <returns>
/// ListPoliciesForGroupResponse
/// </returns>
public ListPoliciesForGroupResponse ListPoliciesForGroup(ListPoliciesForGroupRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return ListPoliciesForGroupWithOptions(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries the policies that are attached to a RAM user group.</para>
/// </summary>
///
/// <param name="request">
/// ListPoliciesForGroupRequest
/// </param>
///
/// <returns>
/// ListPoliciesForGroupResponse
/// </returns>
public async Task<ListPoliciesForGroupResponse> ListPoliciesForGroupAsync(ListPoliciesForGroupRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return await ListPoliciesForGroupWithOptionsAsync(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries the policies that are attached to a RAM role.</para>
/// </summary>
///
/// <param name="request">
/// ListPoliciesForRoleRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// ListPoliciesForRoleResponse
/// </returns>
public ListPoliciesForRoleResponse ListPoliciesForRoleWithOptions(ListPoliciesForRoleRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RoleName))
{
query["RoleName"] = request.RoleName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "ListPoliciesForRole",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<ListPoliciesForRoleResponse>(CallApi(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries the policies that are attached to a RAM role.</para>
/// </summary>
///
/// <param name="request">
/// ListPoliciesForRoleRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// ListPoliciesForRoleResponse
/// </returns>
public async Task<ListPoliciesForRoleResponse> ListPoliciesForRoleWithOptionsAsync(ListPoliciesForRoleRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RoleName))
{
query["RoleName"] = request.RoleName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "ListPoliciesForRole",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<ListPoliciesForRoleResponse>(await CallApiAsync(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries the policies that are attached to a RAM role.</para>
/// </summary>
///
/// <param name="request">
/// ListPoliciesForRoleRequest
/// </param>
///
/// <returns>
/// ListPoliciesForRoleResponse
/// </returns>
public ListPoliciesForRoleResponse ListPoliciesForRole(ListPoliciesForRoleRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return ListPoliciesForRoleWithOptions(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries the policies that are attached to a RAM role.</para>
/// </summary>
///
/// <param name="request">
/// ListPoliciesForRoleRequest
/// </param>
///
/// <returns>
/// ListPoliciesForRoleResponse
/// </returns>
public async Task<ListPoliciesForRoleResponse> ListPoliciesForRoleAsync(ListPoliciesForRoleRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return await ListPoliciesForRoleWithOptionsAsync(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries the policies that are attached to a RAM user.</para>
/// </summary>
///
/// <term><b>Description:</b></term>
/// <description>
/// <remarks>
/// <para>You can call this operation to query only the policies that are attached to Alibaba Cloud accounts. You cannot query the policies that are attached to resource groups.</para>
/// </remarks>
/// </description>
///
/// <param name="request">
/// ListPoliciesForUserRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// ListPoliciesForUserResponse
/// </returns>
public ListPoliciesForUserResponse ListPoliciesForUserWithOptions(ListPoliciesForUserRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UserName))
{
query["UserName"] = request.UserName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "ListPoliciesForUser",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<ListPoliciesForUserResponse>(CallApi(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries the policies that are attached to a RAM user.</para>
/// </summary>
///
/// <term><b>Description:</b></term>
/// <description>
/// <remarks>
/// <para>You can call this operation to query only the policies that are attached to Alibaba Cloud accounts. You cannot query the policies that are attached to resource groups.</para>
/// </remarks>
/// </description>
///
/// <param name="request">
/// ListPoliciesForUserRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// ListPoliciesForUserResponse
/// </returns>
public async Task<ListPoliciesForUserResponse> ListPoliciesForUserWithOptionsAsync(ListPoliciesForUserRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UserName))
{
query["UserName"] = request.UserName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "ListPoliciesForUser",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<ListPoliciesForUserResponse>(await CallApiAsync(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries the policies that are attached to a RAM user.</para>
/// </summary>
///
/// <term><b>Description:</b></term>
/// <description>
/// <remarks>
/// <para>You can call this operation to query only the policies that are attached to Alibaba Cloud accounts. You cannot query the policies that are attached to resource groups.</para>
/// </remarks>
/// </description>
///
/// <param name="request">
/// ListPoliciesForUserRequest
/// </param>
///
/// <returns>
/// ListPoliciesForUserResponse
/// </returns>
public ListPoliciesForUserResponse ListPoliciesForUser(ListPoliciesForUserRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return ListPoliciesForUserWithOptions(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries the policies that are attached to a RAM user.</para>
/// </summary>
///
/// <term><b>Description:</b></term>
/// <description>
/// <remarks>
/// <para>You can call this operation to query only the policies that are attached to Alibaba Cloud accounts. You cannot query the policies that are attached to resource groups.</para>
/// </remarks>
/// </description>
///
/// <param name="request">
/// ListPoliciesForUserRequest
/// </param>
///
/// <returns>
/// ListPoliciesForUserResponse
/// </returns>
public async Task<ListPoliciesForUserResponse> ListPoliciesForUserAsync(ListPoliciesForUserRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return await ListPoliciesForUserWithOptionsAsync(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries the versions of a policy.</para>
/// </summary>
///
/// <param name="request">
/// ListPolicyVersionsRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// ListPolicyVersionsResponse
/// </returns>
public ListPolicyVersionsResponse ListPolicyVersionsWithOptions(ListPolicyVersionsRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PolicyName))
{
query["PolicyName"] = request.PolicyName;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PolicyType))
{
query["PolicyType"] = request.PolicyType;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "ListPolicyVersions",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<ListPolicyVersionsResponse>(CallApi(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries the versions of a policy.</para>
/// </summary>
///
/// <param name="request">
/// ListPolicyVersionsRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// ListPolicyVersionsResponse
/// </returns>
public async Task<ListPolicyVersionsResponse> ListPolicyVersionsWithOptionsAsync(ListPolicyVersionsRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PolicyName))
{
query["PolicyName"] = request.PolicyName;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PolicyType))
{
query["PolicyType"] = request.PolicyType;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "ListPolicyVersions",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<ListPolicyVersionsResponse>(await CallApiAsync(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries the versions of a policy.</para>
/// </summary>
///
/// <param name="request">
/// ListPolicyVersionsRequest
/// </param>
///
/// <returns>
/// ListPolicyVersionsResponse
/// </returns>
public ListPolicyVersionsResponse ListPolicyVersions(ListPolicyVersionsRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return ListPolicyVersionsWithOptions(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries the versions of a policy.</para>
/// </summary>
///
/// <param name="request">
/// ListPolicyVersionsRequest
/// </param>
///
/// <returns>
/// ListPolicyVersionsResponse
/// </returns>
public async Task<ListPolicyVersionsResponse> ListPolicyVersionsAsync(ListPolicyVersionsRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return await ListPolicyVersionsWithOptionsAsync(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries the list of all RAM roles.</para>
/// </summary>
///
/// <param name="request">
/// ListRolesRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// ListRolesResponse
/// </returns>
public ListRolesResponse ListRolesWithOptions(ListRolesRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Marker))
{
query["Marker"] = request.Marker;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.MaxItems))
{
query["MaxItems"] = request.MaxItems;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "ListRoles",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<ListRolesResponse>(CallApi(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries the list of all RAM roles.</para>
/// </summary>
///
/// <param name="request">
/// ListRolesRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// ListRolesResponse
/// </returns>
public async Task<ListRolesResponse> ListRolesWithOptionsAsync(ListRolesRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Marker))
{
query["Marker"] = request.Marker;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.MaxItems))
{
query["MaxItems"] = request.MaxItems;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "ListRoles",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<ListRolesResponse>(await CallApiAsync(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries the list of all RAM roles.</para>
/// </summary>
///
/// <param name="request">
/// ListRolesRequest
/// </param>
///
/// <returns>
/// ListRolesResponse
/// </returns>
public ListRolesResponse ListRoles(ListRolesRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return ListRolesWithOptions(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries the list of all RAM roles.</para>
/// </summary>
///
/// <param name="request">
/// ListRolesRequest
/// </param>
///
/// <returns>
/// ListRolesResponse
/// </returns>
public async Task<ListRolesResponse> ListRolesAsync(ListRolesRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return await ListRolesWithOptionsAsync(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries the information about all RAM users.</para>
/// </summary>
///
/// <param name="request">
/// ListUsersRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// ListUsersResponse
/// </returns>
public ListUsersResponse ListUsersWithOptions(ListUsersRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Marker))
{
query["Marker"] = request.Marker;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.MaxItems))
{
query["MaxItems"] = request.MaxItems;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "ListUsers",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<ListUsersResponse>(CallApi(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries the information about all RAM users.</para>
/// </summary>
///
/// <param name="request">
/// ListUsersRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// ListUsersResponse
/// </returns>
public async Task<ListUsersResponse> ListUsersWithOptionsAsync(ListUsersRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Marker))
{
query["Marker"] = request.Marker;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.MaxItems))
{
query["MaxItems"] = request.MaxItems;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "ListUsers",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<ListUsersResponse>(await CallApiAsync(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries the information about all RAM users.</para>
/// </summary>
///
/// <param name="request">
/// ListUsersRequest
/// </param>
///
/// <returns>
/// ListUsersResponse
/// </returns>
public ListUsersResponse ListUsers(ListUsersRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return ListUsersWithOptions(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries the information about all RAM users.</para>
/// </summary>
///
/// <param name="request">
/// ListUsersRequest
/// </param>
///
/// <returns>
/// ListUsersResponse
/// </returns>
public async Task<ListUsersResponse> ListUsersAsync(ListUsersRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return await ListUsersWithOptionsAsync(request, runtime);
}
/// <param name="request">
/// ListUsersForGroupRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// ListUsersForGroupResponse
/// </returns>
public ListUsersForGroupResponse ListUsersForGroupWithOptions(ListUsersForGroupRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.GroupName))
{
query["GroupName"] = request.GroupName;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Marker))
{
query["Marker"] = request.Marker;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.MaxItems))
{
query["MaxItems"] = request.MaxItems;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "ListUsersForGroup",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<ListUsersForGroupResponse>(CallApi(params_, req, runtime));
}
/// <param name="request">
/// ListUsersForGroupRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// ListUsersForGroupResponse
/// </returns>
public async Task<ListUsersForGroupResponse> ListUsersForGroupWithOptionsAsync(ListUsersForGroupRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.GroupName))
{
query["GroupName"] = request.GroupName;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Marker))
{
query["Marker"] = request.Marker;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.MaxItems))
{
query["MaxItems"] = request.MaxItems;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "ListUsersForGroup",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<ListUsersForGroupResponse>(await CallApiAsync(params_, req, runtime));
}
/// <param name="request">
/// ListUsersForGroupRequest
/// </param>
///
/// <returns>
/// ListUsersForGroupResponse
/// </returns>
public ListUsersForGroupResponse ListUsersForGroup(ListUsersForGroupRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return ListUsersForGroupWithOptions(request, runtime);
}
/// <param name="request">
/// ListUsersForGroupRequest
/// </param>
///
/// <returns>
/// ListUsersForGroupResponse
/// </returns>
public async Task<ListUsersForGroupResponse> ListUsersForGroupAsync(ListUsersForGroupRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return await ListUsersForGroupWithOptionsAsync(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries the list of all multi-factor authentication (MFA) devices.</para>
/// </summary>
///
/// <param name="request">
/// ListVirtualMFADevicesRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// ListVirtualMFADevicesResponse
/// </returns>
public ListVirtualMFADevicesResponse ListVirtualMFADevicesWithOptions(AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest();
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "ListVirtualMFADevices",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<ListVirtualMFADevicesResponse>(CallApi(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries the list of all multi-factor authentication (MFA) devices.</para>
/// </summary>
///
/// <param name="request">
/// ListVirtualMFADevicesRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// ListVirtualMFADevicesResponse
/// </returns>
public async Task<ListVirtualMFADevicesResponse> ListVirtualMFADevicesWithOptionsAsync(AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest();
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "ListVirtualMFADevices",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<ListVirtualMFADevicesResponse>(await CallApiAsync(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries the list of all multi-factor authentication (MFA) devices.</para>
/// </summary>
///
/// <returns>
/// ListVirtualMFADevicesResponse
/// </returns>
public ListVirtualMFADevicesResponse ListVirtualMFADevices()
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return ListVirtualMFADevicesWithOptions(runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Queries the list of all multi-factor authentication (MFA) devices.</para>
/// </summary>
///
/// <returns>
/// ListVirtualMFADevicesResponse
/// </returns>
public async Task<ListVirtualMFADevicesResponse> ListVirtualMFADevicesAsync()
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return await ListVirtualMFADevicesWithOptionsAsync(runtime);
}
/// <param name="request">
/// RemoveUserFromGroupRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// RemoveUserFromGroupResponse
/// </returns>
public RemoveUserFromGroupResponse RemoveUserFromGroupWithOptions(RemoveUserFromGroupRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.GroupName))
{
query["GroupName"] = request.GroupName;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UserName))
{
query["UserName"] = request.UserName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "RemoveUserFromGroup",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<RemoveUserFromGroupResponse>(CallApi(params_, req, runtime));
}
/// <param name="request">
/// RemoveUserFromGroupRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// RemoveUserFromGroupResponse
/// </returns>
public async Task<RemoveUserFromGroupResponse> RemoveUserFromGroupWithOptionsAsync(RemoveUserFromGroupRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.GroupName))
{
query["GroupName"] = request.GroupName;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UserName))
{
query["UserName"] = request.UserName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "RemoveUserFromGroup",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<RemoveUserFromGroupResponse>(await CallApiAsync(params_, req, runtime));
}
/// <param name="request">
/// RemoveUserFromGroupRequest
/// </param>
///
/// <returns>
/// RemoveUserFromGroupResponse
/// </returns>
public RemoveUserFromGroupResponse RemoveUserFromGroup(RemoveUserFromGroupRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return RemoveUserFromGroupWithOptions(request, runtime);
}
/// <param name="request">
/// RemoveUserFromGroupRequest
/// </param>
///
/// <returns>
/// RemoveUserFromGroupResponse
/// </returns>
public async Task<RemoveUserFromGroupResponse> RemoveUserFromGroupAsync(RemoveUserFromGroupRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return await RemoveUserFromGroupWithOptionsAsync(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>You can call this operation to specify an alias for an Alibaba Cloud account.</para>
/// </summary>
///
/// <param name="request">
/// SetAccountAliasRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// SetAccountAliasResponse
/// </returns>
public SetAccountAliasResponse SetAccountAliasWithOptions(SetAccountAliasRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.AccountAlias))
{
query["AccountAlias"] = request.AccountAlias;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "SetAccountAlias",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<SetAccountAliasResponse>(CallApi(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>You can call this operation to specify an alias for an Alibaba Cloud account.</para>
/// </summary>
///
/// <param name="request">
/// SetAccountAliasRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// SetAccountAliasResponse
/// </returns>
public async Task<SetAccountAliasResponse> SetAccountAliasWithOptionsAsync(SetAccountAliasRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.AccountAlias))
{
query["AccountAlias"] = request.AccountAlias;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "SetAccountAlias",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<SetAccountAliasResponse>(await CallApiAsync(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>You can call this operation to specify an alias for an Alibaba Cloud account.</para>
/// </summary>
///
/// <param name="request">
/// SetAccountAliasRequest
/// </param>
///
/// <returns>
/// SetAccountAliasResponse
/// </returns>
public SetAccountAliasResponse SetAccountAlias(SetAccountAliasRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return SetAccountAliasWithOptions(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>You can call this operation to specify an alias for an Alibaba Cloud account.</para>
/// </summary>
///
/// <param name="request">
/// SetAccountAliasRequest
/// </param>
///
/// <returns>
/// SetAccountAliasResponse
/// </returns>
public async Task<SetAccountAliasResponse> SetAccountAliasAsync(SetAccountAliasRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return await SetAccountAliasWithOptionsAsync(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Sets the default version of a policy.</para>
/// </summary>
///
/// <param name="request">
/// SetDefaultPolicyVersionRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// SetDefaultPolicyVersionResponse
/// </returns>
public SetDefaultPolicyVersionResponse SetDefaultPolicyVersionWithOptions(SetDefaultPolicyVersionRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PolicyName))
{
query["PolicyName"] = request.PolicyName;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.VersionId))
{
query["VersionId"] = request.VersionId;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "SetDefaultPolicyVersion",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<SetDefaultPolicyVersionResponse>(CallApi(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Sets the default version of a policy.</para>
/// </summary>
///
/// <param name="request">
/// SetDefaultPolicyVersionRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// SetDefaultPolicyVersionResponse
/// </returns>
public async Task<SetDefaultPolicyVersionResponse> SetDefaultPolicyVersionWithOptionsAsync(SetDefaultPolicyVersionRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PolicyName))
{
query["PolicyName"] = request.PolicyName;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.VersionId))
{
query["VersionId"] = request.VersionId;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "SetDefaultPolicyVersion",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<SetDefaultPolicyVersionResponse>(await CallApiAsync(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Sets the default version of a policy.</para>
/// </summary>
///
/// <param name="request">
/// SetDefaultPolicyVersionRequest
/// </param>
///
/// <returns>
/// SetDefaultPolicyVersionResponse
/// </returns>
public SetDefaultPolicyVersionResponse SetDefaultPolicyVersion(SetDefaultPolicyVersionRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return SetDefaultPolicyVersionWithOptions(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Sets the default version of a policy.</para>
/// </summary>
///
/// <param name="request">
/// SetDefaultPolicyVersionRequest
/// </param>
///
/// <returns>
/// SetDefaultPolicyVersionResponse
/// </returns>
public async Task<SetDefaultPolicyVersionResponse> SetDefaultPolicyVersionAsync(SetDefaultPolicyVersionRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return await SetDefaultPolicyVersionWithOptionsAsync(request, runtime);
}
/// <param name="request">
/// SetPasswordPolicyRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// SetPasswordPolicyResponse
/// </returns>
public SetPasswordPolicyResponse SetPasswordPolicyWithOptions(SetPasswordPolicyRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.HardExpiry))
{
query["HardExpiry"] = request.HardExpiry;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.MaxLoginAttemps))
{
query["MaxLoginAttemps"] = request.MaxLoginAttemps;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.MaxPasswordAge))
{
query["MaxPasswordAge"] = request.MaxPasswordAge;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.MinimumPasswordLength))
{
query["MinimumPasswordLength"] = request.MinimumPasswordLength;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PasswordReusePrevention))
{
query["PasswordReusePrevention"] = request.PasswordReusePrevention;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RequireLowercaseCharacters))
{
query["RequireLowercaseCharacters"] = request.RequireLowercaseCharacters;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RequireNumbers))
{
query["RequireNumbers"] = request.RequireNumbers;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RequireSymbols))
{
query["RequireSymbols"] = request.RequireSymbols;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RequireUppercaseCharacters))
{
query["RequireUppercaseCharacters"] = request.RequireUppercaseCharacters;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "SetPasswordPolicy",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<SetPasswordPolicyResponse>(CallApi(params_, req, runtime));
}
/// <param name="request">
/// SetPasswordPolicyRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// SetPasswordPolicyResponse
/// </returns>
public async Task<SetPasswordPolicyResponse> SetPasswordPolicyWithOptionsAsync(SetPasswordPolicyRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.HardExpiry))
{
query["HardExpiry"] = request.HardExpiry;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.MaxLoginAttemps))
{
query["MaxLoginAttemps"] = request.MaxLoginAttemps;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.MaxPasswordAge))
{
query["MaxPasswordAge"] = request.MaxPasswordAge;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.MinimumPasswordLength))
{
query["MinimumPasswordLength"] = request.MinimumPasswordLength;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PasswordReusePrevention))
{
query["PasswordReusePrevention"] = request.PasswordReusePrevention;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RequireLowercaseCharacters))
{
query["RequireLowercaseCharacters"] = request.RequireLowercaseCharacters;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RequireNumbers))
{
query["RequireNumbers"] = request.RequireNumbers;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RequireSymbols))
{
query["RequireSymbols"] = request.RequireSymbols;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RequireUppercaseCharacters))
{
query["RequireUppercaseCharacters"] = request.RequireUppercaseCharacters;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "SetPasswordPolicy",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<SetPasswordPolicyResponse>(await CallApiAsync(params_, req, runtime));
}
/// <param name="request">
/// SetPasswordPolicyRequest
/// </param>
///
/// <returns>
/// SetPasswordPolicyResponse
/// </returns>
public SetPasswordPolicyResponse SetPasswordPolicy(SetPasswordPolicyRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return SetPasswordPolicyWithOptions(request, runtime);
}
/// <param name="request">
/// SetPasswordPolicyRequest
/// </param>
///
/// <returns>
/// SetPasswordPolicyResponse
/// </returns>
public async Task<SetPasswordPolicyResponse> SetPasswordPolicyAsync(SetPasswordPolicyRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return await SetPasswordPolicyWithOptionsAsync(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Configures the security preferences.</para>
/// </summary>
///
/// <param name="request">
/// SetSecurityPreferenceRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// SetSecurityPreferenceResponse
/// </returns>
public SetSecurityPreferenceResponse SetSecurityPreferenceWithOptions(SetSecurityPreferenceRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.AllowUserToChangePassword))
{
query["AllowUserToChangePassword"] = request.AllowUserToChangePassword;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.AllowUserToManageAccessKeys))
{
query["AllowUserToManageAccessKeys"] = request.AllowUserToManageAccessKeys;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.AllowUserToManageMFADevices))
{
query["AllowUserToManageMFADevices"] = request.AllowUserToManageMFADevices;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.AllowUserToManagePublicKeys))
{
query["AllowUserToManagePublicKeys"] = request.AllowUserToManagePublicKeys;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.EnableSaveMFATicket))
{
query["EnableSaveMFATicket"] = request.EnableSaveMFATicket;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.LoginNetworkMasks))
{
query["LoginNetworkMasks"] = request.LoginNetworkMasks;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.LoginSessionDuration))
{
query["LoginSessionDuration"] = request.LoginSessionDuration;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "SetSecurityPreference",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<SetSecurityPreferenceResponse>(CallApi(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Configures the security preferences.</para>
/// </summary>
///
/// <param name="request">
/// SetSecurityPreferenceRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// SetSecurityPreferenceResponse
/// </returns>
public async Task<SetSecurityPreferenceResponse> SetSecurityPreferenceWithOptionsAsync(SetSecurityPreferenceRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.AllowUserToChangePassword))
{
query["AllowUserToChangePassword"] = request.AllowUserToChangePassword;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.AllowUserToManageAccessKeys))
{
query["AllowUserToManageAccessKeys"] = request.AllowUserToManageAccessKeys;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.AllowUserToManageMFADevices))
{
query["AllowUserToManageMFADevices"] = request.AllowUserToManageMFADevices;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.AllowUserToManagePublicKeys))
{
query["AllowUserToManagePublicKeys"] = request.AllowUserToManagePublicKeys;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.EnableSaveMFATicket))
{
query["EnableSaveMFATicket"] = request.EnableSaveMFATicket;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.LoginNetworkMasks))
{
query["LoginNetworkMasks"] = request.LoginNetworkMasks;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.LoginSessionDuration))
{
query["LoginSessionDuration"] = request.LoginSessionDuration;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "SetSecurityPreference",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<SetSecurityPreferenceResponse>(await CallApiAsync(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Configures the security preferences.</para>
/// </summary>
///
/// <param name="request">
/// SetSecurityPreferenceRequest
/// </param>
///
/// <returns>
/// SetSecurityPreferenceResponse
/// </returns>
public SetSecurityPreferenceResponse SetSecurityPreference(SetSecurityPreferenceRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return SetSecurityPreferenceWithOptions(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Configures the security preferences.</para>
/// </summary>
///
/// <param name="request">
/// SetSecurityPreferenceRequest
/// </param>
///
/// <returns>
/// SetSecurityPreferenceResponse
/// </returns>
public async Task<SetSecurityPreferenceResponse> SetSecurityPreferenceAsync(SetSecurityPreferenceRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return await SetSecurityPreferenceWithOptionsAsync(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Detaches a multi-factor authentication (MFA) device from a RAM user.</para>
/// </summary>
///
/// <param name="request">
/// UnbindMFADeviceRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// UnbindMFADeviceResponse
/// </returns>
public UnbindMFADeviceResponse UnbindMFADeviceWithOptions(UnbindMFADeviceRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UserName))
{
query["UserName"] = request.UserName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "UnbindMFADevice",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<UnbindMFADeviceResponse>(CallApi(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Detaches a multi-factor authentication (MFA) device from a RAM user.</para>
/// </summary>
///
/// <param name="request">
/// UnbindMFADeviceRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// UnbindMFADeviceResponse
/// </returns>
public async Task<UnbindMFADeviceResponse> UnbindMFADeviceWithOptionsAsync(UnbindMFADeviceRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UserName))
{
query["UserName"] = request.UserName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "UnbindMFADevice",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<UnbindMFADeviceResponse>(await CallApiAsync(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Detaches a multi-factor authentication (MFA) device from a RAM user.</para>
/// </summary>
///
/// <param name="request">
/// UnbindMFADeviceRequest
/// </param>
///
/// <returns>
/// UnbindMFADeviceResponse
/// </returns>
public UnbindMFADeviceResponse UnbindMFADevice(UnbindMFADeviceRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return UnbindMFADeviceWithOptions(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Detaches a multi-factor authentication (MFA) device from a RAM user.</para>
/// </summary>
///
/// <param name="request">
/// UnbindMFADeviceRequest
/// </param>
///
/// <returns>
/// UnbindMFADeviceResponse
/// </returns>
public async Task<UnbindMFADeviceResponse> UnbindMFADeviceAsync(UnbindMFADeviceRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return await UnbindMFADeviceWithOptionsAsync(request, runtime);
}
/// <param name="request">
/// UpdateAccessKeyRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// UpdateAccessKeyResponse
/// </returns>
public UpdateAccessKeyResponse UpdateAccessKeyWithOptions(UpdateAccessKeyRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Status))
{
query["Status"] = request.Status;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UserAccessKeyId))
{
query["UserAccessKeyId"] = request.UserAccessKeyId;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UserName))
{
query["UserName"] = request.UserName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "UpdateAccessKey",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<UpdateAccessKeyResponse>(CallApi(params_, req, runtime));
}
/// <param name="request">
/// UpdateAccessKeyRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// UpdateAccessKeyResponse
/// </returns>
public async Task<UpdateAccessKeyResponse> UpdateAccessKeyWithOptionsAsync(UpdateAccessKeyRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Status))
{
query["Status"] = request.Status;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UserAccessKeyId))
{
query["UserAccessKeyId"] = request.UserAccessKeyId;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UserName))
{
query["UserName"] = request.UserName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "UpdateAccessKey",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<UpdateAccessKeyResponse>(await CallApiAsync(params_, req, runtime));
}
/// <param name="request">
/// UpdateAccessKeyRequest
/// </param>
///
/// <returns>
/// UpdateAccessKeyResponse
/// </returns>
public UpdateAccessKeyResponse UpdateAccessKey(UpdateAccessKeyRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return UpdateAccessKeyWithOptions(request, runtime);
}
/// <param name="request">
/// UpdateAccessKeyRequest
/// </param>
///
/// <returns>
/// UpdateAccessKeyResponse
/// </returns>
public async Task<UpdateAccessKeyResponse> UpdateAccessKeyAsync(UpdateAccessKeyRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return await UpdateAccessKeyWithOptionsAsync(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Modifies a RAM user group.</para>
/// </summary>
///
/// <param name="request">
/// UpdateGroupRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// UpdateGroupResponse
/// </returns>
public UpdateGroupResponse UpdateGroupWithOptions(UpdateGroupRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.GroupName))
{
query["GroupName"] = request.GroupName;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.NewComments))
{
query["NewComments"] = request.NewComments;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.NewGroupName))
{
query["NewGroupName"] = request.NewGroupName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "UpdateGroup",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<UpdateGroupResponse>(CallApi(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Modifies a RAM user group.</para>
/// </summary>
///
/// <param name="request">
/// UpdateGroupRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// UpdateGroupResponse
/// </returns>
public async Task<UpdateGroupResponse> UpdateGroupWithOptionsAsync(UpdateGroupRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.GroupName))
{
query["GroupName"] = request.GroupName;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.NewComments))
{
query["NewComments"] = request.NewComments;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.NewGroupName))
{
query["NewGroupName"] = request.NewGroupName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "UpdateGroup",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<UpdateGroupResponse>(await CallApiAsync(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Modifies a RAM user group.</para>
/// </summary>
///
/// <param name="request">
/// UpdateGroupRequest
/// </param>
///
/// <returns>
/// UpdateGroupResponse
/// </returns>
public UpdateGroupResponse UpdateGroup(UpdateGroupRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return UpdateGroupWithOptions(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Modifies a RAM user group.</para>
/// </summary>
///
/// <param name="request">
/// UpdateGroupRequest
/// </param>
///
/// <returns>
/// UpdateGroupResponse
/// </returns>
public async Task<UpdateGroupResponse> UpdateGroupAsync(UpdateGroupRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return await UpdateGroupWithOptionsAsync(request, runtime);
}
/// <param name="request">
/// UpdateLoginProfileRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// UpdateLoginProfileResponse
/// </returns>
public UpdateLoginProfileResponse UpdateLoginProfileWithOptions(UpdateLoginProfileRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.MFABindRequired))
{
query["MFABindRequired"] = request.MFABindRequired;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Password))
{
query["Password"] = request.Password;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PasswordResetRequired))
{
query["PasswordResetRequired"] = request.PasswordResetRequired;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UserName))
{
query["UserName"] = request.UserName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "UpdateLoginProfile",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<UpdateLoginProfileResponse>(CallApi(params_, req, runtime));
}
/// <param name="request">
/// UpdateLoginProfileRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// UpdateLoginProfileResponse
/// </returns>
public async Task<UpdateLoginProfileResponse> UpdateLoginProfileWithOptionsAsync(UpdateLoginProfileRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.MFABindRequired))
{
query["MFABindRequired"] = request.MFABindRequired;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Password))
{
query["Password"] = request.Password;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PasswordResetRequired))
{
query["PasswordResetRequired"] = request.PasswordResetRequired;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UserName))
{
query["UserName"] = request.UserName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "UpdateLoginProfile",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<UpdateLoginProfileResponse>(await CallApiAsync(params_, req, runtime));
}
/// <param name="request">
/// UpdateLoginProfileRequest
/// </param>
///
/// <returns>
/// UpdateLoginProfileResponse
/// </returns>
public UpdateLoginProfileResponse UpdateLoginProfile(UpdateLoginProfileRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return UpdateLoginProfileWithOptions(request, runtime);
}
/// <param name="request">
/// UpdateLoginProfileRequest
/// </param>
///
/// <returns>
/// UpdateLoginProfileResponse
/// </returns>
public async Task<UpdateLoginProfileResponse> UpdateLoginProfileAsync(UpdateLoginProfileRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return await UpdateLoginProfileWithOptionsAsync(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Modifies the description of a custom policy.</para>
/// </summary>
///
/// <term><b>Description:</b></term>
/// <description>
/// <para>You can call this operation to modify only the description of a custom policy. You cannot modify the description of a system policy.</para>
/// </description>
///
/// <param name="request">
/// UpdatePolicyDescriptionRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// UpdatePolicyDescriptionResponse
/// </returns>
public UpdatePolicyDescriptionResponse UpdatePolicyDescriptionWithOptions(UpdatePolicyDescriptionRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.NewDescription))
{
query["NewDescription"] = request.NewDescription;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PolicyName))
{
query["PolicyName"] = request.PolicyName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "UpdatePolicyDescription",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<UpdatePolicyDescriptionResponse>(CallApi(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Modifies the description of a custom policy.</para>
/// </summary>
///
/// <term><b>Description:</b></term>
/// <description>
/// <para>You can call this operation to modify only the description of a custom policy. You cannot modify the description of a system policy.</para>
/// </description>
///
/// <param name="request">
/// UpdatePolicyDescriptionRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// UpdatePolicyDescriptionResponse
/// </returns>
public async Task<UpdatePolicyDescriptionResponse> UpdatePolicyDescriptionWithOptionsAsync(UpdatePolicyDescriptionRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.NewDescription))
{
query["NewDescription"] = request.NewDescription;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PolicyName))
{
query["PolicyName"] = request.PolicyName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "UpdatePolicyDescription",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<UpdatePolicyDescriptionResponse>(await CallApiAsync(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Modifies the description of a custom policy.</para>
/// </summary>
///
/// <term><b>Description:</b></term>
/// <description>
/// <para>You can call this operation to modify only the description of a custom policy. You cannot modify the description of a system policy.</para>
/// </description>
///
/// <param name="request">
/// UpdatePolicyDescriptionRequest
/// </param>
///
/// <returns>
/// UpdatePolicyDescriptionResponse
/// </returns>
public UpdatePolicyDescriptionResponse UpdatePolicyDescription(UpdatePolicyDescriptionRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return UpdatePolicyDescriptionWithOptions(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Modifies the description of a custom policy.</para>
/// </summary>
///
/// <term><b>Description:</b></term>
/// <description>
/// <para>You can call this operation to modify only the description of a custom policy. You cannot modify the description of a system policy.</para>
/// </description>
///
/// <param name="request">
/// UpdatePolicyDescriptionRequest
/// </param>
///
/// <returns>
/// UpdatePolicyDescriptionResponse
/// </returns>
public async Task<UpdatePolicyDescriptionResponse> UpdatePolicyDescriptionAsync(UpdatePolicyDescriptionRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return await UpdatePolicyDescriptionWithOptionsAsync(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Changes the description of a RAM role.</para>
/// </summary>
///
/// <term><b>Description:</b></term>
/// <description>
/// <para>This topic provides an example to show how to change the description of ECSAdmin to ECS administrator.</para>
/// </description>
///
/// <param name="request">
/// UpdateRoleRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// UpdateRoleResponse
/// </returns>
public UpdateRoleResponse UpdateRoleWithOptions(UpdateRoleRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.NewAssumeRolePolicyDocument))
{
query["NewAssumeRolePolicyDocument"] = request.NewAssumeRolePolicyDocument;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.NewDescription))
{
query["NewDescription"] = request.NewDescription;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.NewMaxSessionDuration))
{
query["NewMaxSessionDuration"] = request.NewMaxSessionDuration;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RoleName))
{
query["RoleName"] = request.RoleName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "UpdateRole",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<UpdateRoleResponse>(CallApi(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Changes the description of a RAM role.</para>
/// </summary>
///
/// <term><b>Description:</b></term>
/// <description>
/// <para>This topic provides an example to show how to change the description of ECSAdmin to ECS administrator.</para>
/// </description>
///
/// <param name="request">
/// UpdateRoleRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// UpdateRoleResponse
/// </returns>
public async Task<UpdateRoleResponse> UpdateRoleWithOptionsAsync(UpdateRoleRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.NewAssumeRolePolicyDocument))
{
query["NewAssumeRolePolicyDocument"] = request.NewAssumeRolePolicyDocument;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.NewDescription))
{
query["NewDescription"] = request.NewDescription;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.NewMaxSessionDuration))
{
query["NewMaxSessionDuration"] = request.NewMaxSessionDuration;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RoleName))
{
query["RoleName"] = request.RoleName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "UpdateRole",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<UpdateRoleResponse>(await CallApiAsync(params_, req, runtime));
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Changes the description of a RAM role.</para>
/// </summary>
///
/// <term><b>Description:</b></term>
/// <description>
/// <para>This topic provides an example to show how to change the description of ECSAdmin to ECS administrator.</para>
/// </description>
///
/// <param name="request">
/// UpdateRoleRequest
/// </param>
///
/// <returns>
/// UpdateRoleResponse
/// </returns>
public UpdateRoleResponse UpdateRole(UpdateRoleRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return UpdateRoleWithOptions(request, runtime);
}
/// <term><b>Summary:</b></term>
/// <summary>
/// <para>Changes the description of a RAM role.</para>
/// </summary>
///
/// <term><b>Description:</b></term>
/// <description>
/// <para>This topic provides an example to show how to change the description of ECSAdmin to ECS administrator.</para>
/// </description>
///
/// <param name="request">
/// UpdateRoleRequest
/// </param>
///
/// <returns>
/// UpdateRoleResponse
/// </returns>
public async Task<UpdateRoleResponse> UpdateRoleAsync(UpdateRoleRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return await UpdateRoleWithOptionsAsync(request, runtime);
}
/// <term><b>Description:</b></term>
/// <description>
/// <para>This topic provides an example on how to change the name of a RAM user from <c>zhangq****</c> to <c>xiaoq****</c>.</para>
/// </description>
///
/// <param name="request">
/// UpdateUserRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// UpdateUserResponse
/// </returns>
public UpdateUserResponse UpdateUserWithOptions(UpdateUserRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.NewComments))
{
query["NewComments"] = request.NewComments;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.NewDisplayName))
{
query["NewDisplayName"] = request.NewDisplayName;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.NewEmail))
{
query["NewEmail"] = request.NewEmail;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.NewMobilePhone))
{
query["NewMobilePhone"] = request.NewMobilePhone;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.NewUserName))
{
query["NewUserName"] = request.NewUserName;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UserName))
{
query["UserName"] = request.UserName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "UpdateUser",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<UpdateUserResponse>(CallApi(params_, req, runtime));
}
/// <term><b>Description:</b></term>
/// <description>
/// <para>This topic provides an example on how to change the name of a RAM user from <c>zhangq****</c> to <c>xiaoq****</c>.</para>
/// </description>
///
/// <param name="request">
/// UpdateUserRequest
/// </param>
/// <param name="runtime">
/// runtime options for this request RuntimeOptions
/// </param>
///
/// <returns>
/// UpdateUserResponse
/// </returns>
public async Task<UpdateUserResponse> UpdateUserWithOptionsAsync(UpdateUserRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime)
{
AlibabaCloud.TeaUtil.Common.ValidateModel(request);
Dictionary<string, object> query = new Dictionary<string, object>(){};
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.NewComments))
{
query["NewComments"] = request.NewComments;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.NewDisplayName))
{
query["NewDisplayName"] = request.NewDisplayName;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.NewEmail))
{
query["NewEmail"] = request.NewEmail;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.NewMobilePhone))
{
query["NewMobilePhone"] = request.NewMobilePhone;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.NewUserName))
{
query["NewUserName"] = request.NewUserName;
}
if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UserName))
{
query["UserName"] = request.UserName;
}
AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest
{
Query = AlibabaCloud.OpenApiUtil.Client.Query(query),
};
AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params
{
Action = "UpdateUser",
Version = "2015-05-01",
Protocol = "HTTPS",
Pathname = "/",
Method = "POST",
AuthType = "AK",
Style = "RPC",
ReqBodyType = "formData",
BodyType = "json",
};
return TeaModel.ToObject<UpdateUserResponse>(await CallApiAsync(params_, req, runtime));
}
/// <term><b>Description:</b></term>
/// <description>
/// <para>This topic provides an example on how to change the name of a RAM user from <c>zhangq****</c> to <c>xiaoq****</c>.</para>
/// </description>
///
/// <param name="request">
/// UpdateUserRequest
/// </param>
///
/// <returns>
/// UpdateUserResponse
/// </returns>
public UpdateUserResponse UpdateUser(UpdateUserRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return UpdateUserWithOptions(request, runtime);
}
/// <term><b>Description:</b></term>
/// <description>
/// <para>This topic provides an example on how to change the name of a RAM user from <c>zhangq****</c> to <c>xiaoq****</c>.</para>
/// </description>
///
/// <param name="request">
/// UpdateUserRequest
/// </param>
///
/// <returns>
/// UpdateUserResponse
/// </returns>
public async Task<UpdateUserResponse> UpdateUserAsync(UpdateUserRequest request)
{
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
return await UpdateUserWithOptionsAsync(request, runtime);
}
}
}