Class: WSDL::Security::RequestPolicy
- Inherits:
-
Object
- Object
- WSDL::Security::RequestPolicy
show all
- Defined in:
- lib/wsdl/security/request_policy.rb
Overview
Immutable request-side WS-Security policy.
This policy captures what should be applied to outgoing requests,
but does not hold per-request runtime artifacts (IDs, nonce, timestamps).
Runtime objects are created by RequestMaterializer for each call.
Defined Under Namespace
Classes: Signature, Timestamp, UsernameToken
Instance Attribute Summary collapse
Class Method Summary
collapse
Instance Method Summary
collapse
Constructor Details
#initialize(username_token: nil, timestamp: nil, signature: nil) ⇒ RequestPolicy
Returns a new instance of RequestPolicy.
31
32
33
34
35
36
|
# File 'lib/wsdl/security/request_policy.rb', line 31
def initialize(username_token: nil, timestamp: nil, signature: nil)
@username_token = username_token
@timestamp = timestamp
@signature = signature
freeze
end
|
Instance Attribute Details
45
46
47
|
# File 'lib/wsdl/security/request_policy.rb', line 45
def signature
@signature
end
|
42
43
44
|
# File 'lib/wsdl/security/request_policy.rb', line 42
def timestamp
@timestamp
end
|
39
40
41
|
# File 'lib/wsdl/security/request_policy.rb', line 39
def username_token
@username_token
end
|
Class Method Details
Creates an empty request policy.
24
25
26
|
# File 'lib/wsdl/security/request_policy.rb', line 24
def self.empty
new
end
|
Instance Method Details
66
67
68
|
# File 'lib/wsdl/security/request_policy.rb', line 66
def configured?
username_token? || timestamp? || signature?
end
|
#explicit_namespace_prefixes? ⇒ Boolean
96
97
98
|
# File 'lib/wsdl/security/request_policy.rb', line 96
def explicit_namespace_prefixes?
@signature&.options&.explicit_namespace_prefixes? || false
end
|
#sign_addressing? ⇒ Boolean
91
92
93
|
# File 'lib/wsdl/security/request_policy.rb', line 91
def sign_addressing?
@signature&.options&.sign_addressing? || false
end
|
#sign_timestamp? ⇒ Boolean
86
87
88
|
# File 'lib/wsdl/security/request_policy.rb', line 86
def sign_timestamp?
(@signature&.options&.sign_timestamp? && timestamp?) || false
end
|
#signature? ⇒ Boolean
81
82
83
|
# File 'lib/wsdl/security/request_policy.rb', line 81
def signature?
!@signature.nil?
end
|
#timestamp? ⇒ Boolean
76
77
78
|
# File 'lib/wsdl/security/request_policy.rb', line 76
def timestamp?
!@timestamp.nil?
end
|
#username_token? ⇒ Boolean
71
72
73
|
# File 'lib/wsdl/security/request_policy.rb', line 71
def username_token?
!@username_token.nil?
end
|
#with_signature(signature) ⇒ RequestPolicy
61
62
63
|
# File 'lib/wsdl/security/request_policy.rb', line 61
def with_signature(signature)
self.class.new(username_token: @username_token, timestamp: @timestamp, signature:)
end
|
#with_timestamp(timestamp) ⇒ RequestPolicy
55
56
57
|
# File 'lib/wsdl/security/request_policy.rb', line 55
def with_timestamp(timestamp)
self.class.new(username_token: @username_token, timestamp:, signature: @signature)
end
|
#with_username_token(username_token) ⇒ RequestPolicy
49
50
51
|
# File 'lib/wsdl/security/request_policy.rb', line 49
def with_username_token(username_token)
self.class.new(username_token:, timestamp: @timestamp, signature: @signature)
end
|