Class OutboundTargetDefinition
java.lang.Object
io.helidon.security.providers.httpsign.OutboundTargetDefinition
Configuration of outbound target to sign outgoing requests.
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic final class
Fluent API builder to buildOutboundTargetDefinition
instances. -
Method Summary
Modifier and TypeMethodDescriptionAlgorithm used by this signature.boolean
Whether to use old approach to EOL processing in signed data.Create a builder from configuration.Get a new builder .static OutboundTargetDefinition
Create an instance from configuration.header()
Header to store signature in.Optional<byte[]>
Shared secret for HMAC based algorithms.Private key configuration for RSA based algorithms.keyId()
Key id of this service (will be mapped by target service to validate signature).Configuration of method to headers to define headers to be signed.When header type is set toHttpSignHeader.CUSTOM
, this handler will be used to create header in outbound request.
-
Method Details
-
builder
Get a new builder .- Parameters:
keyId
- keyId to send with signature- Returns:
- builder instance
-
builder
Create a builder from configuration.- Parameters:
config
- configuration located at this target, expects "key-id" to be a child- Returns:
- builder instance
-
create
Create an instance from configuration.- Parameters:
config
- configuration located at this outbound key, expects "key-id" to be a child- Returns:
- new instance configured from config
-
keyId
Key id of this service (will be mapped by target service to validate signature).- Returns:
- key id string (may be an API key, key fingerprint, service name etc.)
-
algorithm
Algorithm used by this signature.- Returns:
- algorithm
-
keyConfig
Private key configuration for RSA based algorithms.- Returns:
- private key location and configuration or empty optional if not configured
-
header
Header to store signature in.- Returns:
- header type
-
signedHeadersConfig
Configuration of method to headers to define headers to be signed.The following headers have special handling:
- date - if not present and required, will be added to request
- host - if not present and required, will be added to request from target URI
- (request-target) - as per spec, calculated from method and path
- authorization - if
header()
returnsHttpSignHeader.AUTHORIZATION
it is ignored
- Returns:
- configuration of headers to be signed
-
tokenHandler
When header type is set toHttpSignHeader.CUSTOM
, this handler will be used to create header in outbound request.- Returns:
- token handler
-
backwardCompatibleEol
public boolean backwardCompatibleEol()Whether to use old approach to EOL processing in signed data. The old approach (pre Helidon 3.0.0) was adding a trailing end of line, which is not aligned with the specification proposal.- Returns:
- whether to use old approach (trailing EOL -
true
), or correct approach (false
รบ
-