$ loading_
帮助开发者为 Spring Boot 服务落实认证授权与安全加固最佳实践。
复制安装指令,让 AI 自动完成配置 · 推荐新手
请帮我安装 askskill 上的 "springboot-security" 技能: 1. 下载 https://raw.githubusercontent.com/affaan-m/ECC/main/docs/ja-JP/skills/springboot-security/SKILL.md 2. 保存为 ~/.claude/skills/springboot-security/SKILL.md 3. 装好后重载技能,告诉我可以用了
请审查这个 Spring Boot 项目的安全配置,重点检查认证、授权、CSRF、请求头、密码存储和接口限流,并给出整改建议与示例代码。
一份安全审查清单,指出风险点、修复建议及对应的 Spring Security 配置示例。
我在做一个 Spring Boot 多角色系统,请帮我设计基于角色和权限的鉴权方案,包括接口访问控制、方法级注解、异常处理和最小权限原则。
一个清晰的鉴权设计方案,包含角色权限模型、配置方式和代码落地建议。
请为我的 Spring Boot 服务提供安全加固方案,覆盖依赖漏洞治理、密钥管理、环境变量使用、安全响应头配置和生产环境部署注意事项。
一套可执行的安全加固建议,涵盖依赖、密钥、响应头与上线前检查项。
認証の追加、入力処理、エンドポイント作成、またはシークレット処理時に使用します。
httpOnly、Secure、SameSite=Strict クッキーを使用OncePerRequestFilter またはリソースサーバーでトークンを検証@Component
public class JwtAuthFilter extends OncePerRequestFilter {
private final JwtService jwtService;
public JwtAuthFilter(JwtService jwtService) {
this.jwtService = jwtService;
}
@Override
protected void doFilterInternal(HttpServletRequest request, HttpServletResponse response,
FilterChain chain) throws ServletException, IOException {
String header = request.getHeader(HttpHeaders.AUTHORIZATION);
if (header != null && header.startsWith("Bearer ")) {
String token = header.substring(7);
Authentication auth = jwtService.authenticate(token);
SecurityContextHolder.getContext().setAuthentication(auth);
}
chain.doFilter(request, response);
}
}
@EnableMethodSecurity@PreAuthorize("hasRole('ADMIN')") または @PreAuthorize("@authz.canEdit(#id)") を使用@Valid を使用してコントローラーでBean Validationを使用@NotBlank、@Email、@Size、カスタムバリデーター:param バインディングを使用し、文字列を連結しないhttp
.csrf(csrf -> csrf.disable())
.sessionManagement(sm -> sm.sessionCreationPolicy(SessionCreationPolicy.STATELESS));
application.yml を認証情報から解放し、プレースホルダーを使用http
.headers(headers -> headers
.contentSecurityPolicy(csp -> csp
.policyDirectives("default-src 'self'"))
.frameOptions(HeadersConfigurer.FrameOptionsConfig::sameOrigin)
.xssProtection(Customizer.withDefaults())
.referrerPolicy(rp -> rp.policy(ReferrerPolicyHeaderWriter.ReferrerPolicy.NO_REFERRER)));
注意: デフォルトで拒否し、入力を検証し、最小権限を適用し、設定によるセキュリティを優先します。
通过双评审智能体对结果进行对抗式校验,提升输出发布前的可靠性
提供 Laravel 安全最佳实践,帮助加固认证授权、输入校验与安全部署。