Class RotationMaterialSpec
java.lang.Object
co.ankatech.keymanagement.client.keymanagement.model.RotationMaterialSpec
@Generated(value="org.openapitools.codegen.languages.JavaClientCodegen",
comments="Generator version: 7.23.0")
public class RotationMaterialSpec
extends Object
New material spec for a Stable KID rotation (no kid). Mirrors the cryptographic service's rotation material specification.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classstatic enumKey derivation function combining the component secrets of the successor COMPOSITE_KEM_COMBINE material. -
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionaddKeyOpsItem(String keyOpsItem) booleanexportable(Boolean exportable) static RotationMaterialSpecCreate an instance of RotationMaterialSpec given an JSON stringgetAlg()Algorithm identifier (single for simple, composite for COMPOSITE).Hard expiration of the new material (ISO-8601 UTC).Whether the new material's public key may be exported.getKdf()Key derivation function combining the component secrets of the successor COMPOSITE_KEM_COMBINE material.The wire value ofkdf: what the server sent, verbatim.Permitted key operations of the new material.getKty()Key type (oct, RSA, EC, OKP, ML-KEM, ML-DSA, ..., or the single coarse token COMPOSITE for every composite key).Hard usage limit of the new material; 0 = unlimited.Soft expiration threshold of the new material (ISO-8601 UTC); must be before expiresAt.Soft usage limit (warning threshold) of the new material.inthashCode()maxUsageLimit(Integer maxUsageLimit) voidvoidsetExpiresAt(String expiresAt) voidsetExportable(Boolean exportable) voidvoidvoidvoidsetMaxUsageLimit(Integer maxUsageLimit) voidsetSoftLimitExpiration(String softLimitExpiration) voidsetSoftUsageLimit(Integer softUsageLimit) softLimitExpiration(String softLimitExpiration) softUsageLimit(Integer softUsageLimit) toJson()Convert an instance of RotationMaterialSpec to an JSON stringtoString()static voidvalidateJsonElement(com.google.gson.JsonElement jsonElement) Validates the JSON Element and throws an exception if issues foundstatic voidvalidateJsonElementAsCandidate(com.google.gson.JsonElement jsonElement) Validates the JSON Element as a candidate of a oneOf schema: the checks ofvalidateJsonElement(JsonElement), and the element carries no member this model does not declare.
-
Field Details
-
SERIALIZED_NAME_ALG
- See Also:
-
SERIALIZED_NAME_EXPIRES_AT
- See Also:
-
SERIALIZED_NAME_EXPORTABLE
- See Also:
-
SERIALIZED_NAME_KDF
- See Also:
-
SERIALIZED_NAME_KEY_OPS
- See Also:
-
SERIALIZED_NAME_KTY
- See Also:
-
SERIALIZED_NAME_MAX_USAGE_LIMIT
- See Also:
-
SERIALIZED_NAME_SOFT_LIMIT_EXPIRATION
- See Also:
-
SERIALIZED_NAME_SOFT_USAGE_LIMIT
- See Also:
-
openapiFields
-
openapiRequiredFields
-
-
Constructor Details
-
RotationMaterialSpec
public RotationMaterialSpec()
-
-
Method Details
-
getKdfAsString
The wire value ofkdf: what the server sent, verbatim.- For a value this release declares, the same wire value the enum names.
- For a value it does not declare (one a later server added), the server's wire value verbatim,
while
getKdf()readsUNKNOWN_DEFAULT_OPEN_API; writing this model sends that wire value back, never the sentinel. - For an absent member,
null.
- Returns:
- the wire value, or
nullwhen the member is absent
-
alg
-
getAlg
Algorithm identifier (single for simple, composite for COMPOSITE).- Returns:
- alg
-
setAlg
-
expiresAt
-
getExpiresAt
Hard expiration of the new material (ISO-8601 UTC). When omitted or null, the new material keeps the validity period of the key's current PRIMARY material, counted from the rotation: rotation time + (current expiresAt - current creation time). A key without expiry stays without expiry. A current material whose expiresAt is not after its creation time has no period to inherit, and the rotation is refused with 400 until expiresAt is stated. The two-year default applies only to key creation and import.- Returns:
- expiresAt
-
setExpiresAt
-
exportable
-
getExportable
Whether the new material's public key may be exported. When omitted or null, the new material keeps the exportability of the key's current PRIMARY material: a rotation changes the material, not the key's attributes.- Returns:
- exportable
-
setExportable
-
kdf
-
getKdf
Key derivation function combining the component secrets of the successor COMPOSITE_KEM_COMBINE material. Optional: when omitted, the cryptographic service applies the pairing's catalogue default. Ignored for simple keys and COMPOSITE_SIGNATURE. Membership is exact in case; an unpublished token is refused at this boundary before the rotation is relayed.- Returns:
- kdf
-
setKdf
-
keyOps
-
addKeyOpsItem
-
getKeyOps
Permitted key operations of the new material. When omitted or empty, the new material keeps the operations of the key's current PRIMARY material within the key's invariant purpose, never the algorithm's full set: an RSA or EC key created for signing stays a signing key. A stated set must keep every current operation of the purpose and must not name an operation of the other purpose (422). An operation the current material does not permit makes the key usable for more, so the rotation waits for the tenant's key weakening update quorum when its policy gates one.- Returns:
- keyOps
-
setKeyOps
-
kty
-
getKty
Key type (oct, RSA, EC, OKP, ML-KEM, ML-DSA, ..., or the single coarse token COMPOSITE for every composite key).- Returns:
- kty
-
setKty
-
maxUsageLimit
-
getMaxUsageLimit
Hard usage limit of the new material; 0 = unlimited. When omitted or null, the new material keeps the current PRIMARY material's limit (a rotation does not lift a cap). The new material's usage count starts at 0. minimum: 0- Returns:
- maxUsageLimit
-
setMaxUsageLimit
-
softLimitExpiration
-
getSoftLimitExpiration
Soft expiration threshold of the new material (ISO-8601 UTC); must be before expiresAt. When omitted or null, the new material keeps the current PRIMARY material's lead time before its hard expiry (expiresAt - (current expiresAt - current softLimitExpiration)), never earlier than the rotation time; a current material with a soft expiration but no hard one keeps its period from creation instead. A key without a soft expiration stays without one. A resolved soft expiration that is not before the resolved expiresAt is refused with 400.- Returns:
- softLimitExpiration
-
setSoftLimitExpiration
-
softUsageLimit
-
getSoftUsageLimit
Soft usage limit (warning threshold) of the new material. When omitted or null, the current PRIMARY material's threshold is kept if the resulting maxUsageLimit can carry it (no threshold, or one strictly below a finite limit); otherwise it is derived as on key creation (none on an unlimited limit, 80% of a finite one). A resolved positive threshold that is not strictly below a finite maxUsageLimit, or that sits over an unlimited one, is refused with 400, including a current pair carried forward when both limits are omitted. minimum: 0- Returns:
- softUsageLimit
-
setSoftUsageLimit
-
equals
-
hashCode
public int hashCode() -
toString
-
validateJsonElement
Validates the JSON Element and throws an exception if issues found- Parameters:
jsonElement- JSON Element- Throws:
IOException- if the JSON Element is invalid with respect to RotationMaterialSpec
-
validateJsonElementAsCandidate
public static void validateJsonElementAsCandidate(com.google.gson.JsonElement jsonElement) throws IOException Validates the JSON Element as a candidate of a oneOf schema: the checks ofvalidateJsonElement(JsonElement), and the element carries no member this model does not declare. A oneOf schema without a discriminator tells its candidates apart by their member sets, so a candidate is matched on its closed member set.- Parameters:
jsonElement- JSON Element- Throws:
IOException- if the JSON Element is not a RotationMaterialSpec
-
fromJson
Create an instance of RotationMaterialSpec given an JSON string- Parameters:
jsonString- JSON string- Returns:
- An instance of RotationMaterialSpec
- Throws:
IOException- if the JSON string is invalid with respect to RotationMaterialSpec
-
toJson
Convert an instance of RotationMaterialSpec to an JSON string- Returns:
- JSON string
-