TokenProperties.java
package com.ecommerce.identity.infrastructure.security;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import jakarta.validation.constraints.Size;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.validation.annotation.Validated;
import java.time.Duration;
@Validated
@ConfigurationProperties("ecommerce.security.token")
public record TokenProperties(
@NotBlank @Size(min = 32) String secret,
@NotBlank String issuer,
@NotNull Duration accessTtl,
@NotNull Duration refreshTtl
) {
}