This is an automated email from the ASF dual-hosted git repository.
epugh pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/solr.git
The following commit(s) were added to refs/heads/main by this push:
new b29e2b5ba83 SOLR-18122: Remove deprecated
VMParamsAllAndReadonlyDigestZkACLProvider class (#4525)
b29e2b5ba83 is described below
commit b29e2b5ba833e4a35ed44fb87966e1c553e5a83d
Author: Utsav <[email protected]>
AuthorDate: Sun Jun 21 23:37:11 2026 +0530
SOLR-18122: Remove deprecated VMParamsAllAndReadonlyDigestZkACLProvider
class (#4525)
---
.../SOLR-18122-remove-vmparams-acl-provider.yml | 8 ++
.../pages/major-changes-in-solr-10.adoc | 2 +
.../VMParamsAllAndReadonlyDigestZkACLProvider.java | 96 ----------------------
3 files changed, 10 insertions(+), 96 deletions(-)
diff --git a/changelog/unreleased/SOLR-18122-remove-vmparams-acl-provider.yml
b/changelog/unreleased/SOLR-18122-remove-vmparams-acl-provider.yml
new file mode 100644
index 00000000000..1ab1213ef58
--- /dev/null
+++ b/changelog/unreleased/SOLR-18122-remove-vmparams-acl-provider.yml
@@ -0,0 +1,8 @@
+# See https://github.com/apache/solr/blob/main/dev-docs/changelog.adoc
+title: Remove deprecated VMParamsAllAndReadonlyDigestZkACLProvider; use a
combination of DigestZkACLProvider and VMParamsZkCredentialsInjector instead.
+type: removed
+authors:
+ - name: Utsav Parmar
+links:
+ - name: SOLR-18122
+ url: https://issues.apache.org/jira/browse/SOLR-18122
diff --git
a/solr/solr-ref-guide/modules/upgrade-notes/pages/major-changes-in-solr-10.adoc
b/solr/solr-ref-guide/modules/upgrade-notes/pages/major-changes-in-solr-10.adoc
index d05081d297f..cf30c381573 100644
---
a/solr/solr-ref-guide/modules/upgrade-notes/pages/major-changes-in-solr-10.adoc
+++
b/solr/solr-ref-guide/modules/upgrade-notes/pages/major-changes-in-solr-10.adoc
@@ -284,6 +284,8 @@ Nowadays, the HTTP request is available via internal APIs:
`SolrQueryRequest.get
* The deprecated `solrcore.properties` configuration method has been removed.
The ability to configure a core via a custom properties file using the
`core.properties` "property" setting remains.
+* The deprecated `VMParamsAllAndReadonlyDigestZkACLProvider` class has been
removed. Use a combination of `DigestZkACLProvider` and
`VMParamsZkCredentialsInjector` instead. (SOLR-18122)
+
=== Security
* There is no longer a distinction between trusted and untrusted configSets;
all configSets are now considered trusted. To ensure security, Solr should be
properly protected using authentication and authorization mechanisms, allowing
only authorized users with administrative privileges to publish them.
diff --git
a/solr/solrj-zookeeper/src/java/org/apache/solr/common/cloud/VMParamsAllAndReadonlyDigestZkACLProvider.java
b/solr/solrj-zookeeper/src/java/org/apache/solr/common/cloud/VMParamsAllAndReadonlyDigestZkACLProvider.java
deleted file mode 100644
index 6ddd1a98a18..00000000000
---
a/solr/solrj-zookeeper/src/java/org/apache/solr/common/cloud/VMParamsAllAndReadonlyDigestZkACLProvider.java
+++ /dev/null
@@ -1,96 +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.solr.common.cloud;
-
-import java.util.List;
-import org.apache.zookeeper.data.ACL;
-
-/**
- * Deprecated in favor of a combination of {@link DigestZkACLProvider} and
{@link
- * VMParamsZkCredentialsInjector}.
- *
- * <pre>
- * Current implementation delegates to {@link DigestZkACLProvider} with an
injected {@link VMParamsZkCredentialsInjector}
- * </pre>
- */
-@Deprecated
-public class VMParamsAllAndReadonlyDigestZkACLProvider extends
SecurityAwareZkACLProvider
- implements ZkACLProvider {
-
- @Deprecated
- public static final String DEFAULT_DIGEST_USERNAME_VM_PARAM_NAME =
- VMParamsZkCredentialsInjector.DEFAULT_DIGEST_USERNAME_VM_PARAM_NAME;
-
- @Deprecated
- public static final String DEFAULT_DIGEST_PASSWORD_VM_PARAM_NAME =
- VMParamsZkCredentialsInjector.DEFAULT_DIGEST_PASSWORD_VM_PARAM_NAME;
-
- @Deprecated
- public static final String DEFAULT_DIGEST_READONLY_USERNAME_VM_PARAM_NAME =
-
VMParamsZkCredentialsInjector.DEFAULT_DIGEST_READONLY_USERNAME_VM_PARAM_NAME;
-
- @Deprecated
- public static final String DEFAULT_DIGEST_READONLY_PASSWORD_VM_PARAM_NAME =
-
VMParamsZkCredentialsInjector.DEFAULT_DIGEST_READONLY_PASSWORD_VM_PARAM_NAME;
-
- @Deprecated
- public static final String DEFAULT_DIGEST_FILE_VM_PARAM_NAME =
- VMParamsZkCredentialsInjector.DEFAULT_DIGEST_FILE_VM_PARAM_NAME;
-
- private DigestZkACLProvider digestZkACLProvider;
-
- public VMParamsAllAndReadonlyDigestZkACLProvider() {
- this(new VMParamsZkCredentialsInjector());
- }
-
- public VMParamsAllAndReadonlyDigestZkACLProvider(ZkCredentialsInjector
zkCredentialsInjector) {
- this.zkCredentialsInjector = zkCredentialsInjector;
- this.digestZkACLProvider = new DigestZkACLProvider(zkCredentialsInjector);
- }
-
- public VMParamsAllAndReadonlyDigestZkACLProvider(
- String zkDigestAllUsernameVMParamName,
- String zkDigestAllPasswordVMParamName,
- String zkDigestReadonlyUsernameVMParamName,
- String zkDigestReadonlyPasswordVMParamName) {
- this(
- new VMParamsZkCredentialsInjector(
- zkDigestAllUsernameVMParamName,
- zkDigestAllPasswordVMParamName,
- zkDigestReadonlyUsernameVMParamName,
- zkDigestReadonlyPasswordVMParamName));
- }
-
- @Override
- public void setZkCredentialsInjector(ZkCredentialsInjector
zkCredentialsInjector) {
- this.zkCredentialsInjector =
- zkCredentialsInjector != null &&
!zkCredentialsInjector.getZkCredentials().isEmpty()
- ? zkCredentialsInjector
- : new VMParamsZkCredentialsInjector();
- this.digestZkACLProvider = new
DigestZkACLProvider(this.zkCredentialsInjector);
- }
-
- @Override
- protected List<ACL> createNonSecurityACLsToAdd() {
- return digestZkACLProvider.createNonSecurityACLsToAdd();
- }
-
- @Override
- protected List<ACL> createSecurityACLsToAdd() {
- return digestZkACLProvider.createSecurityACLsToAdd();
- }
-}