CallerProfile.java 924 B

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. package com.malk.apigw.caller;
  2. import lombok.AllArgsConstructor;
  3. import lombok.Builder;
  4. import lombok.Data;
  5. import lombok.NoArgsConstructor;
  6. import java.util.Date;
  7. import java.util.List;
  8. /**
  9. * 调用方档案(宜搭权限表 → 内存)
  10. */
  11. @Data
  12. @Builder
  13. @AllArgsConstructor
  14. @NoArgsConstructor
  15. public class CallerProfile {
  16. /** 调用方唯一 ID(如 caller-YDCBC-001) */
  17. private String callerId;
  18. /** HMAC 签名密钥(内存保留,日志脱敏) */
  19. private String callerSecret;
  20. /** 可读名称(审计用) */
  21. private String callerName;
  22. /** 允许调用的 action 白名单(vendor.action 精确匹配),如 ["dingtalk.user.get", "aliwork.form.save"] */
  23. private List<String> allowedActions;
  24. /** 每秒限流阈值 */
  25. private int rateLimit;
  26. /** 密钥过期时间 */
  27. private Date expireAt;
  28. /** 是否启用 */
  29. private boolean enabled;
  30. }