sjyang18 / nifi-azure-customized-bundle

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

nifi-azure-customized-bundle

This bundle includes the module that stores NIFI policies into Mongo DB (possibly Azure Cosmos with Mongo DB API).

Pre-requsites

Configuration

  • Build nar files with 'mvn clean install' and copy nar files to your NIFI cluster lib directory.
cp ./nifi-azure-customized-api-nar/target/nifi-azure-customized-api-nar-1.0-SNAPSHOT.nar ${NIFI_DIR}/lib
cp ./nifi-azure-customized-nar/target/nifi-azure-customized-nar-1.0-SNAPSHOT.nar ${NIFI_DIR}/lib
  • Update your Nifi conf/authorizers.xml with azure-access-policy-provider. Change 'User Group Provider' and 'Initial Admin Idenity' based on your choice. For example,
<accessPolicyProvider>
    <identifier>azure-access-policy-provider</identifier>
    <class>org.apache.nifi.authorization.azure.MongoDBAccessPolicyProvider</class>
    <property name="MongoDB Connection String for Authorizations">mongodb://XXX:YYYY:10255/?ssl=true&amp;replicaSet=globaldb&amp;retrywrites=false&amp;maxIdleTimeMS=120000&amp;appName=@ZZZ@</property>
    <property name="MongoDB DB Name for Authorizations">nifi-policy</property>
    <property name="User Group Provider">composite-configurable-user-group-provider</property>
    <property name="Initial Admin Identity">CN=admin, OU=ApacheNiFi</property>
    <property name="Node Identity 1"></property>
    <property name="Node Group"></property>
    <property name="Cache Expiration Timeout">2 mins</property>
</accessPolicyProvider>

<authorizer>
    <identifier>managed-authorizer</identifier>
    <class>org.apache.nifi.authorization.StandardManagedAuthorizer</class>
    <property name="Access Policy Provider">azure-access-policy-provider</property>
</authorizer>

Note that in the example above, "&" in the connection string is replaced with "&amp;" to escape in XML.

About


Languages

Language:Java 100.0%