- Requires Java 17 or later (#100) (#111)
- Requires Jackson 3
- Modified interface structure
- Requires Vault 1.3 (#121)
-
Split client interface to group feature sets together (#113)
Use
connector.sys(),.kv2(),.token(),.appRole()and.transit()to access respective feature sets.
- Remove deprecated
read...Credentials()methods (#112)
- Updated Jackson to 3.1.0 (#116) (#118) (#119) (#123)
- Tested against Vault 1.3 to 1.21 (#117)
- Tested against OpenBao 2.5 (#122)
- Updated Jackson to 2.20.0 (#106)
- Extract API paths into a utility class (#108)
- Encode user-provided URL parts (#109)
- Add
token_bound_cidrsfield toAppRoleSecretmodel (#110)
- Prevent potential off-by-1 error in internal
mapOf()helper (#107)
- Updated Jackson to 2.19.1 (#101)
- Use
Longfor numeric TTL fields (#103) (#104)
- Tested against Vault 1.2 to 1.20 (#102)
- Use
lookup-selffor token check instead oflookup(#98) (#99)
- Updated Jackson to 2.19.0 (#97)
read...Credentials()methods for specific database mounts (#92)
- Support Vault transit API (#89)
- Support PEM certificate string from
VAULT_CACERTenvironment variable (#93)
- Replace deprecated
java.net.URLusage withjava.net.URI(#94)
- Fix initialization from environment without explicit port
- Updated Jackson to 2.18.3 (#90)
- Tested against Vault 1.2 to 1.19
- Remove deprecated
get...TimeString()on model classes (#77) - Drop support for deprecated
App-IDauth backend (#61) (#78)
- Add jackson-annotations requirement to module-info (#84)
- Updated Jackson to 2.18.2 (#85)
- Tested against Vault 1.2 to 1.18
- Updated Jackson to 2.18.0 (#80)
- Remove
Automatic-Module-Namefrom JAR manifest (#79)
- Simplify JSON parsing in error handler
- Add new fields from Vault 1.16 and 1.17 to
HealthResponseecho_duration_msclock_skew_msreplication_primary_canary_age_msenterprise
- Add missing
num_usesfield toAuthData - Add
mount_typeattribute to common response model - Add
authattribute to common response model - Add
custom_metadata,cas_requiredanddelete_version_afterfields for KVv2 metadata - Generate and attach CycloneDX SBOM
- Rename
enable_local_secret_idtolocal_secret_idsinAppRolemodel
- Updated Jackson to 2.17.1
- Tested against Vault 1.2 to 1.17
get...TimeString()methods on various model classes are now deprecated
- Parse timestamps as
ZonedDateTimeinstead ofStringrepresentation - Remove redundant
java.baserequirement from module-info.java (#69) - Close Java HTTP Client when running on Java 21 or later (#70)
- Add MFA requirements tu
AuthResponse(#71) - Extend
AuthMethoddata model (#72)
- Updated Jackson to 2.16.0
- Fixed JSON type conversion in
SecretResponse#get(String, Class)(#67)
- Tested against Vault 1.2 to 1.15
- Use
[+-]XX:XXnotation for timezone in date/time parsing
- Use explicit UTF-8 encoding for parsing responses
- Updated Jackson to 2.15.2
- Tested against Vault 1.2.0 to 1.13.3
- AppID components (deprecated since 0.4) are marked for removal with the next major release
- Updated Jackson to 2.14.2
- Minor internal refactoring
- Tested against Vault 1.2.0 to 1.12.2
- Updated Jackson to 2.13.4.2
- Tested against Vault 1.2.0 to 1.12.0
- Disable AppID tests for Vault 1.12 and above (auth method removed)
- Tested with Java 19
- Updated Jackson to 2.13.3
- Tested against Vault 1.11.2
- Tested with Java 18
- Use
replication_performance_modeinstead ofreplication_perf_modein health response.
- Add
migration,recovery_sealandstorage_typefields toSealReponsemodel - Add support for
wrap_infoin data response models - Dependency updates
- Model and response classes implement
Serializable(#57) - Split
SercretResponseintoPlainSecretResponseandMetaSecretResponsesubclasses (common API unchanged) - Add missing fields to
AuthMethodmodel - Add support for (dis)allowed policy glob patterns in
TokenRole - Add request ID to data response models
- Tested against Vault 1.10.1
- Make
HTTPVaultConnectorBuilder#withPort(Integer)null-safe (#56) - Make system-lambda dependency test-only (#58)
- Tested against Vault 1.9.0
- Requires Java 11 or later
- Builder invocation has changed, use
HTTPVaultConnector.builder()....build()
- Remove deprecated
VaultConnectorFactoryin favor ofVaultConnectorBuilderwith identical API - Remove deprecated
AppRoleBuilderandTokenBuilderin favor ofAppRole.BuilderandToken.Builder - Remove deprecated
Period,PolicyandPoliciesmethods fromAppRolein favor ofToken-prefixed versions - Remove deprecated
SecretResponse#getValue()method, useget("value")instead - Remove deprecated convenience methods for interaction with "secret" mount
- Use pre-sized map objects for fixed-size payloads
- Remove Apache HTTP Client dependency in favor of Java 11 HTTP
- Introduce Java module descriptor
- Tested against Vault 1.8.3
- Deprecate
{read,write,delete}Secret()convenience methods. Use{read,write,delete}("secret/...")instead (#52) - Deprecated builder invocation
VaultConnectorBuilder.http()in favor ofHTTPVaultConnector.builder()(#51) - Deprecated
de.stklcode.jvault.connector.builder.HTTPVaultConnectorBuilderin favor ofde.stklcode.jvault.connector.HTTPVaultConnectorBuilder(only package changed) (#51)
Old builders will be removed in 1.0
- Minor dependency updates
- Tested against Vault 1.8.0
AppRole.Builder#wit0hTokenPeriod()is deprecated in favor of#withTokenPeriod()(#49)
- Minor dependency updates
- Tested against Vault 1.7.2
- Use pre-sized map objects for fixed-size payloads
- Minor dependency updates
- Unit test adjustments for JDK 16 build environments
- Tested against Vault 1.7.0
- Only initialize custom trust managers, if CA certificate is actually provided (#43)
- Minor dependency updates
- Dependency updates
- Tested against Vault 1.6.1
- Correctly parse Map field for token metadata (#34)
- Correctly map token policies on token lookup (#35)
- Support for token types (#26)
- Support for token role handling (#27) (#37)
- Added
entity_id,token_policies,token_typeandorphanflags to auth response - Added
entity_id,expire_time,explicit_max_ttl,issue_time,renewableandtypeflags to token data - Added
explicit_max_ttl,periodandentity_aliasflags to Token model (#41) - Added
enable_local_secret_ids,token_bound_cidrs,token_explicit_max_ttl,token_no_default_policy,token_num_uses,token_periodandtoken_typeflags to AppRole model - Minor dependency updates
AppRole#getPolicies()and#setPolicies()are deprecated in favor of#getTokenPolicies()and#setTokenPolicies()AppRole#getPeriod()is deprecated in favor of#getTokenPeriod()AppRoleBuilderandTokenBuilderin favor ofAppRole.BuilderandToken.Builder- All-arg constructors of
AppRoleandTokenin favor of.builder()....build()introduced in 0.8
- Deprecated methods
AppRole#getBoundCidrList(),#setBoundCidrList()andgetBoundCidrListString()have been removed.
- Tested against Vault 1.4.0
- Fixed token lookup (#31)
- Updated dependencies
- Removed compile dependency to JUnit library (#30)
- Updated dependencies
- Tested against Vault 1.2.2
- Moved Maven artifact to
de.stklcode.jvault:jvault-connector(#28) - Removed support for
HTTPVaultConnectorFactory#withSslContext()in favor of#withTrustedCA()due to
- Support for KV version 2 secret engine (#16)
- Ability to pass custom mount point to KV v2 read/write methods (#25)
- refactoring of the internal SSL handling (#17)
VaultConnectorextendsjava.io.Serializable(#19)- Added missing flags to
SealResponse(#20) - Added replication flags to
HealthResponse(#21) - Enforce TLS 1.2 by default with option to override (#22)
- Build environment and tests now compatible with Java 10
- Updated dependencies to fix vulnerabilities (i.e. CVE-2018-7489)
- New static method
Token.builder()to get token builder instance - New static method
AppRole.builder()to get AppRole builder instance
VaultConnectorFactoryis deprecated in favor ofVaultConnectorBuilderwith identical API (#18)AppRoleBuilder#withBoundCidrList(List)is deprecated in favor ofAppRoleBuilder#withSecretIdBoundCidrs(List)(#24)
- Added automatic module name for JPMS compatibility
- Minor dependency updates
- Tested against Vault 0.9.5
- Retrieval of health status via
getHealth()(#15)
seal(),unseal()are nowvoidand throw Exception on error (#12)- Adaptation to Vault 0.8 endpoints for
renewandrevoke, breaking 0.7 compatibility (#11)
- Removed deprecated
listAppRoleSecretss()(uselistAppRoleSecrets()) (#14)
- Tested against Vault 0.8.3
- Prevent potential NPE on SecretResponse getter
- Removed stack traces on PUT request and response deserialization (#13)
- Fields of InvalidResposneException made final
listAppRoleSecretss()in favor oflistAppRoleSecrets()(#14)
- Tested against Vault 0.8.1, increased coverage
TokenModel.getPassword()returned username instead of passwordTokenModel.getUsername()andgetPassword()could produce NPE in multithreaded environmentsTokenData.getCreatinTtl()renamed togetCreationTtl()(typo fix)
- Tested against Vault 0.7.3
- Initialization from environment variables using
fromEnv()in factory (#8) - Automatic authentication with
buildAndAuth() - Custom timeout and number of retries (#9)
- Connector implements
AutoCloseable
SecretResponsedoes not throw NPE onget(key)andgetData()
- Tested against Vault 0.7.2
- Convenience methods for DB credentials (#7)
- Minor bugfix in TokenBuilder
SecretResponse.getValue()deprecated
- Tested against Vault 0.7.0
- Factory Null-tolerant for trusted certificate (#6)
- StackTraces tested for secret leaks
- Tested against Vault 0.6.4
- Option to provide a trusted CA certificate (#2)
- Deletion, revocation and renewal of secrets (#3)
- Token creation (#4)
- AppRole auth backend supported (#5)
- Support for complex secrets
- App-ID backend marked as deprecated
- Retrieval of JSON objects (#1)
- Tested against Vault 0.6.2
- Dependecies updated and CommonsIO removed
- Fixed auth backend detection for Vault 0.6.1
- Tested against Vault 0.6.1
- Check for "permission denied" without status code 400 instead of 403
- Tested against Vault 0.6.0
- First release