Repository: nifi Updated Branches: refs/heads/NIFI-655 efa1939fc -> 7851a4f50
http://git-wip-us.apache.org/repos/asf/nifi/blob/f2505604/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-security/src/main/java/org/apache/nifi/web/security/login/RegistrationFilter.java ---------------------------------------------------------------------- diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-security/src/main/java/org/apache/nifi/web/security/login/RegistrationFilter.java b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-security/src/main/java/org/apache/nifi/web/security/login/RegistrationFilter.java deleted file mode 100644 index 8a3f02e..0000000 --- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-security/src/main/java/org/apache/nifi/web/security/login/RegistrationFilter.java +++ /dev/null @@ -1,163 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.apache.nifi.web.security.login; - -import java.io.IOException; -import java.io.PrintWriter; -import javax.servlet.FilterChain; -import javax.servlet.ServletException; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import org.apache.nifi.admin.service.AccountDisabledException; -import org.apache.nifi.admin.service.AccountNotFoundException; -import org.apache.nifi.admin.service.AccountPendingException; -import org.apache.nifi.admin.service.AdministrationException; -import org.apache.nifi.admin.service.UserService; -import org.apache.nifi.authentication.LoginCredentials; -import org.apache.nifi.authentication.LoginIdentityProvider; -import org.apache.nifi.authentication.exception.IdentityAccessException; -import org.apache.nifi.authentication.exception.IdentityRegistrationException; -import org.apache.nifi.authorization.exception.IdentityAlreadyExistsException; -import org.apache.nifi.util.StringUtils; -import org.apache.nifi.web.security.jwt.JwtService; -import org.apache.nifi.web.security.token.LoginAuthenticationToken; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.security.authentication.AccountStatusException; -import org.springframework.security.authentication.AuthenticationServiceException; -import org.springframework.security.authentication.BadCredentialsException; -import org.springframework.security.core.Authentication; -import org.springframework.security.core.AuthenticationException; -import org.springframework.security.core.userdetails.UsernameNotFoundException; -import org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter; - -/** - * Exchanges a successful login with the configured provider for a ID token for accessing the API. - */ -public class RegistrationFilter extends AbstractAuthenticationProcessingFilter { - - private static final Logger logger = LoggerFactory.getLogger(RegistrationFilter.class); - - private LoginIdentityProvider loginIdentityProvider; - private JwtService jwtService; - private UserService userService; - - public RegistrationFilter(final String defaultFilterProcessesUrl) { - super(defaultFilterProcessesUrl); - - // do not continue filter chain... simply exchanging authentication for token - setContinueChainBeforeSuccessfulAuthentication(false); - } - - @Override - public Authentication attemptAuthentication(final HttpServletRequest request, final HttpServletResponse response) throws AuthenticationException, IOException, ServletException { - // only suppport registration when running securely - if (!request.isSecure()) { - return null; - } - - // look for the credentials in the request - final LoginCredentials credentials = getLoginCredentials(request); - - // if the credentials were not part of the request, attempt to log in with the certificate in the request - if (credentials == null) { - throw new UsernameNotFoundException("User login credentials not found in request."); - } else { - try { - // attempt to register the user - loginIdentityProvider.register(credentials); - } catch (final IdentityAlreadyExistsException iaee) { - // if the identity already exists, try to create the nifi account request - } catch (final IdentityRegistrationException ire) { - // the credentials are not acceptable for some reason - throw new BadCredentialsException(ire.getMessage(), ire); - } catch (final IdentityAccessException iae) { - throw new AuthenticationServiceException(iae.getMessage(), iae); - } - - try { - // see if the account already exists so we're able to return the current status - userService.checkAuthorization(credentials.getUsername()); - - // account exists and is valid - throw new AccountStatusException(String.format("An account for %s already exists.", credentials.getUsername())) { - }; - } catch (AdministrationException ase) { - throw new AuthenticationServiceException(ase.getMessage(), ase); - } catch (AccountDisabledException | AccountPendingException e) { - throw new AccountStatusException(e.getMessage(), e) { - }; - } catch (AccountNotFoundException anfe) { - // create the pending user account - userService.createPendingUserAccount(credentials.getUsername(), request.getParameter("justification")); - - // create the login token - return new LoginAuthenticationToken(credentials); - } - } - } - - private LoginCredentials getLoginCredentials(HttpServletRequest request) { - final String username = request.getParameter("username"); - final String password = request.getParameter("password"); - - if (StringUtils.isBlank(username) || StringUtils.isBlank(password)) { - return null; - } else { - return new LoginCredentials(username, password); - } - } - - @Override - protected void successfulAuthentication(final HttpServletRequest request, final HttpServletResponse response, final FilterChain chain, final Authentication authentication) - throws IOException, ServletException { - - // generate JWT for response - jwtService.addToken(response, authentication); - } - - @Override - protected void unsuccessfulAuthentication(final HttpServletRequest request, final HttpServletResponse response, final AuthenticationException failed) throws IOException, ServletException { - response.setContentType("text/plain"); - - final PrintWriter out = response.getWriter(); - out.println(failed.getMessage()); - - // set the appropriate response status - if (failed instanceof UsernameNotFoundException || failed instanceof BadCredentialsException) { - response.setStatus(HttpServletResponse.SC_BAD_REQUEST); - } else if (failed instanceof AccountStatusException) { - // account exists (maybe valid, pending, revoked) - response.setStatus(HttpServletResponse.SC_FORBIDDEN); - } else { - response.setStatus(HttpServletResponse.SC_INTERNAL_SERVER_ERROR); - } - } - - public void setJwtService(JwtService jwtService) { - this.jwtService = jwtService; - } - - public void setLoginIdentityProvider(LoginIdentityProvider loginIdentityProvider) { - this.loginIdentityProvider = loginIdentityProvider; - } - - public void setUserService(UserService userService) { - this.userService = userService; - } - -} http://git-wip-us.apache.org/repos/asf/nifi/blob/f2505604/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-security/src/main/java/org/apache/nifi/web/security/spring/LoginIdentityProviderFactoryBean.java ---------------------------------------------------------------------- diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-security/src/main/java/org/apache/nifi/web/security/spring/LoginIdentityProviderFactoryBean.java b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-security/src/main/java/org/apache/nifi/web/security/spring/LoginIdentityProviderFactoryBean.java index 9a51e85..27e9457 100644 --- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-security/src/main/java/org/apache/nifi/web/security/spring/LoginIdentityProviderFactoryBean.java +++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-security/src/main/java/org/apache/nifi/web/security/spring/LoginIdentityProviderFactoryBean.java @@ -259,20 +259,6 @@ public class LoginIdentityProviderFactoryBean implements FactoryBean, Disposable return new LoginIdentityProvider() { @Override - public boolean supportsRegistration() { - try (final NarCloseable narCloseable = NarCloseable.withNarLoader()) { - return baseProvider.supportsRegistration(); - } - } - - @Override - public void register(LoginCredentials credentials) { - try (final NarCloseable narCloseable = NarCloseable.withNarLoader()) { - baseProvider.register(credentials); - } - } - - @Override public boolean authenticate(LoginCredentials credentials) { try (final NarCloseable narCloseable = NarCloseable.withNarLoader()) { return baseProvider.authenticate(credentials); http://git-wip-us.apache.org/repos/asf/nifi/blob/f2505604/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/WEB-INF/pages/login.jsp ---------------------------------------------------------------------- diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/WEB-INF/pages/login.jsp b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/WEB-INF/pages/login.jsp index a4967b1..da2ae00 100644 --- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/WEB-INF/pages/login.jsp +++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/WEB-INF/pages/login.jsp @@ -43,7 +43,6 @@ <div id="login-contents-container"> <jsp:include page="/WEB-INF/partials/login/login-message.jsp"/> <jsp:include page="/WEB-INF/partials/login/login-form.jsp"/> - <jsp:include page="/WEB-INF/partials/login/user-registration-form.jsp"/> <jsp:include page="/WEB-INF/partials/login/nifi-registration-form.jsp"/> <jsp:include page="/WEB-INF/partials/login/login-submission.jsp"/> </div> http://git-wip-us.apache.org/repos/asf/nifi/blob/f2505604/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/WEB-INF/partials/login/login-form.jsp ---------------------------------------------------------------------- diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/WEB-INF/partials/login/login-form.jsp b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/WEB-INF/partials/login/login-form.jsp index 8480501..f8f06f3 100644 --- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/WEB-INF/partials/login/login-form.jsp +++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/WEB-INF/partials/login/login-form.jsp @@ -27,10 +27,6 @@ <div class="setting-name">Password</div> <div class="setting-field"> <input type="password" id="password"/> - <div id="create-account-message" class="hidden"> - <div style="font-style: italic;">Don't have an account?</div> - <div><span id="create-account-link" class="link">Create one</span> to request access.</div> - </div> </div> </div> </div> \ No newline at end of file http://git-wip-us.apache.org/repos/asf/nifi/blob/f2505604/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/WEB-INF/partials/login/nifi-registration-form.jsp ---------------------------------------------------------------------- diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/WEB-INF/partials/login/nifi-registration-form.jsp b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/WEB-INF/partials/login/nifi-registration-form.jsp index 101119c..f1b73c0 100644 --- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/WEB-INF/partials/login/nifi-registration-form.jsp +++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/WEB-INF/partials/login/nifi-registration-form.jsp @@ -30,10 +30,6 @@ <div class="setting-field"> <textarea cols="30" rows="4" id="nifi-registration-justification" maxlength="500" class="setting-input"></textarea> </div> - <div id="login-to-account-message" class="hidden"> - <div style="font-style: italic;">Already have an account?</div> - <div style="margin-top: 2px;"><span id="login-to-account-link" class="link">Log in</span></div> - </div> <div style="text-align: right; color: #666; margin-top: 2px; float: right;"> <span id="remaining-characters"></span> characters remaining </div> http://git-wip-us.apache.org/repos/asf/nifi/blob/f2505604/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/WEB-INF/partials/login/user-registration-form.jsp ---------------------------------------------------------------------- diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/WEB-INF/partials/login/user-registration-form.jsp b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/WEB-INF/partials/login/user-registration-form.jsp deleted file mode 100644 index 7930e39..0000000 --- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/WEB-INF/partials/login/user-registration-form.jsp +++ /dev/null @@ -1,34 +0,0 @@ -<%-- - Licensed to the Apache Software Foundation (ASF) under one or more - contributor license agreements. See the NOTICE file distributed with - this work for additional information regarding copyright ownership. - The ASF licenses this file to You under the Apache License, Version 2.0 - (the "License"); you may not use this file except in compliance with - the License. You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---%> -<%@ page contentType="text/html" pageEncoding="UTF-8" session="false" %> -<div id="user-registration-container" class="hidden"> - <div class="login-title">Create Account</div> - <div class="setting"> - <div class="setting-name">Username</div> - <div class="setting-field"> - <input type="text" id="registration-username"/> - </div> - </div> - <div class="setting"> - <div class="setting-name">Password</div> - <div class="setting-field"> - <input type="password" id="registration-password" style="margin-bottom: 5px;"/> - <br/> - <input type="password" id="registration-password-confirmation" placeholder="Confirm password"/> - </div> - </div> -</div> \ No newline at end of file http://git-wip-us.apache.org/repos/asf/nifi/blob/f2505604/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/css/login.css ---------------------------------------------------------------------- diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/css/login.css b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/css/login.css index f055d1a..62f6118 100644 --- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/css/login.css +++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/css/login.css @@ -56,18 +56,6 @@ body.login-body input, body.login-body textarea { width: 400px; } -#create-account-message { - margin-top: 2px; -} - -#create-account-link { - text-decoration: underline; -} - -/* - User Registration -*/ - /* NiFi Registration */ @@ -88,15 +76,6 @@ body.login-body input, body.login-body textarea { height: 200px; } -#login-to-account-message { - float: left; - margin-top: 2px; -} - -#login-to-account-link { - text-decoration: underline; -} - /* Submission */ http://git-wip-us.apache.org/repos/asf/nifi/blob/f2505604/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-canvas-header.js ---------------------------------------------------------------------- diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-canvas-header.js b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-canvas-header.js index 9e7bce1..62b5764 100644 --- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-canvas-header.js +++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-canvas-header.js @@ -141,21 +141,15 @@ nf.CanvasHeader = (function () { nf.Shell.showPage(config.urls.helpDocument); }); - // show the login link if supported and user is currently anonymous - var isAnonymous = $('#current-user').text() === nf.Canvas.ANONYMOUS_USER_TEXT; - if (supportsLogin === true && isAnonymous) { - // login link - $('#login-link').click(function () { - nf.Shell.showPage('login', false); - }); - } else { + // hide the login link if the user is already logged in + if ($('#current-user').text() !== nf.Canvas.ANONYMOUS_USER_TEXT) { $('#login-link-container').css('display', 'none'); } - // if login is not supported, don't show the current user - if (supportsLogin !== true) { - $('#current-user-container').css('display', 'none'); - } + // login link + $('#login-link').click(function () { + nf.Shell.showPage('login', false); + }); // logout link $('#logout-link').click(function () { http://git-wip-us.apache.org/repos/asf/nifi/blob/f2505604/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-canvas.js ---------------------------------------------------------------------- diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-canvas.js b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-canvas.js index c316ef2..5d7efcb 100644 --- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-canvas.js +++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-canvas.js @@ -1087,13 +1087,6 @@ nf.Canvas = (function () { dataType: 'json' }); - // get the login config - var loginXhr = $.ajax({ - type: 'GET', - url: config.urls.loginConfig, - dataType: 'json' - }); - // create the deferred cluster request var isClusteredRequest = $.Deferred(function (deferred) { $.ajax({ @@ -1113,9 +1106,8 @@ nf.Canvas = (function () { }).promise(); // ensure the config requests are loaded - $.when(configXhr, loginXhr, userXhr).done(function (configResult, loginResult) { + $.when(configXhr, userXhr).done(function (configResult) { var configResponse = configResult[0]; - var loginResponse = loginResult[0]; // calculate the canvas offset var canvasContainer = $('#canvas-container'); @@ -1123,7 +1115,6 @@ nf.Canvas = (function () { // get the config details var configDetails = configResponse.config; - var loginDetails = loginResponse.config; // when both request complete, load the application isClusteredRequest.done(function () { @@ -1143,7 +1134,7 @@ nf.Canvas = (function () { nf.ContextMenu.init(); nf.CanvasToolbar.init(); nf.CanvasToolbox.init(); - nf.CanvasHeader.init(loginDetails.supportsLogin); + nf.CanvasHeader.init(); nf.GraphControl.init(); nf.Search.init(); nf.Settings.init(); http://git-wip-us.apache.org/repos/asf/nifi/blob/f2505604/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/login/nf-login.js ---------------------------------------------------------------------- diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/login/nf-login.js b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/login/nf-login.js index 88156ef..2da60e3 100644 --- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/login/nf-login.js +++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/login/nf-login.js @@ -40,20 +40,7 @@ nf.Login = (function () { $('#login-message-container').show(); }; - var initializeLogin = function (supportsRegistration) { - // if this nifi supports registration, render the registration form - if (supportsRegistration === true) { - initializeUserRegistration(); - initializeNiFiRegistration(); - - // show the create account message - $('#create-account-message').show(); - - // toggle between login and signup - $('#create-account-link').on('click', function () { - showUserRegistration(); - }); - } + var initializeLogin = function () { }; var showLogin = function () { @@ -82,7 +69,6 @@ nf.Login = (function () { $('div.nifi-submit-justification').hide(); $('#user-registration-container').show(); - $('#login-to-account-message').show(); $('#login-submission-button').text('Create'); }; @@ -416,7 +402,7 @@ nf.Login = (function () { if (showMessage === true) { initializeMessage(); } else if (needsLogin === true) { - initializeLogin(loginConfig.supportsRegistration); + initializeLogin(); showLogin(); } else if (needsNiFiRegistration === true) { initializeNiFiRegistration(); http://git-wip-us.apache.org/repos/asf/nifi/blob/f2505604/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/pom.xml ---------------------------------------------------------------------- diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/pom.xml b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/pom.xml index 6709e84..b6f3f9c 100644 --- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/pom.xml +++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/pom.xml @@ -40,8 +40,6 @@ <module>nifi-web</module> <module>nifi-resources</module> <module>nifi-documentation</module> - <module>nifi-authorized-users</module> - <module>nifi-file-identity-provider</module> </modules> <dependencies> <dependency> http://git-wip-us.apache.org/repos/asf/nifi/blob/f2505604/nifi-nar-bundles/nifi-framework-bundle/pom.xml ---------------------------------------------------------------------- diff --git a/nifi-nar-bundles/nifi-framework-bundle/pom.xml b/nifi-nar-bundles/nifi-framework-bundle/pom.xml index a81a832..f78e497 100644 --- a/nifi-nar-bundles/nifi-framework-bundle/pom.xml +++ b/nifi-nar-bundles/nifi-framework-bundle/pom.xml @@ -45,11 +45,6 @@ </dependency> <dependency> <groupId>org.apache.nifi</groupId> - <artifactId>nifi-file-identity-provider</artifactId> - <version>0.3.1-SNAPSHOT</version> - </dependency> - <dependency> - <groupId>org.apache.nifi</groupId> <artifactId>nifi-cluster-authorization-provider</artifactId> <version>0.3.1-SNAPSHOT</version> </dependency> @@ -65,11 +60,6 @@ </dependency> <dependency> <groupId>org.apache.nifi</groupId> - <artifactId>nifi-authorized-users</artifactId> - <version>0.3.1-SNAPSHOT</version> - </dependency> - <dependency> - <groupId>org.apache.nifi</groupId> <artifactId>nifi-client-dto</artifactId> <version>0.3.1-SNAPSHOT</version> </dependency>
