Class IamPolicyManagement
- java.lang.Object
-
- com.ibm.cloud.sdk.core.service.BaseService
-
- com.ibm.cloud.platform_services.iam_policy_management.v1.IamPolicyManagement
-
public class IamPolicyManagement extends com.ibm.cloud.sdk.core.service.BaseServiceIAM Policy Management API. API Version: 1.0.1
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.StringDEFAULT_SERVICE_NAMEDefault service name used when configuring the `IamPolicyManagement` client.static java.lang.StringDEFAULT_SERVICE_URLDefault service endpoint URL.
-
Constructor Summary
Constructors Constructor Description IamPolicyManagement(java.lang.String serviceName, com.ibm.cloud.sdk.core.security.Authenticator authenticator)Constructs an instance of the `IamPolicyManagement` client.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description com.ibm.cloud.sdk.core.http.ServiceCall<java.lang.Void>commitActionControlTemplate(CommitActionControlTemplateOptions commitActionControlTemplateOptions)Commit an action control template version.com.ibm.cloud.sdk.core.http.ServiceCall<java.lang.Void>commitPolicyTemplate(CommitPolicyTemplateOptions commitPolicyTemplateOptions)Commit a policy template version.com.ibm.cloud.sdk.core.http.ServiceCall<ActionControlTemplate>createActionControlTemplate(CreateActionControlTemplateOptions createActionControlTemplateOptions)Create an action control template.com.ibm.cloud.sdk.core.http.ServiceCall<ActionControlAssignmentCollection>createActionControlTemplateAssignment(CreateActionControlTemplateAssignmentOptions createActionControlTemplateAssignmentOptions)Create an action control template assignment.com.ibm.cloud.sdk.core.http.ServiceCall<ActionControlTemplate>createActionControlTemplateVersion(CreateActionControlTemplateVersionOptions createActionControlTemplateVersionOptions)Create a new action control template version.com.ibm.cloud.sdk.core.http.ServiceCall<Policy>createPolicy(CreatePolicyOptions createPolicyOptions)Create a policy.com.ibm.cloud.sdk.core.http.ServiceCall<PolicyTemplateLimitData>createPolicyTemplate(CreatePolicyTemplateOptions createPolicyTemplateOptions)Create a policy template.com.ibm.cloud.sdk.core.http.ServiceCall<PolicyAssignmentV1Collection>createPolicyTemplateAssignment(CreatePolicyTemplateAssignmentOptions createPolicyTemplateAssignmentOptions)Create a policy authorization template assignment.com.ibm.cloud.sdk.core.http.ServiceCall<PolicyTemplateLimitData>createPolicyTemplateVersion(CreatePolicyTemplateVersionOptions createPolicyTemplateVersionOptions)Create a new policy template version.com.ibm.cloud.sdk.core.http.ServiceCall<CustomRole>createRole(CreateRoleOptions createRoleOptions)Create a role.com.ibm.cloud.sdk.core.http.ServiceCall<V2Policy>createV2Policy(CreateV2PolicyOptions createV2PolicyOptions)Create a policy.com.ibm.cloud.sdk.core.http.ServiceCall<java.lang.Void>deleteActionControlAssignment(DeleteActionControlAssignmentOptions deleteActionControlAssignmentOptions)Remove an action control assignment.com.ibm.cloud.sdk.core.http.ServiceCall<java.lang.Void>deleteActionControlTemplate(DeleteActionControlTemplateOptions deleteActionControlTemplateOptions)Delete an action control template.com.ibm.cloud.sdk.core.http.ServiceCall<java.lang.Void>deleteActionControlTemplateVersion(DeleteActionControlTemplateVersionOptions deleteActionControlTemplateVersionOptions)Delete an action control template version.com.ibm.cloud.sdk.core.http.ServiceCall<java.lang.Void>deletePolicy(DeletePolicyOptions deletePolicyOptions)Delete a policy by ID.com.ibm.cloud.sdk.core.http.ServiceCall<java.lang.Void>deletePolicyAssignment(DeletePolicyAssignmentOptions deletePolicyAssignmentOptions)Remove a policy assignment.com.ibm.cloud.sdk.core.http.ServiceCall<java.lang.Void>deletePolicyTemplate(DeletePolicyTemplateOptions deletePolicyTemplateOptions)Delete a policy template.com.ibm.cloud.sdk.core.http.ServiceCall<java.lang.Void>deletePolicyTemplateVersion(DeletePolicyTemplateVersionOptions deletePolicyTemplateVersionOptions)Delete a policy template version.com.ibm.cloud.sdk.core.http.ServiceCall<java.lang.Void>deleteRole(DeleteRoleOptions deleteRoleOptions)Delete a role by ID.com.ibm.cloud.sdk.core.http.ServiceCall<java.lang.Void>deleteV2Policy(DeleteV2PolicyOptions deleteV2PolicyOptions)Delete a policy by ID.com.ibm.cloud.sdk.core.http.ServiceCall<ActionControlAssignment>getActionControlAssignment(GetActionControlAssignmentOptions getActionControlAssignmentOptions)Retrieve an action control assignment.com.ibm.cloud.sdk.core.http.ServiceCall<ActionControlTemplate>getActionControlTemplate(GetActionControlTemplateOptions getActionControlTemplateOptions)Retrieve the latest version of an action control template.com.ibm.cloud.sdk.core.http.ServiceCall<ActionControlTemplate>getActionControlTemplateVersion(GetActionControlTemplateVersionOptions getActionControlTemplateVersionOptions)Retrieve an action control template version.com.ibm.cloud.sdk.core.http.ServiceCall<PolicyTemplateMetaData>getPolicy(GetPolicyOptions getPolicyOptions)Retrieve a policy by ID.com.ibm.cloud.sdk.core.http.ServiceCall<PolicyTemplateAssignmentItems>getPolicyAssignment(GetPolicyAssignmentOptions getPolicyAssignmentOptions)Retrieve a policy assignment.com.ibm.cloud.sdk.core.http.ServiceCall<PolicyTemplate>getPolicyTemplate(GetPolicyTemplateOptions getPolicyTemplateOptions)Retrieve latest version of a policy template.com.ibm.cloud.sdk.core.http.ServiceCall<PolicyTemplate>getPolicyTemplateVersion(GetPolicyTemplateVersionOptions getPolicyTemplateVersionOptions)Retrieve a policy template version.com.ibm.cloud.sdk.core.http.ServiceCall<CustomRole>getRole(GetRoleOptions getRoleOptions)Retrieve a role by ID.com.ibm.cloud.sdk.core.http.ServiceCall<AccountSettingsAccessManagement>getSettings(GetSettingsOptions getSettingsOptions)Retrieve Access Management account settings by account ID.com.ibm.cloud.sdk.core.http.ServiceCall<V2PolicyTemplateMetaData>getV2Policy(GetV2PolicyOptions getV2PolicyOptions)Retrieve a policy by ID.com.ibm.cloud.sdk.core.http.ServiceCall<ActionControlAssignmentCollection>listActionControlAssignments(ListActionControlAssignmentsOptions listActionControlAssignmentsOptions)Get action control template assignments.com.ibm.cloud.sdk.core.http.ServiceCall<ActionControlTemplateCollection>listActionControlTemplates(ListActionControlTemplatesOptions listActionControlTemplatesOptions)List action control templates by attributes.com.ibm.cloud.sdk.core.http.ServiceCall<ActionControlTemplateVersionsCollection>listActionControlTemplateVersions(ListActionControlTemplateVersionsOptions listActionControlTemplateVersionsOptions)Retrieve action control template versions.com.ibm.cloud.sdk.core.http.ServiceCall<PolicyCollection>listPolicies(ListPoliciesOptions listPoliciesOptions)Get policies by attributes.com.ibm.cloud.sdk.core.http.ServiceCall<PolicyTemplateAssignmentCollection>listPolicyAssignments(ListPolicyAssignmentsOptions listPolicyAssignmentsOptions)Get policy template assignments.com.ibm.cloud.sdk.core.http.ServiceCall<PolicyTemplateCollection>listPolicyTemplates(ListPolicyTemplatesOptions listPolicyTemplatesOptions)List policy templates by attributes.com.ibm.cloud.sdk.core.http.ServiceCall<PolicyTemplateVersionsCollection>listPolicyTemplateVersions(ListPolicyTemplateVersionsOptions listPolicyTemplateVersionsOptions)Retrieve policy template versions.com.ibm.cloud.sdk.core.http.ServiceCall<RoleCollection>listRoles()Get roles by filters.com.ibm.cloud.sdk.core.http.ServiceCall<RoleCollection>listRoles(ListRolesOptions listRolesOptions)Get roles by filters.com.ibm.cloud.sdk.core.http.ServiceCall<V2PolicyCollection>listV2Policies(ListV2PoliciesOptions listV2PoliciesOptions)Get policies by attributes.static IamPolicyManagementnewInstance()Class method which constructs an instance of the `IamPolicyManagement` client.static IamPolicyManagementnewInstance(java.lang.String serviceName)Class method which constructs an instance of the `IamPolicyManagement` client.com.ibm.cloud.sdk.core.http.ServiceCall<ActionControlTemplate>replaceActionControlTemplate(ReplaceActionControlTemplateOptions replaceActionControlTemplateOptions)Update an action control template version.com.ibm.cloud.sdk.core.http.ServiceCall<Policy>replacePolicy(ReplacePolicyOptions replacePolicyOptions)Update a policy.com.ibm.cloud.sdk.core.http.ServiceCall<PolicyTemplate>replacePolicyTemplate(ReplacePolicyTemplateOptions replacePolicyTemplateOptions)Update a policy template version.com.ibm.cloud.sdk.core.http.ServiceCall<CustomRole>replaceRole(ReplaceRoleOptions replaceRoleOptions)Update a role.com.ibm.cloud.sdk.core.http.ServiceCall<V2Policy>replaceV2Policy(ReplaceV2PolicyOptions replaceV2PolicyOptions)Update a policy.com.ibm.cloud.sdk.core.http.ServiceCall<ActionControlAssignment>updateActionControlAssignment(UpdateActionControlAssignmentOptions updateActionControlAssignmentOptions)Update an action control assignment.com.ibm.cloud.sdk.core.http.ServiceCall<PolicyAssignmentV1>updatePolicyAssignment(UpdatePolicyAssignmentOptions updatePolicyAssignmentOptions)Update a policy authorization type assignment.com.ibm.cloud.sdk.core.http.ServiceCall<Policy>updatePolicyState(UpdatePolicyStateOptions updatePolicyStateOptions)Restore a deleted policy by ID.com.ibm.cloud.sdk.core.http.ServiceCall<AccountSettingsAccessManagement>updateSettings(UpdateSettingsOptions updateSettingsOptions)Update Access Management account settings by account ID.-
Methods inherited from class com.ibm.cloud.sdk.core.service.BaseService
configureClient, configureService, constructServiceUrl, constructServiceURL, disableRetries, enableGzipCompression, enableRetries, getAuthenticator, getClient, getDefaultHeaders, getEndPoint, getName, getServiceUrl, isJsonMimeType, isJsonPatchMimeType, setClient, setDefaultHeaders, setEndPoint, setServiceUrl, toString
-
-
-
-
Field Detail
-
DEFAULT_SERVICE_NAME
public static final java.lang.String DEFAULT_SERVICE_NAME
Default service name used when configuring the `IamPolicyManagement` client.- See Also:
- Constant Field Values
-
DEFAULT_SERVICE_URL
public static final java.lang.String DEFAULT_SERVICE_URL
Default service endpoint URL.- See Also:
- Constant Field Values
-
-
Constructor Detail
-
IamPolicyManagement
public IamPolicyManagement(java.lang.String serviceName, com.ibm.cloud.sdk.core.security.Authenticator authenticator)Constructs an instance of the `IamPolicyManagement` client. The specified service name and authenticator are used to configure the client instance.- Parameters:
serviceName- the service name to be used when configuring the client instanceauthenticator- theAuthenticatorinstance to be configured for this client
-
-
Method Detail
-
newInstance
public static IamPolicyManagement newInstance()
Class method which constructs an instance of the `IamPolicyManagement` client. The default service name is used to configure the client instance.- Returns:
- an instance of the `IamPolicyManagement` client using external configuration
-
newInstance
public static IamPolicyManagement newInstance(java.lang.String serviceName)
Class method which constructs an instance of the `IamPolicyManagement` client. The specified service name is used to configure the client instance.- Parameters:
serviceName- the service name to be used when configuring the client instance- Returns:
- an instance of the `IamPolicyManagement` client using external configuration
-
listPolicies
public com.ibm.cloud.sdk.core.http.ServiceCall<PolicyCollection> listPolicies(ListPoliciesOptions listPoliciesOptions)
Get policies by attributes. Get policies and filter by attributes. While managing policies, you might want to retrieve policies in the account and filter by attribute values. This can be done through query parameters. The following attributes are supported: account_id, iam_id, access_group_id, type, service_type, sort, format and state. account_id is a required query parameter. Only policies that have the specified attributes and that the caller has read access to are returned. If the caller does not have read access to any policies an empty array is returned.- Parameters:
listPoliciesOptions- theListPoliciesOptionscontaining the options for the call- Returns:
- a
ServiceCallwith a result of typePolicyCollection
-
createPolicy
public com.ibm.cloud.sdk.core.http.ServiceCall<Policy> createPolicy(CreatePolicyOptions createPolicyOptions)
Create a policy. Creates a policy to grant access between a subject and a resource. There are two types of policies: **access** and **authorization**. A policy administrator might want to create an access policy which grants access to a user, service-id, or an access group. They might also want to create an authorization policy and setup access between services. ### Access To create an access policy, use **`"type": "access"`** in the body. The possible subject attributes are **`iam_id`** and **`access_group_id`**. Use the **`iam_id`** subject attribute for assigning access for a user or service-id. Use the **`access_group_id`** subject attribute for assigning access for an access group. Assign roles that are supported by the service or platform roles. For more information, see [IAM roles and actions](/docs/account?topic=account-iam-service-roles-actions). Use only the resource attributes supported by the service. To view a service's or the platform's supported attributes, check the [documentation](/docs?tab=all-docs). The policy resource must include either the **`serviceType`**, **`serviceName`**, **`resourceGroupId`** or **`service_group_id`** attribute and the **`accountId`** attribute. The IAM Services group (`IAM`) is a subset of account management services that includes the IAM platform services IAM Identity, IAM Access Management, IAM Users Management, IAM Groups, and future IAM services. If the subject is a locked service-id, the request will fail. ### Authorization Authorization policies are supported by services on a case by case basis. Refer to service documentation to verify their support of authorization policies. To create an authorization policy, use **`"type": "authorization"`** in the body. The subject attributes must match the supported authorization subjects of the resource. Multiple subject attributes might be provided. The following attributes are supported: serviceName, serviceInstance, region, resourceType, resource, accountId, resourceGroupId Assign roles that are supported by the service or platform roles. For more information, see [IAM roles and actions](/docs/account?topic=account-iam-service-roles-actions). The user must also have the same level of access or greater to the target resource in order to grant the role. Use only the resource attributes supported by the service. To view a service's or the platform's supported attributes, check the [documentation](/docs?tab=all-docs). Both the policy subject and the policy resource must include the **`accountId`** attributes. The policy subject must include either **`serviceName`** or **`resourceGroupId`** (or both) attributes. ### Attribute Operators Currently, only the `stringEquals` and the `stringMatch` operators are available. Resource attributes may support one or both operators. For more information, see [Assigning access by using wildcard policies](https://cloud.ibm.com/docs/account?topic=account-wildcard). ### Attribute Validations Policy attribute values must be between 1 and 1,000 characters in length. If location related attributes like geography, country, metro, region, satellite, and locationvalues are supported by the service, they are validated against Global Catalog locations.- Parameters:
createPolicyOptions- theCreatePolicyOptionscontaining the options for the call- Returns:
- a
ServiceCallwith a result of typePolicy
-
replacePolicy
public com.ibm.cloud.sdk.core.http.ServiceCall<Policy> replacePolicy(ReplacePolicyOptions replacePolicyOptions)
Update a policy. Update a policy to grant access between a subject and a resource. A policy administrator might want to update an existing policy. The policy type cannot be changed (You cannot change an access policy to an authorization policy). ### Access To update an access policy, use **`"type": "access"`** in the body. The possible subject attributes are **`iam_id`** and **`access_group_id`**. Use the **`iam_id`** subject attribute for assigning access for a user or service-id. Use the **`access_group_id`** subject attribute for assigning access for an access group. Assign roles that are supported by the service or platform roles. For more information, see [IAM roles and actions](/docs/account?topic=account-iam-service-roles-actions). Use only the resource attributes supported by the service. To view a service's or the platform's supported attributes, check the [documentation](/docs?tab=all-docs). The policy resource must include either the **`serviceType`**, **`serviceName`**, or **`resourceGroupId`** attribute and the **`accountId`** attribute.` If the subject is a locked service-id, the request will fail. ### Authorization To update an authorization policy, use **`"type": "authorization"`** in the body. The subject attributes must match the supported authorization subjects of the resource. Multiple subject attributes might be provided. The following attributes are supported: serviceName, serviceInstance, region, resourceType, resource, accountId, resourceGroupId Assign roles that are supported by the service or platform roles. For more information, see [IAM roles and actions](/docs/account?topic=account-iam-service-roles-actions). The user must also have the same level of access or greater to the target resource in order to grant the role. Use only the resource attributes supported by the service. To view a service's or the platform's supported attributes, check the [documentation](/docs?tab=all-docs). Both the policy subject and the policy resource must include the **`accountId`** attributes. The policy subject must include either **`serviceName`** or **`resourceGroupId`** (or both) attributes. ### Attribute Operators Currently, only the `stringEquals` and the `stringMatch` operators are available. Resource attributes might support one or both operators. For more information, see [Assigning access by using wildcard policies](https://cloud.ibm.com/docs/account?topic=account-wildcard). ### Attribute Validations Policy attribute values must be between 1 and 1,000 characters in length. If location related attributes like geography, country, metro, region, satellite, and locationvalues are supported by the service, they are validated against Global Catalog locations.- Parameters:
replacePolicyOptions- theReplacePolicyOptionscontaining the options for the call- Returns:
- a
ServiceCallwith a result of typePolicy
-
getPolicy
public com.ibm.cloud.sdk.core.http.ServiceCall<PolicyTemplateMetaData> getPolicy(GetPolicyOptions getPolicyOptions)
Retrieve a policy by ID. Retrieve a policy by providing a policy ID.- Parameters:
getPolicyOptions- theGetPolicyOptionscontaining the options for the call- Returns:
- a
ServiceCallwith a result of typePolicyTemplateMetaData
-
deletePolicy
public com.ibm.cloud.sdk.core.http.ServiceCall<java.lang.Void> deletePolicy(DeletePolicyOptions deletePolicyOptions)
Delete a policy by ID. Delete a policy by providing a policy ID. A policy cannot be deleted if the subject ID contains a locked service ID. If the subject of the policy is a locked service-id, the request will fail.- Parameters:
deletePolicyOptions- theDeletePolicyOptionscontaining the options for the call- Returns:
- a
ServiceCallwith a void result
-
updatePolicyState
public com.ibm.cloud.sdk.core.http.ServiceCall<Policy> updatePolicyState(UpdatePolicyStateOptions updatePolicyStateOptions)
Restore a deleted policy by ID. Restore a policy that has recently been deleted. A policy administrator might want to restore a deleted policy. To restore a policy, use **`"state": "active"`** in the body.- Parameters:
updatePolicyStateOptions- theUpdatePolicyStateOptionscontaining the options for the call- Returns:
- a
ServiceCallwith a result of typePolicy
-
listRoles
public com.ibm.cloud.sdk.core.http.ServiceCall<RoleCollection> listRoles(ListRolesOptions listRolesOptions)
Get roles by filters. Get roles based on the filters. While managing roles, you may want to retrieve roles and filter by usages. This can be done through query parameters. Currently, we only support the following attributes: account_id, service_name, service_group_id, source_service_name and policy_type. Both service_name and service_group_id attributes are mutually exclusive. Only roles that match the filter and that the caller has read access to are returned. If the caller does not have read access to any roles an empty array is returned.- Parameters:
listRolesOptions- theListRolesOptionscontaining the options for the call- Returns:
- a
ServiceCallwith a result of typeRoleCollection
-
listRoles
public com.ibm.cloud.sdk.core.http.ServiceCall<RoleCollection> listRoles()
Get roles by filters. Get roles based on the filters. While managing roles, you may want to retrieve roles and filter by usages. This can be done through query parameters. Currently, we only support the following attributes: account_id, service_name, service_group_id, source_service_name and policy_type. Both service_name and service_group_id attributes are mutually exclusive. Only roles that match the filter and that the caller has read access to are returned. If the caller does not have read access to any roles an empty array is returned.- Returns:
- a
ServiceCallwith a result of typeRoleCollection
-
createRole
public com.ibm.cloud.sdk.core.http.ServiceCall<CustomRole> createRole(CreateRoleOptions createRoleOptions)
Create a role. Creates a custom role for a specific service within the account. An account owner or a user assigned the Administrator role on the Role management service can create a custom role. Any number of actions for a single service can be mapped to the new role, but there must be at least one service-defined action to successfully create the new role.- Parameters:
createRoleOptions- theCreateRoleOptionscontaining the options for the call- Returns:
- a
ServiceCallwith a result of typeCustomRole
-
replaceRole
public com.ibm.cloud.sdk.core.http.ServiceCall<CustomRole> replaceRole(ReplaceRoleOptions replaceRoleOptions)
Update a role. Update a custom role. A role administrator might want to update an existing role by updating the display name, description, or the actions that are mapped to the role. The name, account_id, and service_name can't be changed.- Parameters:
replaceRoleOptions- theReplaceRoleOptionscontaining the options for the call- Returns:
- a
ServiceCallwith a result of typeCustomRole
-
getRole
public com.ibm.cloud.sdk.core.http.ServiceCall<CustomRole> getRole(GetRoleOptions getRoleOptions)
Retrieve a role by ID. Retrieve a role by providing a role ID.- Parameters:
getRoleOptions- theGetRoleOptionscontaining the options for the call- Returns:
- a
ServiceCallwith a result of typeCustomRole
-
deleteRole
public com.ibm.cloud.sdk.core.http.ServiceCall<java.lang.Void> deleteRole(DeleteRoleOptions deleteRoleOptions)
Delete a role by ID. Delete a role by providing a role ID.- Parameters:
deleteRoleOptions- theDeleteRoleOptionscontaining the options for the call- Returns:
- a
ServiceCallwith a void result
-
listV2Policies
public com.ibm.cloud.sdk.core.http.ServiceCall<V2PolicyCollection> listV2Policies(ListV2PoliciesOptions listV2PoliciesOptions)
Get policies by attributes. Get policies and filter by attributes. While managing policies, you might want to retrieve policies in the account and filter by attribute values. This can be done through query parameters. The following attributes are supported: account_id, iam_id, access_group_id, type, service_type, sort, format and state. account_id is a required query parameter. Only policies that have the specified attributes and that the caller has read access to are returned. If the caller does not have read access to any policies an empty array is returned.- Parameters:
listV2PoliciesOptions- theListV2PoliciesOptionscontaining the options for the call- Returns:
- a
ServiceCallwith a result of typeV2PolicyCollection
-
createV2Policy
public com.ibm.cloud.sdk.core.http.ServiceCall<V2Policy> createV2Policy(CreateV2PolicyOptions createV2PolicyOptions)
Create a policy. Creates a policy to grant access between a subject and a resource. Currently, there is one type of a v2/policy: **access**. A policy administrator might want to create an access policy that grants access to a user, service-id, or an access group. ### Access To create an access policy, use **`"type": "access"`** in the body. The supported subject attributes are **`iam_id`** and **`access_group_id`**. Use the **`iam_id`** subject attribute to assign access to a user or service-id. Use the **`access_group_id`** subject attribute to assign access to an access group. Assign roles that are supported by the service or platform roles. For more information, see [IAM roles and actions](/docs/account?topic=account-iam-service-roles-actions). Use only the resource attributes supported by the service. To view a service's or the platform's supported attributes, check the [documentation](/docs?tab=all-docs). The policy resource must include either the **`serviceType`**, **`serviceName`**, **`resourceGroupId`** or **`service_group_id`** attribute and the **`accountId`** attribute. In the rule field, you can specify a single condition by using **`key`**, **`value`**, and condition **`operator`**, or a set of **`conditions`** with a combination **`operator`**. The possible combination operators are **`and`** and **`or`**. Currently, we support two types of patterns: 1. `time-based`: Used to specify a time-based restriction Combine conditions to specify a time-based restriction (e.g., access only during business hours, during the Monday-Friday work week). For example, a policy can grant access Monday-Friday, 9:00am-5:00pm using the following rule: ```json "rule": { "operator": "and", "conditions": [{ "key": "{{environment.attributes.day_of_week}}", "operator": "dayOfWeekAnyOf", "value": ["1+00:00", "2+00:00", "3+00:00", "4+00:00", "5+00:00"] }, "key": "{{environment.attributes.current_time}}", "operator": "timeGreaterThanOrEquals", "value": "09:00:00+00:00" }, "key": "{{environment.attributes.current_time}}", "operator": "timeLessThanOrEquals", "value": "17:00:00+00:00" }] } ``` You can use the following operators in the **`key`** and **`value`** pair: ``` 'timeLessThan', 'timeLessThanOrEquals', 'timeGreaterThan', 'timeGreaterThanOrEquals', 'dateLessThan', 'dateLessThanOrEquals', 'dateGreaterThan', 'dateGreaterThanOrEquals', 'dateTimeLessThan', 'dateTimeLessThanOrEquals', 'dateTimeGreaterThan', 'dateTimeGreaterThanOrEquals', 'dayOfWeekEquals', 'dayOfWeekAnyOf' ``` The pattern field that matches the rule is required when rule is provided. For the business hour rule example above, the **`pattern`** is **`"time-based-conditions:weekly"`**. For more information, see [Time-based conditions operators](/docs/account?topic=account-iam-condition-properties&interface=ui#policy-condition-properties) and [Limiting access with time-based conditions](/docs/account?topic=account-iam-time-based&interface=ui). If the subject is a locked service-id, the request will fail. 2. `attribute-based`: Used to specify a combination of OR/AND based conditions applied on resource attributes. Combine conditions to specify an attribute-based condition using AND/OR-based operators. For example, a policy can grant access based on multiple conditions applied on the resource attributes below: ```json "pattern": "attribute-based-condition:resource:literal-and-wildcard" "rule": { "operator": "or", "conditions": [ { "operator": "and", "conditions": [ { "key": "{{resource.attributes.prefix}}", "operator": "stringEquals", "value": "home/test" }, { "key": "{{environment.attributes.delimiter}}", "operator": "stringEquals", "value": "/" } ] }, { "key": "{{resource.attributes.path}}", "operator": "stringMatch", "value": "home/David/_*" } ] } ``` In addition to satisfying the `resources` section, the policy grants permission only if either the `path` begins with `home/David/` **OR** the `prefix` is `home/test` and the `delimiter` is `/`. This mechanism helps you consolidate multiple policies in to a single policy, making policies easier to administer and stay within the policy limit for an account. View the list of operators that can be used in the condition [here](/docs/account?topic=account-wildcard#string-comparisons). ### Authorization Authorization policies are supported by services on a case by case basis. Refer to service documentation to verify their support of authorization policies. To create an authorization policy, use **`"type": "authorization"`** in the body. The subject attributes must match the supported authorization subjects of the resource. Multiple subject attributes might be provided. The following attributes are supported: serviceName, serviceInstance, region, resourceType, resource, accountId, resourceGroupId Assign roles that are supported by the service or platform roles. For more information, see [IAM roles and actions](/docs/account?topic=account-iam-service-roles-actions). The user must also have the same level of access or greater to the target resource in order to grant the role. Use only the resource attributes supported by the service. To view a service's or the platform's supported attributes, check the [documentation](/docs?tab=all-docs). Both the policy subject and the policy resource must include the **`accountId`** attributes. The policy subject must include either **`serviceName`** or **`resourceGroupId`** (or both) attributes. ### Attribute Operators Currently, only the `stringEquals`, `stringMatch`, and `stringEquals` operators are available. For more information, see [Assigning access by using wildcard policies](https://cloud.ibm.com/docs/account?topic=account-wildcard). ### Attribute Validations Policy attribute values must be between 1 and 1,000 characters in length. If location related attributes like geography, country, metro, region, satellite, and locationvalues are supported by the service, they are validated against Global Catalog locations.- Parameters:
createV2PolicyOptions- theCreateV2PolicyOptionscontaining the options for the call- Returns:
- a
ServiceCallwith a result of typeV2Policy
-
replaceV2Policy
public com.ibm.cloud.sdk.core.http.ServiceCall<V2Policy> replaceV2Policy(ReplaceV2PolicyOptions replaceV2PolicyOptions)
Update a policy. Update a policy to grant access between a subject and a resource. A policy administrator might want to update an existing policy. ### Access To update an access policy, use **`"type": "access"`** in the body. The supported subject attributes are **`iam_id`** and **`access_group_id`**. Use the **`iam_id`** subject attribute to assign access to a user or service-id. Use the **`access_group_id`** subject attribute to assign access to an access group. Assign roles that are supported by the service or platform roles. For more information, see [IAM roles and actions](/docs/account?topic=account-iam-service-roles-actions). Use only the resource attributes supported by the service. To view a service's or the platform's supported attributes, check the [documentation](/docs?tab=all-docs). The policy resource must include either the **`serviceType`**, **`serviceName`**, **`resourceGroupId`** or **`service_group_id`** attribute and the **`accountId`** attribute. In the rule field, you can specify a single condition by using **`key`**, **`value`**, and condition **`operator`**, or a set of **`conditions`** with a combination **`operator`**. The possible combination operators are **`and`** and **`or`**. Currently, we support two types of patterns: 1. `time-based`: Used to specify a time-based restriction Combine conditions to specify a time-based restriction (e.g., access only during business hours, during the Monday-Friday work week). For example, a policy can grant access Monday-Friday, 9:00am-5:00pm using the following rule: ```json "rule": { "operator": "and", "conditions": [{ "key": "{{environment.attributes.day_of_week}}", "operator": "dayOfWeekAnyOf", "value": ["1+00:00", "2+00:00", "3+00:00", "4+00:00", "5+00:00"] }, "key": "{{environment.attributes.current_time}}", "operator": "timeGreaterThanOrEquals", "value": "09:00:00+00:00" }, "key": "{{environment.attributes.current_time}}", "operator": "timeLessThanOrEquals", "value": "17:00:00+00:00" }] } ``` You can use the following operators in the **`key`** and **`value`** pair: ``` 'timeLessThan', 'timeLessThanOrEquals', 'timeGreaterThan', 'timeGreaterThanOrEquals', 'dateLessThan', 'dateLessThanOrEquals', 'dateGreaterThan', 'dateGreaterThanOrEquals', 'dateTimeLessThan', 'dateTimeLessThanOrEquals', 'dateTimeGreaterThan', 'dateTimeGreaterThanOrEquals', 'dayOfWeekEquals', 'dayOfWeekAnyOf' ``` The pattern field that matches the rule is required when rule is provided. For the business hour rule example above, the **`pattern`** is **`"time-based-conditions:weekly"`**. For more information, see [Time-based conditions operators](/docs/account?topic=account-iam-condition-properties&interface=ui#policy-condition-properties) and [Limiting access with time-based conditions](/docs/account?topic=account-iam-time-based&interface=ui). If the subject is a locked service-id, the request will fail. 2. `attribute-based`: Used to specify a combination of OR/AND based conditions applied on resource attributes. Combine conditions to specify an attribute-based condition using AND/OR-based operators. For example, a policy can grant access based on multiple conditions applied on the resource attributes below: ```json "pattern": "attribute-based-condition:resource:literal-and-wildcard" "rule": { "operator": "or", "conditions": [ { "operator": "and", "conditions": [ { "key": "{{resource.attributes.prefix}}", "operator": "stringEquals", "value": "home/test" }, { "key": "{{environment.attributes.delimiter}}", "operator": "stringEquals", "value": "/" } ] }, { "key": "{{resource.attributes.path}}", "operator": "stringMatch", "value": "home/David/_*" } ] } ``` In addition to satisfying the `resources` section, the policy grants permission only if either the `path` begins with `home/David/` **OR** the `prefix` is `home/test` and the `delimiter` is `/`. This mechanism helps you consolidate multiple policies in to a single policy, making policies easier to administer and stay within the policy limit for an account. View the list of operators that can be used in the condition [here](/docs/account?topic=account-wildcard#string-comparisons). ### Authorization To update an authorization policy, use **`"type": "authorization"`** in the body. The subject attributes must match the supported authorization subjects of the resource. Multiple subject attributes might be provided. The following attributes are supported: serviceName, serviceInstance, region, resourceType, resource, accountId, resourceGroupId Assign roles that are supported by the service or platform roles. For more information, see [IAM roles and actions](/docs/account?topic=account-iam-service-roles-actions). The user must also have the same level of access or greater to the target resource in order to grant the role. Use only the resource attributes supported by the service. To view a service's or the platform's supported attributes, check the [documentation](/docs?tab=all-docs). Both the policy subject and the policy resource must include the **`accountId`** attributes. The policy subject must include either **`serviceName`** or **`resourceGroupId`** (or both) attributes. ### Attribute Operators Currently, only the `stringEquals`, `stringMatch`, and `stringEquals` operators are available. For more information, see [Assigning access by using wildcard policies](https://cloud.ibm.com/docs/account?topic=account-wildcard). ### Attribute Validations Policy attribute values must be between 1 and 1,000 characters in length. If location related attributes like geography, country, metro, region, satellite, and locationvalues are supported by the service, they are validated against Global Catalog locations.- Parameters:
replaceV2PolicyOptions- theReplaceV2PolicyOptionscontaining the options for the call- Returns:
- a
ServiceCallwith a result of typeV2Policy
-
getV2Policy
public com.ibm.cloud.sdk.core.http.ServiceCall<V2PolicyTemplateMetaData> getV2Policy(GetV2PolicyOptions getV2PolicyOptions)
Retrieve a policy by ID. Retrieve a policy by providing a policy ID.- Parameters:
getV2PolicyOptions- theGetV2PolicyOptionscontaining the options for the call- Returns:
- a
ServiceCallwith a result of typeV2PolicyTemplateMetaData
-
deleteV2Policy
public com.ibm.cloud.sdk.core.http.ServiceCall<java.lang.Void> deleteV2Policy(DeleteV2PolicyOptions deleteV2PolicyOptions)
Delete a policy by ID. Delete a policy by providing a policy ID. A policy cannot be deleted if the subject ID contains a locked service ID. If the subject of the policy is a locked service-id, the request will fail.- Parameters:
deleteV2PolicyOptions- theDeleteV2PolicyOptionscontaining the options for the call- Returns:
- a
ServiceCallwith a void result
-
listPolicyTemplates
public com.ibm.cloud.sdk.core.http.ServiceCall<PolicyTemplateCollection> listPolicyTemplates(ListPolicyTemplatesOptions listPolicyTemplatesOptions)
List policy templates by attributes. List policy templates and filter by attributes by using query parameters. The following attributes are supported: `account_id`, `policy_service_name`, `policy_service_type`, `policy_service_group_id` and `policy_type`. `account_id` is a required query parameter. These attributes `policy_service_name`, `policy_service_type` and `policy_service_group_id` are mutually exclusive. Only policy templates that have the specified attributes and that the caller has read access to are returned. If the caller does not have read access to any policy templates an empty array is returned.- Parameters:
listPolicyTemplatesOptions- theListPolicyTemplatesOptionscontaining the options for the call- Returns:
- a
ServiceCallwith a result of typePolicyTemplateCollection
-
createPolicyTemplate
public com.ibm.cloud.sdk.core.http.ServiceCall<PolicyTemplateLimitData> createPolicyTemplate(CreatePolicyTemplateOptions createPolicyTemplateOptions)
Create a policy template. Create a policy template. Policy templates define a policy without requiring a subject, and you can use them to grant access to multiple subjects.- Parameters:
createPolicyTemplateOptions- theCreatePolicyTemplateOptionscontaining the options for the call- Returns:
- a
ServiceCallwith a result of typePolicyTemplateLimitData
-
getPolicyTemplate
public com.ibm.cloud.sdk.core.http.ServiceCall<PolicyTemplate> getPolicyTemplate(GetPolicyTemplateOptions getPolicyTemplateOptions)
Retrieve latest version of a policy template. Retrieve the latest version of a policy template by providing a policy template ID.- Parameters:
getPolicyTemplateOptions- theGetPolicyTemplateOptionscontaining the options for the call- Returns:
- a
ServiceCallwith a result of typePolicyTemplate
-
deletePolicyTemplate
public com.ibm.cloud.sdk.core.http.ServiceCall<java.lang.Void> deletePolicyTemplate(DeletePolicyTemplateOptions deletePolicyTemplateOptions)
Delete a policy template. Delete a policy template by providing the policy template ID. This deletes all versions of this template. A policy template can't be deleted if any version of the template is assigned to one or more child accounts. You must remove the policy assignments first.- Parameters:
deletePolicyTemplateOptions- theDeletePolicyTemplateOptionscontaining the options for the call- Returns:
- a
ServiceCallwith a void result
-
createPolicyTemplateVersion
public com.ibm.cloud.sdk.core.http.ServiceCall<PolicyTemplateLimitData> createPolicyTemplateVersion(CreatePolicyTemplateVersionOptions createPolicyTemplateVersionOptions)
Create a new policy template version. Create a new version of a policy template. Use this if you need to make updates to a policy template that is committed.- Parameters:
createPolicyTemplateVersionOptions- theCreatePolicyTemplateVersionOptionscontaining the options for the call- Returns:
- a
ServiceCallwith a result of typePolicyTemplateLimitData
-
listPolicyTemplateVersions
public com.ibm.cloud.sdk.core.http.ServiceCall<PolicyTemplateVersionsCollection> listPolicyTemplateVersions(ListPolicyTemplateVersionsOptions listPolicyTemplateVersionsOptions)
Retrieve policy template versions. Retrieve the versions of a policy template by providing a policy template ID.- Parameters:
listPolicyTemplateVersionsOptions- theListPolicyTemplateVersionsOptionscontaining the options for the call- Returns:
- a
ServiceCallwith a result of typePolicyTemplateVersionsCollection
-
replacePolicyTemplate
public com.ibm.cloud.sdk.core.http.ServiceCall<PolicyTemplate> replacePolicyTemplate(ReplacePolicyTemplateOptions replacePolicyTemplateOptions)
Update a policy template version. Update a specific version of a policy template. You can use this only if the version isn't committed.- Parameters:
replacePolicyTemplateOptions- theReplacePolicyTemplateOptionscontaining the options for the call- Returns:
- a
ServiceCallwith a result of typePolicyTemplate
-
deletePolicyTemplateVersion
public com.ibm.cloud.sdk.core.http.ServiceCall<java.lang.Void> deletePolicyTemplateVersion(DeletePolicyTemplateVersionOptions deletePolicyTemplateVersionOptions)
Delete a policy template version. Delete a specific version of a policy template by providing a policy template ID and version number. You can't delete a policy template version that is assigned to one or more child accounts. You must remove the policy assignments first.- Parameters:
deletePolicyTemplateVersionOptions- theDeletePolicyTemplateVersionOptionscontaining the options for the call- Returns:
- a
ServiceCallwith a void result
-
getPolicyTemplateVersion
public com.ibm.cloud.sdk.core.http.ServiceCall<PolicyTemplate> getPolicyTemplateVersion(GetPolicyTemplateVersionOptions getPolicyTemplateVersionOptions)
Retrieve a policy template version. Retrieve a policy template by providing a policy template ID and version number.- Parameters:
getPolicyTemplateVersionOptions- theGetPolicyTemplateVersionOptionscontaining the options for the call- Returns:
- a
ServiceCallwith a result of typePolicyTemplate
-
commitPolicyTemplate
public com.ibm.cloud.sdk.core.http.ServiceCall<java.lang.Void> commitPolicyTemplate(CommitPolicyTemplateOptions commitPolicyTemplateOptions)
Commit a policy template version. Commit a policy template version. You can make no further changes to the policy template once it's committed. If you need to make updates after committing a version, create a new version.- Parameters:
commitPolicyTemplateOptions- theCommitPolicyTemplateOptionscontaining the options for the call- Returns:
- a
ServiceCallwith a void result
-
listPolicyAssignments
public com.ibm.cloud.sdk.core.http.ServiceCall<PolicyTemplateAssignmentCollection> listPolicyAssignments(ListPolicyAssignmentsOptions listPolicyAssignmentsOptions)
Get policy template assignments. Get policy template assignments by attributes. The following attributes are supported: `account_id`, `template_id`, `template_version`, `sort`. `account_id` is a required query parameter. Only policy template assignments that have the specified attributes and that the caller has read access to are returned. If the caller does not have read access to any policy template assignments an empty array is returned.- Parameters:
listPolicyAssignmentsOptions- theListPolicyAssignmentsOptionscontaining the options for the call- Returns:
- a
ServiceCallwith a result of typePolicyTemplateAssignmentCollection
-
createPolicyTemplateAssignment
public com.ibm.cloud.sdk.core.http.ServiceCall<PolicyAssignmentV1Collection> createPolicyTemplateAssignment(CreatePolicyTemplateAssignmentOptions createPolicyTemplateAssignmentOptions)
Create a policy authorization template assignment. Assign a policy template to child accounts and account groups. This creates the policy in the accounts and account groups that you specify.- Parameters:
createPolicyTemplateAssignmentOptions- theCreatePolicyTemplateAssignmentOptionscontaining the options for the call- Returns:
- a
ServiceCallwith a result of typePolicyAssignmentV1Collection
-
getPolicyAssignment
public com.ibm.cloud.sdk.core.http.ServiceCall<PolicyTemplateAssignmentItems> getPolicyAssignment(GetPolicyAssignmentOptions getPolicyAssignmentOptions)
Retrieve a policy assignment. Retrieve a policy template assignment by providing a policy assignment ID.- Parameters:
getPolicyAssignmentOptions- theGetPolicyAssignmentOptionscontaining the options for the call- Returns:
- a
ServiceCallwith a result of typePolicyTemplateAssignmentItems
-
updatePolicyAssignment
public com.ibm.cloud.sdk.core.http.ServiceCall<PolicyAssignmentV1> updatePolicyAssignment(UpdatePolicyAssignmentOptions updatePolicyAssignmentOptions)
Update a policy authorization type assignment. Update a policy assignment by providing a policy assignment ID.- Parameters:
updatePolicyAssignmentOptions- theUpdatePolicyAssignmentOptionscontaining the options for the call- Returns:
- a
ServiceCallwith a result of typePolicyAssignmentV1
-
deletePolicyAssignment
public com.ibm.cloud.sdk.core.http.ServiceCall<java.lang.Void> deletePolicyAssignment(DeletePolicyAssignmentOptions deletePolicyAssignmentOptions)
Remove a policy assignment. Remove a policy template assignment by providing a policy assignment ID. You can't delete a policy assignment if the status is "in_progress".- Parameters:
deletePolicyAssignmentOptions- theDeletePolicyAssignmentOptionscontaining the options for the call- Returns:
- a
ServiceCallwith a void result
-
getSettings
public com.ibm.cloud.sdk.core.http.ServiceCall<AccountSettingsAccessManagement> getSettings(GetSettingsOptions getSettingsOptions)
Retrieve Access Management account settings by account ID. Retrieve Access Management settings for an account by providing the account ID.- Parameters:
getSettingsOptions- theGetSettingsOptionscontaining the options for the call- Returns:
- a
ServiceCallwith a result of typeAccountSettingsAccessManagement
-
updateSettings
public com.ibm.cloud.sdk.core.http.ServiceCall<AccountSettingsAccessManagement> updateSettings(UpdateSettingsOptions updateSettingsOptions)
Update Access Management account settings by account ID. Update access management settings for an account. ### External Account Identity Interaction Update the way identities within an external account are allowed to interact with the requested account by providing: * the `account_id` as a parameter * one or more external account ID(s) and state for the specific identity in the request body External account identity interaction includes the following `identity_types`: `user` (user identities that are defined as [IBMid's](https://cloud.ibm.com/docs/account?topic=account-identity-overview#users-bestpract)), `service_id` (defined as [IAM ServiceIds](https://cloud.ibm.com/docs/account?topic=account-identity-overview#serviceid-bestpract)), `service` (defined by a service’s [CRN](https://cloud.ibm.com/docs/account?topic=account-crn)). To update an Identity’s setting, the `state` and `external_allowed_accounts` fields are required. Different identity states are: * "enabled": An identity type is allowed to access resources in the account provided it has access policies on those resources. * "limited": An identity type is allowed to access resources in the account provided it has access policies on those resources AND it is associated with either the account the resources are in or one of the allowed accounts. This setting uses the "external_allowed_accounts" list. * "monitor": It has no direct impact on an Identity’s access. Instead, it creates AT events for access decisions as if the account were in a limited “state”. **Note**: The state "enabled" is a special case. In this case, access is given to all accounts and there is no need to specify a particular list. Therefore, when updating "state" to "enabled" for an identity type "external_allowed_accounts" should be left empty.- Parameters:
updateSettingsOptions- theUpdateSettingsOptionscontaining the options for the call- Returns:
- a
ServiceCallwith a result of typeAccountSettingsAccessManagement
-
listActionControlTemplates
public com.ibm.cloud.sdk.core.http.ServiceCall<ActionControlTemplateCollection> listActionControlTemplates(ListActionControlTemplatesOptions listActionControlTemplatesOptions)
List action control templates by attributes. List action control templates and filter by attributes by using query parameters. The following attributes are supported: `account_id` `account_id` is a required query parameter. Only action control templates that have the specified attributes and that the caller has read access to are returned. If the caller does not have read access to any action control templates an empty array is returned.- Parameters:
listActionControlTemplatesOptions- theListActionControlTemplatesOptionscontaining the options for the call- Returns:
- a
ServiceCallwith a result of typeActionControlTemplateCollection
-
createActionControlTemplate
public com.ibm.cloud.sdk.core.http.ServiceCall<ActionControlTemplate> createActionControlTemplate(CreateActionControlTemplateOptions createActionControlTemplateOptions)
Create an action control template. Create an action control template. Action control templates define a service action control.- Parameters:
createActionControlTemplateOptions- theCreateActionControlTemplateOptionscontaining the options for the call- Returns:
- a
ServiceCallwith a result of typeActionControlTemplate
-
getActionControlTemplate
public com.ibm.cloud.sdk.core.http.ServiceCall<ActionControlTemplate> getActionControlTemplate(GetActionControlTemplateOptions getActionControlTemplateOptions)
Retrieve the latest version of an action control template. Retrieve the latest version of an action control template by providing an action control template ID.- Parameters:
getActionControlTemplateOptions- theGetActionControlTemplateOptionscontaining the options for the call- Returns:
- a
ServiceCallwith a result of typeActionControlTemplate
-
deleteActionControlTemplate
public com.ibm.cloud.sdk.core.http.ServiceCall<java.lang.Void> deleteActionControlTemplate(DeleteActionControlTemplateOptions deleteActionControlTemplateOptions)
Delete an action control template. Delete an action control template by providing the action control template ID. This deletes all versions of this template. An action control template can't be deleted if any version of the template is assigned to one or more child accounts. You must remove the action control assignments first.- Parameters:
deleteActionControlTemplateOptions- theDeleteActionControlTemplateOptionscontaining the options for the call- Returns:
- a
ServiceCallwith a void result
-
createActionControlTemplateVersion
public com.ibm.cloud.sdk.core.http.ServiceCall<ActionControlTemplate> createActionControlTemplateVersion(CreateActionControlTemplateVersionOptions createActionControlTemplateVersionOptions)
Create a new action control template version. Create a new version of an action control template. Use this if you need to make updates to an action control template that is committed.- Parameters:
createActionControlTemplateVersionOptions- theCreateActionControlTemplateVersionOptionscontaining the options for the call- Returns:
- a
ServiceCallwith a result of typeActionControlTemplate
-
listActionControlTemplateVersions
public com.ibm.cloud.sdk.core.http.ServiceCall<ActionControlTemplateVersionsCollection> listActionControlTemplateVersions(ListActionControlTemplateVersionsOptions listActionControlTemplateVersionsOptions)
Retrieve action control template versions. Retrieve the versions of an action control template by providing an action control template ID.- Parameters:
listActionControlTemplateVersionsOptions- theListActionControlTemplateVersionsOptionscontaining the options for the call- Returns:
- a
ServiceCallwith a result of typeActionControlTemplateVersionsCollection
-
replaceActionControlTemplate
public com.ibm.cloud.sdk.core.http.ServiceCall<ActionControlTemplate> replaceActionControlTemplate(ReplaceActionControlTemplateOptions replaceActionControlTemplateOptions)
Update an action control template version. Update a specific version of an action control template. You can use this only if the version isn't committed.- Parameters:
replaceActionControlTemplateOptions- theReplaceActionControlTemplateOptionscontaining the options for the call- Returns:
- a
ServiceCallwith a result of typeActionControlTemplate
-
deleteActionControlTemplateVersion
public com.ibm.cloud.sdk.core.http.ServiceCall<java.lang.Void> deleteActionControlTemplateVersion(DeleteActionControlTemplateVersionOptions deleteActionControlTemplateVersionOptions)
Delete an action control template version. Delete a specific version of an action control template by providing an action control template ID and version number. You can't delete an action control template version that is assigned to one or more child accounts. You must remove the action control assignments first.- Parameters:
deleteActionControlTemplateVersionOptions- theDeleteActionControlTemplateVersionOptionscontaining the options for the call- Returns:
- a
ServiceCallwith a void result
-
getActionControlTemplateVersion
public com.ibm.cloud.sdk.core.http.ServiceCall<ActionControlTemplate> getActionControlTemplateVersion(GetActionControlTemplateVersionOptions getActionControlTemplateVersionOptions)
Retrieve an action control template version. Retrieve an action control template by providing an action control template ID and version number.- Parameters:
getActionControlTemplateVersionOptions- theGetActionControlTemplateVersionOptionscontaining the options for the call- Returns:
- a
ServiceCallwith a result of typeActionControlTemplate
-
commitActionControlTemplate
public com.ibm.cloud.sdk.core.http.ServiceCall<java.lang.Void> commitActionControlTemplate(CommitActionControlTemplateOptions commitActionControlTemplateOptions)
Commit an action control template version. Commit an action control template version. You cannot make any further changes to the action control template once it's committed. If you have to make updates after committing a version, create a new version.- Parameters:
commitActionControlTemplateOptions- theCommitActionControlTemplateOptionscontaining the options for the call- Returns:
- a
ServiceCallwith a void result
-
listActionControlAssignments
public com.ibm.cloud.sdk.core.http.ServiceCall<ActionControlAssignmentCollection> listActionControlAssignments(ListActionControlAssignmentsOptions listActionControlAssignmentsOptions)
Get action control template assignments. Get action control template assignments by attributes. The following attributes are supported: `account_id`, `template_id`, `template_version`, `sort`. `account_id` is a required query parameter. Only action control template assignments with the specified attributes and accessible by the caller are returned. If the caller does not have read access to any action control template assignments, an empty array is returned.- Parameters:
listActionControlAssignmentsOptions- theListActionControlAssignmentsOptionscontaining the options for the call- Returns:
- a
ServiceCallwith a result of typeActionControlAssignmentCollection
-
createActionControlTemplateAssignment
public com.ibm.cloud.sdk.core.http.ServiceCall<ActionControlAssignmentCollection> createActionControlTemplateAssignment(CreateActionControlTemplateAssignmentOptions createActionControlTemplateAssignmentOptions)
Create an action control template assignment. Assign an action control template to child accounts and account groups. This creates the action control in the accounts and account groups that you specify.- Parameters:
createActionControlTemplateAssignmentOptions- theCreateActionControlTemplateAssignmentOptionscontaining the options for the call- Returns:
- a
ServiceCallwith a result of typeActionControlAssignmentCollection
-
getActionControlAssignment
public com.ibm.cloud.sdk.core.http.ServiceCall<ActionControlAssignment> getActionControlAssignment(GetActionControlAssignmentOptions getActionControlAssignmentOptions)
Retrieve an action control assignment. Retrieve an action control template assignment by providing an action control assignment ID.- Parameters:
getActionControlAssignmentOptions- theGetActionControlAssignmentOptionscontaining the options for the call- Returns:
- a
ServiceCallwith a result of typeActionControlAssignment
-
updateActionControlAssignment
public com.ibm.cloud.sdk.core.http.ServiceCall<ActionControlAssignment> updateActionControlAssignment(UpdateActionControlAssignmentOptions updateActionControlAssignmentOptions)
Update an action control assignment. Update an action control assignment by providing an action control assignment ID.- Parameters:
updateActionControlAssignmentOptions- theUpdateActionControlAssignmentOptionscontaining the options for the call- Returns:
- a
ServiceCallwith a result of typeActionControlAssignment
-
deleteActionControlAssignment
public com.ibm.cloud.sdk.core.http.ServiceCall<java.lang.Void> deleteActionControlAssignment(DeleteActionControlAssignmentOptions deleteActionControlAssignmentOptions)
Remove an action control assignment. Remove an action control template assignment by providing an action control assignment ID. You can't delete an action control assignment if the status is "in_progress".- Parameters:
deleteActionControlAssignmentOptions- theDeleteActionControlAssignmentOptionscontaining the options for the call- Returns:
- a
ServiceCallwith a void result
-
-