Class: Google::Apis::IapV1::AttributePropagationSettings
- Inherits:
-
Object
- Object
- Google::Apis::IapV1::AttributePropagationSettings
- 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
Configuration for propagating attributes to applications protected by IAP.
Instance Attribute Summary collapse
-
#enable ⇒ Boolean
(also: #enable?)
Optional.
-
#expression ⇒ String
Optional.
-
#output_credentials ⇒ Array<String>
Optional.
Instance Method Summary collapse
-
#initialize(**args) ⇒ AttributePropagationSettings
constructor
A new instance of AttributePropagationSettings.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ AttributePropagationSettings
Returns a new instance of AttributePropagationSettings.
243 244 245 |
# File 'lib/google/apis/iap_v1/classes.rb', line 243 def initialize(**args) update!(**args) end |
Instance Attribute Details
#enable ⇒ Boolean Also known as: enable?
Optional. Whether the provided attribute propagation settings should be
evaluated on user requests. If set to true, attributes returned from the
expression will be propagated in the set output credentials.
Corresponds to the JSON property enable
215 216 217 |
# File 'lib/google/apis/iap_v1/classes.rb', line 215 def enable @enable end |
#expression ⇒ String
Optional. Raw string CEL expression. Must return a list of attributes. A
maximum of 45 attributes can be selected. Expressions can select different
attribute types from attributes: attributes.saml_attributes, attributes.
iap_attributes. The following functions are supported: - filter .filter(, ):
Returns a subset of where is true for every item. - in in: Returns
true if contains. - selectByName .selectByName(): Returns the
attribute in with the given name, otherwise returns empty. - emitAs .
emitAs(): Sets the name field to the given for propagation in selected
output credentials. - strict .strict(): Ignores the x-goog-iap-attr-
prefix for the provided when propagating with the `HEADER` output
credential, such as request headers. - append `.append()` OR `.append()`:
Appends the provided or to the end of. Example expression:
attributes.saml_attributes.filter(x, x.name in ['test']).append(attributes.
iap_attributes.selectByName('exact').emitAs('custom').strict())
Corresponds to the JSON property expression
234 235 236 |
# File 'lib/google/apis/iap_v1/classes.rb', line 234 def expression @expression end |
#output_credentials ⇒ Array<String>
Optional. Which output credentials attributes selected by the CEL expression
should be propagated in. All attributes will be fully duplicated in each
selected output credential.
Corresponds to the JSON property outputCredentials
241 242 243 |
# File 'lib/google/apis/iap_v1/classes.rb', line 241 def output_credentials @output_credentials end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
248 249 250 251 252 |
# File 'lib/google/apis/iap_v1/classes.rb', line 248 def update!(**args) @enable = args[:enable] if args.key?(:enable) @expression = args[:expression] if args.key?(:expression) @output_credentials = args[:output_credentials] if args.key?(:output_credentials) end |