Compliance & Security Assessment Report · unknown-cluster-id
| Status | Control | Title | Severity | Category | Message |
|---|---|---|---|---|---|
| ✓ | KG-001 |
SASL authentication enabled | HIGH | security | Control passed |
| ✓ | KG-002 |
SSL/TLS encryption enabled | HIGH | security | Control passed |
| ✓ | KG-003 |
ACL authorization enabled | HIGH | security | Control passed |
| ✓ | KG-005 |
TLS certificate expiry >30 days | HIGH | security | Control passed |
| ✓ | KG-006 |
TLS protocol ≥1.2 | HIGH | security | Control passed |
| ✓ | KG-007 |
Inter-broker encryption enabled | HIGH | security | Control passed |
| ✓ | KG-010 |
No default passwords | CRITICAL | security | Control passed |
| ✓ | KG-011 |
SASL mechanism secure | HIGH | security | Control passed |
| ✓ | KG-012 |
Client authentication required | HIGH | security | Control passed |
| ✓ | KG-014 |
Security protocol valid | HIGH | security | Control passed |
| ✓ | KG-016 |
Replication factor ≥3 | HIGH | reliability | Control passed |
| ✓ | KG-017 |
Min ISR ≥2 | HIGH | reliability | Control passed |
| ✓ | KG-018 |
No under-replicated partitions | HIGH | reliability | Control passed |
| ✓ | KG-019 |
No offline partitions | CRITICAL | reliability | Control passed |
| ✗ | KG-022 |
ZK quorum healthy (≥3 nodes) | HIGH | reliability | Control failed |
|
RemediationAdd ZooKeeper nodes to reach quorum of 3 or more
|
|||||
| ✓ | KG-024 |
Disk usage <90% | HIGH | reliability | Control passed |
| ✓ | KG-025 |
Heap usage <85% | HIGH | reliability | Control passed |
| ✓ | KG-029 |
Log directories not in /tmp | HIGH | operational | Control passed |
| ✓ | KG-041 |
Audit logging enabled | HIGH | security | Control passed |
| ✓ | KG-043 |
Encryption at rest configured | HIGH | security | Control passed |
| ✓ | KG-044 |
Broker-to-broker mutual TLS | HIGH | security | Control passed |
| ✓ | KG-045 |
No deprecated TLS protocols | HIGH | security | Control passed |
| ✓ | KG-046 |
Strong cipher suites only | HIGH | security | Control passed |
| ✓ | KG-048 |
Admin access restricted | HIGH | security | Control passed |
| ✓ | KG-053 |
All KRaft controller voters healthy | HIGH | reliability | Control passed |
| ✓ | KG-054 |
Metadata log replication not lagging | HIGH | reliability | Control passed |
| ✓ | KG-056 |
KRaft authorizer compatible with controller listener | HIGH | security | Control passed |
| ✓ | KG-004 |
No wildcard ACLs | MEDIUM | security | Control passed |
| ✗ | KG-008 |
ZooKeeper authentication enabled | MEDIUM | security | Control failed |
|
RemediationEnable ZooKeeper authentication
|
|||||
| ✗ | KG-009 |
ZooKeeper ACLs enabled | MEDIUM | security | Control failed |
|
RemediationEnable ZooKeeper ACLs
|
|||||
| ✗ | KG-013 |
SSL endpoint identification enabled | MEDIUM | security | Control failed |
|
RemediationEnable SSL endpoint identification
|
|||||
| ✗ | KG-015 |
Monitoring endpoint security | MEDIUM | security | Control failed |
|
RemediationFor Prometheus JMX Exporter: Bind to localhost (127.0.0.1:PORT) or add authentication via reverse proxy
For Traditional JMX: Enable authentication and SSL
For Jolokia: Enable authentication
Example fix (Prometheus):
Environment="KAFKA_OPTS=-javaagent:/opt/jmx_exporter/jmx_prometheus_javaagent.jar=127.0.0.1:9999:/opt/jmx_exporter/config/kafka.yml"
|
|||||
| ✓ | KG-020 |
Unclean leader election disabled | MEDIUM | reliability | Control passed |
| ✓ | KG-021 |
Log retention configured | MEDIUM | reliability | Control passed |
| ✓ | KG-023 |
Broker version consistent | MEDIUM | reliability | Control passed |
| ✓ | KG-027 |
Leader election timeout configured | MEDIUM | reliability | Control passed |
| ✓ | KG-028 |
Auto-create topics disabled | MEDIUM | operational | Control passed |
| ✓ | KG-030 |
Delete topic disabled | MEDIUM | operational | Control passed |
| ✓ | KG-033 |
Log retention hours configured | MEDIUM | operational | Control passed |
| ✗ | KG-042 |
Log retention ≥90 days | MEDIUM | security | Control failed |
|
RemediationSet log.retention.hours=2160 (90 days) or higher in server.properties
|
|||||
| ✓ | KG-047 |
ACL deny rules configured | MEDIUM | security | Control passed |
| ✓ | KG-049 |
Data retention policies enforced | MEDIUM | security | Control passed |
| ✓ | KG-052 |
KRaft controller quorum size >= 3 | MEDIUM | reliability | Control passed |
| ✓ | KG-026 |
Network threads configured | LOW | reliability | Control passed |
| ✓ | KG-031 |
Compression configured | LOW | operational | Control passed |
| ✓ | KG-032 |
Log segment bytes appropriate | LOW | operational | Control passed |
| ✓ | KG-034 |
Network threads appropriate | LOW | operational | Control passed |
| ✓ | KG-035 |
IO threads appropriate | LOW | operational | Control passed |
| ✓ | KG-036 |
Send buffer bytes configured | LOW | operational | Control passed |
| ✓ | KG-037 |
Receive buffer bytes configured | LOW | operational | Control passed |
| ✓ | KG-038 |
Replica fetch max bytes configured | LOW | operational | Control passed |
| ✓ | KG-039 |
Message max bytes configured | LOW | operational | Control passed |
| ✗ | KG-040 |
GC logging enabled | LOW | operational | Control failed |
|
RemediationEnable GC logging in JVM startup parameters
|
|||||
| ✓ | KG-050 |
Compliance metadata configured | LOW | security | Control passed |
| ✓ | KG-055 |
Confluent version matches Kafka version | LOW | reliability | Control passed |