[
https://issues.apache.org/jira/browse/RANGER-4400?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Fateh Singh reopened RANGER-4400:
---------------------------------
The current implementation is causing ConcurrentModificationException which
needs to be fixed:
{code:java}
java.util.ConcurrentModificationException: null
at java.util.ArrayList$Itr.checkForComodification(ArrayList.java:1043)
~[?:?]
at java.util.ArrayList$Itr.next(ArrayList.java:997) ~[?:?]
at
org.apache.ranger.plugin.audit.RangerDefaultAuditHandler.logAuthzAudits(RangerDefaultAuditHandler.java:237)
~[?:?]
at
org.apache.ranger.authorization.kafka.authorizer.RangerKafkaAuditHandler.flushAudit(RangerKafkaAuditHandler.java:127)
~[?:?]
at
org.apache.ranger.authorization.kafka.authorizer.RangerKafkaAuthorizer.callRangerPlugin(RangerKafkaAuthorizer.java:307)
~[ranger-kafka-plugin-shim-2.3.0.7.1.8.3-440.jar:2.3.0.7.1.8.3-440]
at
org.apache.ranger.authorization.kafka.authorizer.RangerKafkaAuthorizer.wrappedAuthorization(RangerKafkaAuthorizer.java:290)
~[ranger-kafka-plugin-shim-2.3.0.7.1.8.3-440.jar:2.3.0.7.1.8.3-440]
at
org.apache.ranger.authorization.kafka.authorizer.RangerKafkaAuthorizer.authorize(RangerKafkaAuthorizer.java:248)
~[ranger-kafka-plugin-shim-2.3.0.7.1.8.3-440.jar:2.3.0.7.1.8.3-440]
at
org.apache.ranger.authorization.kafka.authorizer.RangerKafkaAuthorizer.authorize(RangerKafkaAuthorizer.java:137)
~[ranger-kafka-plugin-shim-2.3.0.7.1.8.3-440.jar:2.3.0.7.1.8.3-440]
at kafka.server.AuthHelper.$anonfun$authorize$1(AuthHelper.scala:49)
~[kafka_2.13-3.1.1.7.1.8.3-440.jar:?]
at
kafka.server.AuthHelper.$anonfun$authorize$1$adapted(AuthHelper.scala:46)
~[kafka_2.13-3.1.1.7.1.8.3-440.jar:?]
at scala.Option.forall(Option.scala:420) ~[scala-library-2.13.10.jar:?]
at kafka.server.AuthHelper.authorize(AuthHelper.scala:46)
~[kafka_2.13-3.1.1.7.1.8.3-440.jar:?]
at kafka.server.KafkaApis.handleFetchRequest(KafkaApis.scala:721)
[kafka_2.13-3.1.1.7.1.8.3-440.jar:?]
at kafka.server.KafkaApis.handle(KafkaApis.scala:175)
[kafka_2.13-3.1.1.7.1.8.3-440.jar:?]
at kafka.server.KafkaRequestHandler.run(KafkaRequestHandler.scala:80)
[kafka_2.13-3.1.1.7.1.8.3-440.jar:?]
at java.lang.Thread.run(Thread.java:834) [?:?] {code}
> RangerKafkaAuditHandler broken and multiple authorizations audited
> -------------------------------------------------------------------
>
> Key: RANGER-4400
> URL: https://issues.apache.org/jira/browse/RANGER-4400
> Project: Ranger
> Issue Type: Bug
> Components: Ranger
> Reporter: Fateh Singh
> Assignee: Fateh Singh
> Priority: Major
> Time Spent: 20m
> Remaining Estimate: 0h
>
> RANGER-2222 https://issues.apache.org/jira/browse/RANGER-2222 added support
> for cluster as new resource.
> RangerKafkaAuditHandler overrides the base implementation of
> RangerDefaultAuditHandler and this implementation overrides the default
> processResult(RangerAccessResult result) method wherein check is applied to
> decide if audit is needed or not ( If Cluster Resource Level Topic Creation
> is not Allowed we don't audit.Subsequent call from Kafka for Topic Creation
> at Topic resource Level will be audited)
> After RANGER-3231, the method processResults(Collection<RangerAccessResult>
> results) is called instead of processResult(RangerAccessResult result).
> Since RangerKafkaAuditHandler does not have
> processResults(Collection<RangerAccessResult> results) i.e. kafka specific
> way to process results, it falls back on the default
> RangerDefaultAuditHandler and all authorizations are audited.
> Bug fix required: processResults(Collection<RangerAccessResult> results) will
> have to be implemented for RangerKafkaAuditHandler to add checks to determine
> if auditing is required or not.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)