diff --git a/redfish-core/lib/account_service.hpp b/redfish-core/lib/account_service.hpp
index 0cef7a3..8ccab65 100644
--- a/redfish-core/lib/account_service.hpp
+++ b/redfish-core/lib/account_service.hpp
@@ -88,10 +88,6 @@
     {
         return "Operator";
     }
-    if (role.empty() || (role == "priv-noaccess"))
-    {
-        return "NoAccess";
-    }
     return "";
 }
 inline std::string getPrivilegeFromRoleId(std::string_view role)
@@ -108,10 +104,6 @@
     {
         return "priv-operator";
     }
-    if ((role == "NoAccess") || (role.empty()))
-    {
-        return "priv-noaccess";
-    }
     return "";
 }
 
@@ -1244,10 +1236,6 @@
                                                  "RoleId");
                 return;
             }
-            if (priv == "priv-noaccess")
-            {
-                priv = "";
-            }
 
             crow::connections::systemBus->async_method_call(
                 [asyncResp](const boost::system::error_code ec) {
@@ -1633,18 +1621,7 @@
         messages::propertyValueNotInList(asyncResp->res, *roleId, "RoleId");
         return;
     }
-    // TODO: Following override will be reverted once support in
-    // phosphor-user-manager is added. In order to avoid dependency
-    // issues, this is added in bmcweb, which will removed, once
-    // phosphor-user-manager supports priv-noaccess.
-    if (priv == "priv-noaccess")
-    {
-        roleId = "";
-    }
-    else
-    {
-        roleId = priv;
-    }
+    roleId = priv;
 
     // Reading AllGroups property
     sdbusplus::asio::getProperty<std::vector<std::string>>(
diff --git a/redfish-core/lib/roles.hpp b/redfish-core/lib/roles.hpp
index ef7b5f4..962a1c2 100644
--- a/redfish-core/lib/roles.hpp
+++ b/redfish-core/lib/roles.hpp
@@ -39,10 +39,6 @@
     {
         return "Operator";
     }
-    if (priv == "priv-noaccess")
-    {
-        return "NoAccess";
-    }
     return "";
 }
 
@@ -62,10 +58,6 @@
     {
         privArray = {"Login", "ConfigureSelf"};
     }
-    else if (role == "NoAccess")
-    {
-        privArray = nlohmann::json::array();
-    }
     else
     {
         return false;
