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.
242 243 244 |
# File 'lib/google/apis/iap_v1/classes.rb', line 242 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
214 215 216 |
# File 'lib/google/apis/iap_v1/classes.rb', line 214 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
233 234 235 |
# File 'lib/google/apis/iap_v1/classes.rb', line 233 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
240 241 242 |
# File 'lib/google/apis/iap_v1/classes.rb', line 240 def output_credentials @output_credentials end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
247 248 249 250 251 |
# File 'lib/google/apis/iap_v1/classes.rb', line 247 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 |