ControlCatalog / Client / get_control
get_control#
- ControlCatalog.Client.get_control(**kwargs)#
Returns details about a specific control, most notably a list of Amazon Web Services Regions where this control is supported. Input a value for the ControlArn parameter, in ARN form.
GetControl
accepts controltower or controlcatalog control ARNs as input. Returns a controlcatalog ARN format.In the API response, controls that have the value
GLOBAL
in theScope
field do not show theDeployableRegions
field, because it does not apply. Controls that have the valueREGIONAL
in theScope
field return a value for theDeployableRegions
field, as shown in the example.See also: AWS API Documentation
Request Syntax
response = client.get_control( ControlArn='string' )
- Parameters:
ControlArn (string) –
[REQUIRED]
The Amazon Resource Name (ARN) of the control. It has one of the following formats:
Global format
arn:{PARTITION}:controlcatalog:::control/{CONTROL_CATALOG_OPAQUE_ID}
Or Regional format
arn:{PARTITION}:controltower:{REGION}::control/{CONTROL_TOWER_OPAQUE_ID}
Here is a more general pattern that covers Amazon Web Services Control Tower and Control Catalog ARNs:
^arn:(aws(?:[-a-z]*)?):(controlcatalog|controltower):[a-zA-Z0-9-]*::control/[0-9a-zA-Z_\\-]+$
- Return type:
dict
- Returns:
Response Syntax
{ 'Arn': 'string', 'Name': 'string', 'Description': 'string', 'Behavior': 'PREVENTIVE'|'PROACTIVE'|'DETECTIVE', 'RegionConfiguration': { 'Scope': 'GLOBAL'|'REGIONAL', 'DeployableRegions': [ 'string', ] }, 'Implementation': { 'Type': 'string' }, 'Parameters': [ { 'Name': 'string' }, ] }
Response Structure
(dict) –
Arn (string) –
The Amazon Resource Name (ARN) of the control.
Name (string) –
The display name of the control.
Description (string) –
A description of what the control does.
Behavior (string) –
A term that identifies the control’s functional behavior. One of
Preventive
,Detective
,Proactive
RegionConfiguration (dict) –
Returns information about the control, including the scope of the control, if enabled, and the Regions in which the control currently is available for deployment. For more information about scope, see Global services.
If you are applying controls through an Amazon Web Services Control Tower landing zone environment, remember that the values returned in the
RegionConfiguration
API operation are not related to the governed Regions in your landing zone. For example, if you are governing RegionsA
,B
,andC
while the control is available in RegionsA
,B
, C,
andD
, you’d see a response withDeployableRegions
ofA
,B
,C
, andD
for a control withREGIONAL
scope, even though you may not intend to deploy the control in RegionD
, because you do not govern it through your landing zone.Scope (string) –
The coverage of the control, if deployed. Scope is an enumerated type, with value
Regional
, orGlobal
. A control with Global scope is effective in all Amazon Web Services Regions, regardless of the Region from which it is enabled, or to which it is deployed. A control implemented by an SCP is usually Global in scope. A control with Regional scope has operations that are restricted specifically to the Region from which it is enabled and to which it is deployed. Controls implemented by Config rules and CloudFormation hooks usually are Regional in scope. Security Hub controls usually are Regional in scope.DeployableRegions (list) –
Regions in which the control is available to be deployed.
(string) –
Implementation (dict) –
Returns information about the control, as an
ImplementationDetails
object that shows the underlying implementation type for a control.Type (string) –
A string that describes a control’s implementation type.
Parameters (list) –
Returns an array of
ControlParameter
objects that specify the parameters a control supports. An empty list is returned for controls that don’t support parameters.(dict) –
Four types of control parameters are supported.
AllowedRegions: List of Amazon Web Services Regions exempted from the control. Each string is expected to be an Amazon Web Services Region code. This parameter is mandatory for the OU Region deny control, CT.MULTISERVICE.PV.1. Example:
["us-east-1","us-west-2"]
ExemptedActions: List of Amazon Web Services IAM actions exempted from the control. Each string is expected to be an IAM action. Example:
["logs:DescribeLogGroups","logs:StartQuery","logs:GetQueryResults"]
ExemptedPrincipalArns: List of Amazon Web Services IAM principal ARNs exempted from the control. Each string is expected to be an IAM principal that follows the pattern
^arn:(aws|aws-us-gov):(iam|sts)::.+:.+$
Example:["arn:aws:iam::*:role/ReadOnly","arn:aws:sts::*:assumed-role/ReadOnly/*"]
ExemptedResourceArns: List of resource ARNs exempted from the control. Each string is expected to be a resource ARN. Example:
["arn:aws:s3:::my-bucket-name"]
Name (string) –
The parameter name. This name is the parameter
key
when you call EnableControl or UpdateEnabledControl.
Exceptions
ControlCatalog.Client.exceptions.ResourceNotFoundException
ControlCatalog.Client.exceptions.AccessDeniedException
ControlCatalog.Client.exceptions.InternalServerException
ControlCatalog.Client.exceptions.ValidationException
ControlCatalog.Client.exceptions.ThrottlingException