This is an automated email from the ASF dual-hosted git repository.

dhavaljrajpara pushed a commit to branch RANGER-5711
in repository https://gitbox.apache.org/repos/asf/ranger.git

commit 599f2a518278400153666bfa95cfcc527846c0bc
Author: Dhaval Rajpara <[email protected]>
AuthorDate: Wed Oct 28 07:46:30 2026 +0530

    RANGER-5711 : Key Manager shows 'Data not found' error upon access by 
keyadmin user
---
 .../src/main/java/org/apache/ranger/biz/KmsKeyMgr.java   | 16 +++++++++++-----
 .../react-webapp/src/views/Encryption/KeyManager.jsx     |  3 ++-
 2 files changed, 13 insertions(+), 6 deletions(-)

diff --git a/security-admin/src/main/java/org/apache/ranger/biz/KmsKeyMgr.java 
b/security-admin/src/main/java/org/apache/ranger/biz/KmsKeyMgr.java
index ee16980d7..6781aee8c 100755
--- a/security-admin/src/main/java/org/apache/ranger/biz/KmsKeyMgr.java
+++ b/security-admin/src/main/java/org/apache/ranger/biz/KmsKeyMgr.java
@@ -114,7 +114,7 @@ public VXKmsKeyList searchKeys(HttpServletRequest request, 
String repoName) thro
             providers = getKMSURL(repoName);
         } catch (Exception e) {
             logger.error("getKey({}) failed", repoName, e);
-            throw restErrorUtil.createRESTException("Provider '" + repoName + 
"' not found or invalid: " + e.getMessage(), MessageEnums.DATA_NOT_FOUND);
+            throwServiceNotFoundException(repoName);
         }
 
         List<VXKmsKey> vXKeys       = new ArrayList<>();
@@ -243,7 +243,7 @@ public VXKmsKey rolloverKey(String provider, VXKmsKey 
vXKey) throws Exception {
             providers = getKMSURL(provider);
         } catch (Exception e) {
             logger.error("rolloverKey({}, {}) failed", provider, 
vXKey.getName(), e);
-            throw restErrorUtil.createRESTException("Provider '" + provider + 
"' not found or invalid: " + e.getMessage(), MessageEnums.DATA_NOT_FOUND);
+            throwServiceNotFoundException(provider);
         }
 
         VXKmsKey ret        = null;
@@ -312,7 +312,7 @@ public void deleteKey(String provider, String name) throws 
Exception {
             providers = getKMSURL(provider);
         } catch (Exception e) {
             logger.error("deleteKey({}, {}) failed", provider, name, e);
-            throw restErrorUtil.createRESTException("Provider '" + provider + 
"' not found or invalid: " + e.getMessage(), MessageEnums.DATA_NOT_FOUND);
+            throwServiceNotFoundException(provider);
         }
 
         boolean isKerberos = false;
@@ -374,7 +374,7 @@ public VXKmsKey createKey(String provider, VXKmsKey vXKey) 
throws Exception {
             providers = getKMSURL(provider);
         } catch (Exception e) {
             logger.error("createKey({}, {}) failed", provider, 
vXKey.getName(), e);
-            throw restErrorUtil.createRESTException("Provider '" + provider + 
"' not found or invalid: " + e.getMessage(), MessageEnums.DATA_NOT_FOUND);
+            throwServiceNotFoundException(provider);
         }
 
         VXKmsKey ret        = null;
@@ -443,7 +443,7 @@ public VXKmsKey getKey(String provider, String name) throws 
Exception {
             providers = getKMSURL(provider);
         } catch (Exception e) {
             logger.error("getKey({}, {}) failed", provider, name, e);
-            throw restErrorUtil.createRESTException("Provider '" + provider + 
"' not found or invalid: " + e.getMessage(), MessageEnums.DATA_NOT_FOUND);
+            throwServiceNotFoundException(provider);
         }
 
         boolean isKerberos = false;
@@ -550,6 +550,12 @@ public VXKmsKeyList getFilteredKeyList(HttpServletRequest 
request, VXKmsKeyList
         return vXKmsKeyList;
     }
 
+    private void throwServiceNotFoundException(String serviceName) {
+        throw restErrorUtil.createRESTException(
+                "Service Name (Provider) '" + serviceName + "' not found or 
invalid",
+                MessageEnums.DATA_NOT_FOUND);
+    }
+
     private String[] getKMSURL(String name) throws Exception {
         String[] providers;
 
diff --git 
a/security-admin/src/main/webapp/react-webapp/src/views/Encryption/KeyManager.jsx
 
b/security-admin/src/main/webapp/react-webapp/src/views/Encryption/KeyManager.jsx
index 75dc4a82c..6b4a641e8 100644
--- 
a/security-admin/src/main/webapp/react-webapp/src/views/Encryption/KeyManager.jsx
+++ 
b/security-admin/src/main/webapp/react-webapp/src/views/Encryption/KeyManager.jsx
@@ -391,7 +391,8 @@ const KeyManager = () => {
       try {
         selectedServicesResponse = await fetchApi({
           url: "/keys/keys",
-          params: params
+          params: params,
+          skipNavigate: true
         });
         selectedServicesData = selectedServicesResponse.data.vXKeys;
         totalCount = selectedServicesResponse.data.totalCount;

Reply via email to