Class EmailSecurity
java.lang.Object
cloud.opencode.base.email.security.EmailSecurity
Email Security Utility Class
邮件安全工具类
Provides security utilities for email operations.
提供邮件操作的安全工具。
Features | 主要功能:
- Header injection prevention - 邮件头注入防护
- Email address validation - 邮箱地址验证
- Attachment security validation - 附件安全验证
- Content sanitization - 内容清理
Security | 安全性:
- Thread-safe: Yes - 线程安全: 是
- Since:
- JDK 25, opencode-base-email V1.0.0
- Author:
- Leon Soo www.LeonSoo.com
- See Also:
-
Method Summary
Modifier and TypeMethodDescriptionGet dangerous extensions 获取危险扩展名Get default allowed extensions 获取默认允许的扩展名static longGet default max attachment size 获取默认最大附件大小static StringgetExtension(String fileName) Get file extension 获取文件扩展名static booleanisAllowedExtension(String fileName) Check if attachment extension is allowed 检查附件扩展名是否允许static booleanisDangerousExtension(String fileName) Check if attachment extension is dangerous 检查附件扩展名是否危险static booleanisValidEmail(String email) Validate email address format 验证邮箱地址格式static StringsanitizeHeader(String value) Sanitize email header content to prevent injection attacks 清理邮件头内容以防止注入攻击static voidvalidateAttachment(Attachment attachment) Validate attachment security 验证附件安全性static voidvalidateAttachment(Attachment attachment, Set<String> allowedExtensions, long maxSize) Validate attachment security with custom settings 使用自定义设置验证附件安全性
-
Method Details
-
sanitizeHeader
Sanitize email header content to prevent injection attacks 清理邮件头内容以防止注入攻击Examples | 示例:
sanitizeHeader("Test\r\nBcc: hacker@evil.com") = "TestBcc: hacker@evil.com" sanitizeHeader("Normal Subject") = "Normal Subject"- Parameters:
value- the header value | 邮件头值- Returns:
- the sanitized value | 清理后的值
-
isValidEmail
Validate email address format 验证邮箱地址格式Examples | 示例:
isValidEmail("user@example.com") = true isValidEmail("user.name+tag@example.co.uk") = true isValidEmail("invalid") = false isValidEmail("user@") = false- Parameters:
email- the email address | 邮箱地址- Returns:
- true if valid | 有效返回true
-
validateAttachment
Validate attachment security 验证附件安全性- Parameters:
attachment- the attachment | 附件- Throws:
EmailSecurityException- if validation fails | 验证失败时抛出
-
validateAttachment
public static void validateAttachment(Attachment attachment, Set<String> allowedExtensions, long maxSize) Validate attachment security with custom settings 使用自定义设置验证附件安全性- Parameters:
attachment- the attachment | 附件allowedExtensions- allowed file extensions | 允许的文件扩展名maxSize- max file size in bytes | 最大文件大小(字节)- Throws:
EmailSecurityException- if validation fails | 验证失败时抛出
-
isAllowedExtension
Check if attachment extension is allowed 检查附件扩展名是否允许- Parameters:
fileName- the file name | 文件名- Returns:
- true if allowed | 允许返回true
-
isDangerousExtension
Check if attachment extension is dangerous 检查附件扩展名是否危险- Parameters:
fileName- the file name | 文件名- Returns:
- true if dangerous | 危险返回true
-
getExtension
-
getDefaultAllowedExtensions
-
getDangerousExtensions
-
getDefaultMaxAttachmentSize
public static long getDefaultMaxAttachmentSize()Get default max attachment size 获取默认最大附件大小- Returns:
- the max size in bytes | 最大字节大小
-