Class: AWSCDK::IAM::UnknownPrincipal
- Inherits:
-
Jsii::Object
- Object
- Jsii::Object
- AWSCDK::IAM::UnknownPrincipal
- Includes:
- IPrincipal
- Defined in:
- iam/unknown_principal.rb
Overview
A principal for use in resources that need to have a role but it's unknown.
Some resources have roles associated with them which they assume, such as Lambda Functions, CodeBuild projects, StepFunctions machines, etc.
When those resources are imported, their actual roles are not always imported with them. When that happens, we use an instance of this class instead, which will add user warnings when statements are attempted to be added to it.
Class Method Summary collapse
Instance Method Summary collapse
-
#add_to_policy(statement) ⇒ Boolean
Add to the policy of this principal.
-
#add_to_principal_policy(statement) ⇒ AWSCDK::IAM::AddToPrincipalPolicyResult
Add to the policy of this principal.
-
#assume_role_action ⇒ String
When this Principal is used in an AssumeRole policy, the action to use.
-
#grant_principal ⇒ AWSCDK::IAM::IPrincipal
The principal to grant permissions to.
-
#initialize(props) ⇒ UnknownPrincipal
constructor
A new instance of UnknownPrincipal.
-
#policy_fragment ⇒ AWSCDK::IAM::PrincipalPolicyFragment
Return the policy fragment that identifies this principal in a Policy.
Constructor Details
#initialize(props) ⇒ UnknownPrincipal
Returns a new instance of UnknownPrincipal.
18 19 20 21 22 |
# File 'iam/unknown_principal.rb', line 18 def initialize(props) props = props.is_a?(Hash) ? ::AWSCDK::IAM::UnknownPrincipalProps.new(**props.transform_keys(&:to_sym)) : props Jsii::Type.check_type(props, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfaWFtLlVua25vd25QcmluY2lwYWxQcm9wcyJ9")), "props") Jsii::Object.instance_method(:initialize).bind(self).call(props) end |
Class Method Details
.jsii_overridable_methods ⇒ Object
24 25 26 27 28 29 30 31 32 |
# File 'iam/unknown_principal.rb', line 24 def self.jsii_overridable_methods { :assume_role_action => { kind: :property, name: "assumeRoleAction", is_optional: false }, :grant_principal => { kind: :property, name: "grantPrincipal", is_optional: false }, :policy_fragment => { kind: :property, name: "policyFragment", is_optional: false }, :add_to_policy => { kind: :method, name: "addToPolicy", is_optional: false }, :add_to_principal_policy => { kind: :method, name: "addToPrincipalPolicy", is_optional: false }, } end |
Instance Method Details
#add_to_policy(statement) ⇒ Boolean
Add to the policy of this principal.
59 60 61 62 |
# File 'iam/unknown_principal.rb', line 59 def add_to_policy(statement) Jsii::Type.check_type(statement, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfaWFtLlBvbGljeVN0YXRlbWVudCJ9")), "statement") jsii_call_method("addToPolicy", [statement]) end |
#add_to_principal_policy(statement) ⇒ AWSCDK::IAM::AddToPrincipalPolicyResult
Add to the policy of this principal.
68 69 70 71 |
# File 'iam/unknown_principal.rb', line 68 def add_to_principal_policy(statement) Jsii::Type.check_type(statement, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfaWFtLlBvbGljeVN0YXRlbWVudCJ9")), "statement") jsii_call_method("addToPrincipalPolicy", [statement]) end |
#assume_role_action ⇒ String
When this Principal is used in an AssumeRole policy, the action to use.
37 38 39 |
# File 'iam/unknown_principal.rb', line 37 def assume_role_action() jsii_get_property("assumeRoleAction") end |
#grant_principal ⇒ AWSCDK::IAM::IPrincipal
The principal to grant permissions to.
44 45 46 |
# File 'iam/unknown_principal.rb', line 44 def grant_principal() jsii_get_property("grantPrincipal") end |
#policy_fragment ⇒ AWSCDK::IAM::PrincipalPolicyFragment
Return the policy fragment that identifies this principal in a Policy.
51 52 53 |
# File 'iam/unknown_principal.rb', line 51 def policy_fragment() jsii_get_property("policyFragment") end |