Class: Google::Apis::IapV1::PolicyDelegationSettings

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/iap_v1/classes.rb,
lib/google/apis/iap_v1/representations.rb,
lib/google/apis/iap_v1/representations.rb

Overview

PolicyDelegationConfig allows google-internal teams to use IAP for apps hosted in a tenant project. Using these settings, the app can delegate permission check to happen against the linked customer project. This is only ever supposed to be used by google internal teams, hence the restriction on the proto.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ PolicyDelegationSettings

Returns a new instance of PolicyDelegationSettings.



726
727
728
# File 'lib/google/apis/iap_v1/classes.rb', line 726

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#iam_permissionString

Permission to check in IAM. Corresponds to the JSON property iamPermission

Returns:

  • (String)


704
705
706
# File 'lib/google/apis/iap_v1/classes.rb', line 704

def iam_permission
  @iam_permission
end

#iam_service_nameString

The DNS name of the service (e.g. "resourcemanager.googleapis.com"). This should be the domain name part of the full resource names (see https://aip.dev/ 122#full-resource-names), which is usually the same as IamServiceSpec.service of the service where the resource type is defined. Corresponds to the JSON property iamServiceName

Returns:

  • (String)


712
713
714
# File 'lib/google/apis/iap_v1/classes.rb', line 712

def iam_service_name
  @iam_service_name
end

#policy_nameGoogle::Apis::IapV1::PolicyName

An internal name for an IAM policy, based on the resource to which the policy applies. Not to be confused with a resource's external full resource name. For more information on this distinction, see go/iam-full-resource-names. Corresponds to the JSON property policyName



719
720
721
# File 'lib/google/apis/iap_v1/classes.rb', line 719

def policy_name
  @policy_name
end

#resourceGoogle::Apis::IapV1::Resource

IAM resource to check permission on Corresponds to the JSON property resource



724
725
726
# File 'lib/google/apis/iap_v1/classes.rb', line 724

def resource
  @resource
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



731
732
733
734
735
736
# File 'lib/google/apis/iap_v1/classes.rb', line 731

def update!(**args)
  @iam_permission = args[:iam_permission] if args.key?(:iam_permission)
  @iam_service_name = args[:iam_service_name] if args.key?(:iam_service_name)
  @policy_name = args[:policy_name] if args.key?(:policy_name)
  @resource = args[:resource] if args.key?(:resource)
end