Class: AWSCDK::CodeGuruProfiler::ProfilingGroupGrants

Inherits:
Jsii::Object
  • Object
show all
Defined in:
code_guru_profiler/profiling_group_grants.rb

Overview

Collection of grant methods for a IProfilingGroupRef.

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(*args) ⇒ ProfilingGroupGrants

Returns a new instance of ProfilingGroupGrants.

Raises:

  • (NoMethodError)


8
9
10
# File 'code_guru_profiler/profiling_group_grants.rb', line 8

def initialize(*args)
  raise NoMethodError, "aws-cdk-lib.aws_codeguruprofiler.ProfilingGroupGrants does not have a visible constructor; use the provided factory methods"
end

Class Method Details

.from_profiling_group(resource) ⇒ AWSCDK::CodeGuruProfiler::ProfilingGroupGrants

Creates grants for ProfilingGroupGrants.

Parameters:

Returns:

  • (AWSCDK::CodeGuruProfiler::ProfilingGroupGrants)


25
26
27
28
# File 'code_guru_profiler/profiling_group_grants.rb', line 25

def self.from_profiling_group(resource)
  Jsii::Type.check_type(resource, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5pbnRlcmZhY2VzLmF3c19jb2RlZ3VydXByb2ZpbGVyLklQcm9maWxpbmdHcm91cFJlZiJ9")), "resource")
  Jsii::Kernel.instance.call_static("aws-cdk-lib.aws_codeguruprofiler.ProfilingGroupGrants", "fromProfilingGroup", [resource])
end

.jsii_overridable_methodsObject



12
13
14
15
16
17
18
19
# File 'code_guru_profiler/profiling_group_grants.rb', line 12

def self.jsii_overridable_methods
  {
    :resource => { kind: :property, name: "resource", is_optional: false },
    :actions => { kind: :method, name: "actions", is_optional: false },
    :publish => { kind: :method, name: "publish", is_optional: false },
    :read => { kind: :method, name: "read", is_optional: false },
  }
end

Instance Method Details

#actions(grantee, actions, options = nil) ⇒ AWSCDK::IAM::Grant

Grant the given identity custom permissions.

Parameters:

Returns:



41
42
43
44
45
46
47
# File 'code_guru_profiler/profiling_group_grants.rb', line 41

def actions(grantee, actions, options = nil)
  Jsii::Type.check_type(grantee, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfaWFtLklHcmFudGFibGUifQ==")), "grantee")
  Jsii::Type.check_type(actions, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "actions")
  options = options.is_a?(Hash) ? ::AWSCDK::PermissionsOptions.new(**options.transform_keys(&:to_sym)) : options
  Jsii::Type.check_type(options, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5QZXJtaXNzaW9uc09wdGlvbnMifQ==")), "options") unless options.nil?
  jsii_call_method("actions", [grantee, actions, options])
end

#publish(grantee) ⇒ AWSCDK::IAM::Grant

Grant access to publish profiling information to the Profiling Group to the given identity.

This will grant the following permissions:

  • codeguru-profiler:ConfigureAgent
  • codeguru-profiler:PostAgentProfile

Parameters:

Returns:



58
59
60
61
# File 'code_guru_profiler/profiling_group_grants.rb', line 58

def publish(grantee)
  Jsii::Type.check_type(grantee, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfaWFtLklHcmFudGFibGUifQ==")), "grantee")
  jsii_call_method("publish", [grantee])
end

#read(grantee) ⇒ AWSCDK::IAM::Grant

Grant access to read profiling information from the Profiling Group to the given identity.

This will grant the following permissions:

  • codeguru-profiler:GetProfile
  • codeguru-profiler:DescribeProfilingGroup

Parameters:

Returns:



72
73
74
75
# File 'code_guru_profiler/profiling_group_grants.rb', line 72

def read(grantee)
  Jsii::Type.check_type(grantee, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfaWFtLklHcmFudGFibGUifQ==")), "grantee")
  jsii_call_method("read", [grantee])
end

#resourceAWSCDK::Interfaces::AWSCodeguruprofiler::IProfilingGroupRef



31
32
33
# File 'code_guru_profiler/profiling_group_grants.rb', line 31

def resource()
  jsii_get_property("resource")
end