CodeGuruProfiler / Client / put_permission
put_permission#
- CodeGuruProfiler.Client.put_permission(**kwargs)#
Adds permissions to a profiling group’s resource-based policy that are provided using an action group. If a profiling group doesn’t have a resource-based policy, one is created for it using the permissions in the action group and the roles and users in the
principals
parameter.`` <p> The one supported action group that can be added is <code>agentPermission</code> which grants <code>ConfigureAgent</code> and <code>PostAgent</code> permissions. For more information, see <a href=”https://docs.aws.amazon.com/codeguru/latest/profiler-ug/resource-based-policies.html”>Resource-based policies in CodeGuru Profiler</a> in the <i>Amazon CodeGuru Profiler User Guide</i>, <a href=”https://docs.aws.amazon.com/codeguru/latest/profiler-api/API_ConfigureAgent.html”> <code>ConfigureAgent</code> </a>, and <a href=”https://docs.aws.amazon.com/codeguru/latest/profiler-api/API_PostAgentProfile.html”> <code>PostAgentProfile</code> </a>. </p> <p> The first time you call <code>PutPermission</code> on a profiling group, do not specify a <code>revisionId</code> because it doesn’t have a resource-based policy. Subsequent calls must provide a <code>revisionId</code> to specify which revision of the resource-based policy to add the permissions to. </p> <p> The response contains the profiling group’s JSON-formatted resource policy. </p> ``
See also: AWS API Documentation
Request Syntax
response = client.put_permission( actionGroup='agentPermissions', principals=[ 'string', ], profilingGroupName='string', revisionId='string' )
- Parameters:
actionGroup (string) –
[REQUIRED]
Specifies an action group that contains permissions to add to a profiling group resource. One action group is supported,
agentPermissions
, which grants permission to perform actions required by the profiling agent,ConfigureAgent
andPostAgentProfile
permissions.principals (list) –
[REQUIRED]
A list ARNs for the roles and users you want to grant access to the profiling group. Wildcards are not are supported in the ARNs.
(string) –
profilingGroupName (string) –
[REQUIRED]
The name of the profiling group to grant access to.
revisionId (string) – A universally unique identifier (UUID) for the revision of the policy you are adding to the profiling group. Do not specify this when you add permissions to a profiling group for the first time. If a policy already exists on the profiling group, you must specify the
revisionId
.
- Return type:
dict
- Returns:
Response Syntax
{ 'policy': 'string', 'revisionId': 'string' }
Response Structure
(dict) –
The structure representing the
putPermissionResponse
.policy (string) –
The JSON-formatted resource-based policy on the profiling group that includes the added permissions.
revisionId (string) –
A universally unique identifier (UUID) for the revision of the resource-based policy that includes the added permissions. The JSON-formatted policy is in the
policy
element of the response.
Exceptions
CodeGuruProfiler.Client.exceptions.InternalServerException
CodeGuruProfiler.Client.exceptions.ConflictException
CodeGuruProfiler.Client.exceptions.ValidationException
CodeGuruProfiler.Client.exceptions.ThrottlingException
CodeGuruProfiler.Client.exceptions.ResourceNotFoundException