src/main/java/com/purbon/kafka/topology/AccessControlManager.java
// Sync platform relevant Access Control List.
Sync platform relevant Access Control List.
Sync platform relevant Access Control List .
public List<Action> buildPlatformLevelActions(final Topology topology) {
    List<Action> actions = new ArrayList<>();
    Platform platform = topology.getPlatform();
    syncClusterLevelRbac(platform.getKafka().getRbac(), KAFKA, actions);
    syncClusterLevelRbac(platform.getKafkaConnect().getRbac(), KAFKA_CONNECT, actions);
    syncClusterLevelRbac(platform.getSchemaRegistry().getRbac(), SCHEMA_REGISTRY, actions);
    for (SchemaRegistryInstance schemaRegistry : platform.getSchemaRegistry().getInstances()) {
      actions.add(new BuildBindingsForSchemaRegistry(bindingsBuilder, schemaRegistry));
    }
    for (ControlCenterInstance controlCenter : platform.getControlCenter().getInstances()) {
      actions.add(new BuildBindingsForControlCenter(bindingsBuilder, controlCenter));
    }
    for (KsqlServerInstance ksqlServer : platform.getKsqlServer().getInstances()) {
      actions.add(new BuildBindingsForKSqlServer(bindingsBuilder, ksqlServer));
    }
    return actions;
  }
public List < Action > buildPlatformLevelActions ( final Topology topology ) { List < Action > actions = new ArrayList < > ( ) ; Platform platform = topology . getPlatform ( ) ; syncClusterLevelRbac ( platform . getKafka ( ) . getRbac ( ) , KAFKA , actions ) ; syncClusterLevelRbac ( platform . getKafkaConnect ( ) . getRbac ( ) , KAFKA_CONNECT , actions ) ; syncClusterLevelRbac ( platform . getSchemaRegistry ( ) . getRbac ( ) , SCHEMA_REGISTRY , actions ) ; for ( SchemaRegistryInstance schemaRegistry : platform . getSchemaRegistry ( ) . getInstances ( ) ) { actions . add ( new BuildBindingsForSchemaRegistry ( bindingsBuilder , schemaRegistry ) ) ; } for ( ControlCenterInstance controlCenter : platform . getControlCenter ( ) . getInstances ( ) ) { actions . add ( new BuildBindingsForControlCenter ( bindingsBuilder , controlCenter ) ) ; } for ( KsqlServerInstance ksqlServer : platform . getKsqlServer ( ) . getInstances ( ) ) { actions . add ( new BuildBindingsForKSqlServer ( bindingsBuilder , ksqlServer ) ) ; } return actions ; }
Sync platform relevant Access Control List.
Sync platform relevant Access Control List .
// Set cluster level ACLs // Set component level ACLs