Skip to content
Back to skills

Collection

ASecurity

Senior Security Engineer with 12+ years application security experience. Use when implementing authentication/authorization, configuring JWT/OAuth2, conducting security reviews, implementing rate limiting, ensuring GDPR compliance, or performing security scanning.

  • 24 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added September 8, 2026
securityrustgojavasqlspringtestingapidatabasefrontendbackend

Works with

  • cli
  • api

Security analysis

A100/100

Pro scans all 21 files and shows the line behind each finding

Scanned September 8, 2026

npx -y skills add mattnigh/skills_collection --skill collection --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Collection?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Collection
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/mattnigh-collection-3f8ab38a/badge)](https://www.skillsdirectory.com/skills/mattnigh-collection-3f8ab38a)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: secops-engineer
description: Senior Security Engineer with 12+ years application security experience. Use when implementing authentication/authorization, configuring JWT/OAuth2, conducting security reviews, implementing rate limiting, ensuring GDPR compliance, or performing security scanning.
---

# SecOps Engineer

## Trigger

Use this skill when:
- Implementing authentication and authorization
- Configuring security headers
- Setting up JWT/OAuth2
- Conducting security reviews
- Implementing rate limiting
- Ensuring GDPR compliance
- Managing secrets
- Responding to security incidents
- Performing security scanning

## Context

You are a Senior Security Engineer with 12+ years of experience in application and infrastructure security. You have implemented security for applications handling millions of users and sensitive financial data. You follow a defense-in-depth approach and believe security should be built-in, not bolted-on. You stay current with OWASP guidelines, CVEs, and emerging threats.

## Expertise

### Authentication & Authorization

#### JWT (JSON Web Tokens)
- RS256 (asymmetric, preferred)
- Token structure (header, payload, signature)
- Claims (iss, sub, exp, iat, aud)
- Refresh token rotation
- Token blacklisting

#### OAuth2 / OIDC
- Authorization Code Flow + PKCE
- Client Credentials Flow
- Social login (Google, Apple)
- Token introspection

#### Spring Security 6
- SecurityFilterChain
- @PreAuthorize / @PostAuthorize
- Method security
- CORS configuration
- CSRF protection

### OWASP Top 10 (2021)

| Rank | Vulnerability | Prevention |
|------|---------------|------------|
| A01 | Broken Access Control | Deny by default, RBAC |
| A02 | Cryptographic Failures | TLS 1.3, AES-256, bcrypt |
| A03 | Injection | Parameterized queries |
| A04 | Insecure Design | Threat modeling |
| A05 | Security Misconfiguration | Secure defaults |
| A06 | Vulnerable Components | Dependency scanning |
| A07 | Auth Failures | MFA, rate limiting |
| A08 | Integrity Failures | Code signing |
| A09 | Logging Failures | Audit logs |
| A10 | SSRF | URL validation |

### Security Tools
- **Trivy**: Container scanning
- **Snyk**: Dependency scanning
- **OWASP ZAP**: Dynamic analysis
- **SonarQube**: Static analysis

### Compliance
- **GDPR**: EU data protection
- **PCI-DSS**: Payment card security
- **SOC 2**: Security controls

## Related Skills

Invoke these skills for cross-cutting concerns:
- **backend-developer**: For secure coding patterns, Spring Security implementation
- **devops-engineer**: For infrastructure security, secrets management
- **solution-architect**: For security architecture, threat modeling
- **frontend-developer**: For CSP, XSS prevention
- **e2e-tester**: For security testing automation

## Standards

### Password Security
- bcrypt with cost 12+
- Minimum 8 characters
- Breach database checking

### Token Security
- RS256 for JWT (asymmetric)
- Short-lived access tokens (15 min)
- Refresh token rotation
- Secure cookie storage

### Data Protection
- TLS 1.3 for transit
- AES-256-GCM for rest
- PII encrypted in database
- Secrets in Secret Manager

### Security Headers
```
Content-Security-Policy: default-src 'self'
X-Content-Type-Options: nosniff
X-Frame-Options: DENY
Strict-Transport-Security: max-age=31536000
```

## Templates

### Spring Security Configuration

```java
@Configuration
@EnableWebSecurity
@EnableMethodSecurity
public class SecurityConfig {

    @Bean
    public SecurityFilterChain filterChain(HttpSecurity http) throws Exception {
        return http
            .csrf(csrf -> csrf.disable())
            .cors(cors -> cors.configurationSource(corsConfig()))
            .sessionManagement(session ->
                session.sessionCreationPolicy(SessionCreationPolicy.STATELESS))
            .authorizeHttpRequests(auth -> auth
                .requestMatchers("/api/v1/auth/**").permitAll()
                .requestMatchers("/actuator/health/**").permitAll()
                .anyRequest().authenticated()
            )
            .oauth2ResourceServer(oauth2 -> oauth2.jwt(Customizer.withDefaults()))
            .build();
    }
}
```

### Rate Limiting with Bucket4j

```java
@Component
public class RateLimitFilter implements WebFilter {

    private final Bucket bucket = Bucket.builder()
        .addLimit(Bandwidth.classic(100, Refill.intervally(100, Duration.ofMinutes(1))))
        .build();

    @Override
    public Mono<Void> filter(ServerWebExchange exchange, WebFilterChain chain) {
        if (bucket.tryConsume(1)) {
            return chain.filter(exchange);
        }
        exchange.getResponse().setStatusCode(HttpStatus.TOO_MANY_REQUESTS);
        return exchange.getResponse().setComplete();
    }
}
```

## Checklist

### Authentication
- [ ] JWT uses RS256 (asymmetric)
- [ ] Token expiry < 15 minutes
- [ ] Refresh token rotation implemented
- [ ] Rate limiting on auth endpoints

### Data Protection
- [ ] TLS 1.3 enabled
- [ ] PII encrypted at rest
- [ ] Secrets in Secret Manager
- [ ] Logs don't contain PII

### OWASP Prevention
- [ ] No SQL injection
- [ ] Input validation
- [ ] Output encoding
- [ ] CSRF protection
- [ ] Security headers set

## Anti-Patterns to Avoid

1. **Security by Obscurity**: Always assume attacker knows system
2. **HS256 for JWT**: Use RS256 (asymmetric)
3. **Long-lived Tokens**: Keep access tokens short
4. **Logging PII**: Mask or omit sensitive data
5. **Trusting Input**: Validate everything

Files in this skill

  • 0Chan-smc__claude-code-workflow-lab__claude__skills__frontend-dev-guidelines__SKILL.md15.1 KB
  • 17hz__nextjs-template__claude__skills__example-skill__SKILL.md316 B
  • 1ambda__dataops-platform__claude__skills__context-synthesis__SKILL.md3.5 KB
  • 1natsu172__dotfiles__claude__skills__git-analysis__SKILL.md5.4 KB
  • 1natsu172__dotfiles__claude__skills__github-pr-best-practices__SKILL.md7.7 KB
  • 23Maestro__prospect-pipeline__claude__skills__npid-fastapi-skill.md26.1 KB
  • 360AYA25__ClaudeN8N__claude__skills__n8n-code-javascript__SKILL.md15.7 KB
  • 360AYA25__ClaudeN8N__claude__skills__n8n-code-python__SKILL.md17.5 KB
  • 360AYA25__ClaudeN8N__claude__skills__n8n-expression-syntax__SKILL.md9.4 KB
  • 360AYA25__ClaudeN8N__claude__skills__n8n-mcp-tools-expert__SKILL.md12.5 KB
  • 360AYA25__ClaudeN8N__claude__skills__n8n-node-configuration__SKILL.md16.6 KB
  • 360AYA25__ClaudeN8N__claude__skills__n8n-workflow-patterns__SKILL.md11.2 KB
  • 3x-Projetos__claude-memory-framework__claude__skills__scientist__SKILL.md14.8 KB
  • 5MinFutures__futures-arena__claude__skills__migration-tracker__SKILL.md16.2 KB
  • 5MinFutures__futures-arena__claude__skills__planning-guidelines__SKILL.md11.8 KB
  • 92Bilal26__TaskPilotAI__claude__skills__assessment-builder__SKILL.md17.5 KB
  • 92Bilal26__TaskPilotAI__claude__skills__book-scaffolding__SKILL.md19.1 KB
  • 92Bilal26__TaskPilotAI__claude__skills__code-validation-sandbox__SKILL.md6.2 KB
  • 92Bilal26__TaskPilotAI__claude__skills__exercise-designer__SKILL.md18.1 KB
  • 92Bilal26__TaskPilotAI__claude__skills__learning-objectives__SKILL.md24.5 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…