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?)
Whether the provided attribute propagation settings should be evaluated on user requests.
-
#expression ⇒ String
Raw string CEL expression.
-
#output_credentials ⇒ Array<String>
Which output credentials attributes selected by the CEL expression should be propagated in.
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.
227 228 229 |
# File 'lib/google/apis/iap_v1/classes.rb', line 227 def initialize(**args) update!(**args) end |
Instance Attribute Details
#enable ⇒ Boolean Also known as: enable?
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
199 200 201 |
# File 'lib/google/apis/iap_v1/classes.rb', line 199 def enable @enable end |
#expression ⇒ String
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
218 219 220 |
# File 'lib/google/apis/iap_v1/classes.rb', line 218 def expression @expression end |
#output_credentials ⇒ Array<String>
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
225 226 227 |
# File 'lib/google/apis/iap_v1/classes.rb', line 225 def output_credentials @output_credentials end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
232 233 234 235 236 |
# File 'lib/google/apis/iap_v1/classes.rb', line 232 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 |