<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>question Re: Apache Ranger Admin UI Login Question in Support Questions</title>
    <link>https://community.cloudera.com/t5/Support-Questions/Apache-Ranger-Admin-UI-Login-Question/m-p/403068#M251871</link>
    <description>&lt;P&gt;&lt;a href="https://community.cloudera.com/t5/user/viewprofilepage/user-id/95611"&gt;@upadhyayk04&lt;/a&gt;&amp;nbsp;So for Ranger Admin, I configured it to use LDAP and it wasn't enough to login to the UI in version 2.5.0. Once I configured &lt;STRONG&gt;both&lt;/STRONG&gt; Ranger Admin and Ranger Usersync it worked.&amp;nbsp;&lt;BR /&gt;&lt;BR /&gt;I am under the same assumption as you. I thought just configuring the Ranger Admin to use LDAP was enough but in this case it wasn't.&lt;/P&gt;</description>
    <pubDate>Thu, 27 Feb 2025 15:38:21 GMT</pubDate>
    <dc:creator>drewski7</dc:creator>
    <dc:date>2025-02-27T15:38:21Z</dc:date>
    <item>
      <title>Apache Ranger Admin UI Login Question</title>
      <link>https://community.cloudera.com/t5/Support-Questions/Apache-Ranger-Admin-UI-Login-Question/m-p/401926#M251354</link>
      <description>&lt;P&gt;I am running Ranger Admin 2.4.0. Right now I have it synced with LDAP and am able to login to the Ranger Admin UI via my LDAP username and password. When I try upgrading to Ranger Admin 2.5.0 using the same configurations I am getting these errors in the logs.&lt;/P&gt;&lt;P&gt;catalina.out -&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;java.lang.RuntimeException: Failed to create user drew.nicolette in x_portal_user table. retrying&lt;BR /&gt;at org.apache.ranger.biz.XUserMgr$ExternalUserCreator.createExternalUser(XUserMgr.java:3314)&lt;BR /&gt;at org.apache.ranger.biz.XUserMgr$ExternalUserCreator.run(XUserMgr.java:3288)&lt;BR /&gt;at org.apache.ranger.common.db.RangerTransactionSynchronizationAdapter.addRunnable(RangerTransactionSynchronizationAdapter.java:136)&lt;BR /&gt;at org.apache.ranger.common.db.RangerTransactionSynchronizationAdapter.executeOnTransactionCommit(RangerTransactionSynchronizationAdapter.java:82)&lt;BR /&gt;at org.apache.ranger.biz.XUserMgr.createServiceConfigUser(XUserMgr.java:2601)&lt;BR /&gt;at org.apache.ranger.biz.XUserMgr$$FastClassBySpringCGLIB$$57c6d473.invoke(&amp;lt;generated&amp;gt;)&lt;BR /&gt;at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218)&lt;BR /&gt;at org.springframework.aop.framework.CglibAopProxy.invokeMethod(CglibAopProxy.java:386)&lt;BR /&gt;at org.springframework.aop.framework.CglibAopProxy.access$000(CglibAopProxy.java:85)&lt;BR /&gt;at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:703)&lt;BR /&gt;at org.apache.ranger.biz.XUserMgr$$EnhancerBySpringCGLIB$$c3461920.createServiceConfigUser(&amp;lt;generated&amp;gt;)&lt;BR /&gt;at org.apache.ranger.security.web.authentication.RangerAuthSuccessHandler.onAuthenticationSuccess(RangerAuthSuccessHandler.java:96)&lt;BR /&gt;at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.successfulAuthentication(AbstractAuthenticationProcessingFilter.java:329)&lt;BR /&gt;at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:237)&lt;BR /&gt;at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:217)&lt;BR /&gt;at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)&lt;BR /&gt;at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103)&lt;BR /&gt;at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89)&lt;BR /&gt;at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)&lt;BR /&gt;at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90)&lt;BR /&gt;at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75)&lt;BR /&gt;at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)&lt;BR /&gt;at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)&lt;BR /&gt;at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55)&lt;BR /&gt;at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) &lt;BR /&gt;at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)&lt;BR /&gt;at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:112)&lt;BR /&gt;at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:82)&lt;BR /&gt;at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)&lt;BR /&gt;at org.springframework.security.web.session.ForceEagerSessionCreationFilter.doFilterInternal(ForceEagerSessionCreationFilter.java:45)&lt;BR /&gt;at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)&lt;BR /&gt;at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)&lt;BR /&gt;at org.springframework.security.web.session.DisableEncodeUrlFilter.doFilterInternal(DisableEncodeUrlFilter.java:42)&lt;BR /&gt;at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)&lt;BR /&gt;at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346)&lt;BR /&gt;at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221)&lt;BR /&gt;at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186)&lt;BR /&gt;at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354)&lt;BR /&gt;at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267)&lt;BR /&gt;at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:181)&lt;BR /&gt;at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:156)&lt;BR /&gt;at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:168)&lt;BR /&gt;at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90)&lt;BR /&gt;at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:483)&lt;BR /&gt;at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:130)&lt;BR /&gt;at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93)&lt;BR /&gt;at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:679)&lt;BR /&gt;at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)&lt;BR /&gt;at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342)&lt;BR /&gt;at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:617)&lt;BR /&gt;at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63)&lt;BR /&gt;at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:934)&lt;BR /&gt;at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1698)&lt;BR /&gt;at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52)&lt;BR /&gt;at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191)&lt;BR /&gt;at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659)&lt;BR /&gt;at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)&lt;BR /&gt;at java.lang.Thread.run(Thread.java:750)&lt;BR /&gt;Caused by: javax.persistence.TransactionRequiredException: No EntityManager with actual transaction available for current thread - cannot reliably process 'persist' call&lt;BR /&gt;at org.springframework.orm.jpa.SharedEntityManagerCreator$SharedEntityManagerInvocationHandler.invoke(SharedEntityManagerCreator.java:300)&lt;BR /&gt;at com.sun.proxy.$Proxy33.persist(Unknown Source)&lt;BR /&gt;at org.apache.ranger.common.db.BaseDao.create(BaseDao.java:110)&lt;BR /&gt;at org.apache.ranger.biz.UserMgr.createUser(UserMgr.java:161)&lt;BR /&gt;at org.apache.ranger.biz.UserMgr$$FastClassBySpringCGLIB$$3bbcf0cf.invoke(&amp;lt;generated&amp;gt;)&lt;BR /&gt;at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218)&lt;BR /&gt;at org.springframework.aop.framework.CglibAopProxy.invokeMethod(CglibAopProxy.java:386)&lt;BR /&gt;at org.springframework.aop.framework.CglibAopProxy.access$000(CglibAopProxy.java:85)&lt;BR /&gt;at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:703)&lt;BR /&gt;at org.apache.ranger.biz.UserMgr$$EnhancerBySpringCGLIB$$a7bf07b4.createUser(&amp;lt;generated&amp;gt;)&lt;BR /&gt;at org.apache.ranger.biz.XUserMgr$ExternalUserCreator.createExternalUser(XUserMgr.java:3309)&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;ranger-admin.log&lt;/P&gt;&lt;PRE&gt;2025-02-12 20:48:12,287 [https-jsse-nio-6182-exec-5] INFO [SpringEventListener.java:76] Login Successful:drew.nicolette | Ip Address:172.34.100.196 | sessionId=0A3BABC02CC58F33F6A7055DAD1FAE26 | Epoch=1739393292287&lt;BR /&gt;2025-02-12 20:48:12,293 [https-jsse-nio-6182-exec-5] ERROR [SessionMgr.java:486] Error getting user for loginId=drew.nicolette&amp;nbsp;&lt;/PRE&gt;&lt;P&gt;&lt;BR /&gt;However, the fix I noticed is to run usersync along side of ranger admin. This allowed me to login to the Ranger Admin UI.&lt;/P&gt;&lt;P&gt;Does anyone know if this is required? Any help would be greatly appreciated!&lt;/P&gt;&lt;P&gt;&lt;a href="https://community.cloudera.com/t5/user/viewprofilepage/user-id/20288"&gt;@Shelton&lt;/a&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 21 Apr 2026 06:21:26 GMT</pubDate>
      <guid>https://community.cloudera.com/t5/Support-Questions/Apache-Ranger-Admin-UI-Login-Question/m-p/401926#M251354</guid>
      <dc:creator>drewski7</dc:creator>
      <dc:date>2026-04-21T06:21:26Z</dc:date>
    </item>
    <item>
      <title>Re: Apache Ranger Admin UI Login Question</title>
      <link>https://community.cloudera.com/t5/Support-Questions/Apache-Ranger-Admin-UI-Login-Question/m-p/402738#M251764</link>
      <description>&lt;P&gt;Hello&amp;nbsp;&lt;a href="https://community.cloudera.com/t5/user/viewprofilepage/user-id/79092"&gt;@drewski7&lt;/a&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thank you for reaching out to the community&lt;/P&gt;&lt;P&gt;Just want to clarify one thing to fix this issue you did install Ranger user sync or you configure ldap auth with user sync as well along with Ranger admin&lt;/P&gt;&lt;P&gt;Usually, to login to Rager admin UI with ldap we just need to configure ldap configuration in Ranger Admin configuration and this should be enough. Usersync will sync users and groups to Ranger which you can use to assign permissions later from Ranger using polcies&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Sun, 23 Feb 2025 04:26:04 GMT</pubDate>
      <guid>https://community.cloudera.com/t5/Support-Questions/Apache-Ranger-Admin-UI-Login-Question/m-p/402738#M251764</guid>
      <dc:creator>upadhyayk04</dc:creator>
      <dc:date>2025-02-23T04:26:04Z</dc:date>
    </item>
    <item>
      <title>Re: Apache Ranger Admin UI Login Question</title>
      <link>https://community.cloudera.com/t5/Support-Questions/Apache-Ranger-Admin-UI-Login-Question/m-p/403068#M251871</link>
      <description>&lt;P&gt;&lt;a href="https://community.cloudera.com/t5/user/viewprofilepage/user-id/95611"&gt;@upadhyayk04&lt;/a&gt;&amp;nbsp;So for Ranger Admin, I configured it to use LDAP and it wasn't enough to login to the UI in version 2.5.0. Once I configured &lt;STRONG&gt;both&lt;/STRONG&gt; Ranger Admin and Ranger Usersync it worked.&amp;nbsp;&lt;BR /&gt;&lt;BR /&gt;I am under the same assumption as you. I thought just configuring the Ranger Admin to use LDAP was enough but in this case it wasn't.&lt;/P&gt;</description>
      <pubDate>Thu, 27 Feb 2025 15:38:21 GMT</pubDate>
      <guid>https://community.cloudera.com/t5/Support-Questions/Apache-Ranger-Admin-UI-Login-Question/m-p/403068#M251871</guid>
      <dc:creator>drewski7</dc:creator>
      <dc:date>2025-02-27T15:38:21Z</dc:date>
    </item>
    <item>
      <title>Re: Apache Ranger Admin UI Login Question</title>
      <link>https://community.cloudera.com/t5/Support-Questions/Apache-Ranger-Admin-UI-Login-Question/m-p/403352#M252037</link>
      <description>&lt;P&gt;Hello&amp;nbsp;&lt;a href="https://community.cloudera.com/t5/user/viewprofilepage/user-id/79092"&gt;@drewski7&lt;/a&gt;&amp;nbsp;I have seen Ranger Admin working with LDAP users without configuring ldap configuration in Ranger usersync&lt;/P&gt;&lt;P&gt;By the way what is the CDP version you are using?&lt;/P&gt;</description>
      <pubDate>Sun, 02 Mar 2025 10:13:26 GMT</pubDate>
      <guid>https://community.cloudera.com/t5/Support-Questions/Apache-Ranger-Admin-UI-Login-Question/m-p/403352#M252037</guid>
      <dc:creator>upadhyayk04</dc:creator>
      <dc:date>2025-03-02T10:13:26Z</dc:date>
    </item>
    <item>
      <title>Re: Apache Ranger Admin UI Login Question</title>
      <link>https://community.cloudera.com/t5/Support-Questions/Apache-Ranger-Admin-UI-Login-Question/m-p/403380#M252053</link>
      <description>&lt;P&gt;&lt;a href="https://community.cloudera.com/t5/user/viewprofilepage/user-id/79092"&gt;@drewski7&lt;/a&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The error message says there's no EntityManager with an actual transaction available. That suggests that the code trying to persist the user isn't running within a transactional context. In Spring applications, methods that modify the database usually need to be annotated with `@Transactional` to ensure they run within a transaction.&lt;/P&gt;&lt;P&gt;Looking at the stack trace, the error occurs in `XUserMgr$ExternalUserCreator.createExternalUser`, which calls `UserMgr.createUser`, which in turn uses `BaseDao.create`. The `create` method in `BaseDao` is trying to persist an entity but there's no active transaction. So maybe the `createUser` method or the code calling it isn't properly transactional.&lt;/P&gt;&lt;P&gt;In version 2.4.0, this worked, so something must have changed in 2.5.0. Perhaps the upgrade introduced changes in how transactions are managed. Maybe a method that was previously transactional no longer is, or the transaction boundaries have shifted.&lt;BR /&gt;&lt;BR /&gt;&lt;FONT size="4"&gt;&lt;STRONG&gt;Step 1: Verify Database Schema Compatibility&lt;/STRONG&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;Ranger 2.5.0 may require schema updates. Ensure the database schema is compatible with the new version:&lt;/P&gt;&lt;OL&gt;&lt;OL&gt;&lt;LI&gt;&lt;P&gt;&lt;STRONG&gt;Check Upgrade Documentation&lt;/STRONG&gt;:&lt;BR /&gt;Review the&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;A href="https://ranger.apache.org/release-notes.html" target="_blank" rel="noopener noreferrer"&gt;Ranger 2.5.0 Release Notes&lt;/A&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;for required schema changes.&lt;BR /&gt;Example: If migrating from 2.4.0 to 2.5.0, you may need to run SQL scripts like&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;EM&gt;x_portal_user_DDL.sql&lt;/EM&gt;&amp;nbsp;or&amp;nbsp;&lt;EM&gt;apache-ranger-2.5.0-schema-upgrade.sql.&lt;/EM&gt;&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;&lt;STRONG&gt;Run Schema Upgrade Scripts&lt;/STRONG&gt;:&lt;BR /&gt;Locate the schema upgrade scripts in the Ranger installation directory (&lt;EM&gt;ranger-admin/db/mysql/patches&lt;/EM&gt;) and apply them:&lt;/P&gt;&lt;LI-SPOILER&gt;&lt;FONT size="2"&gt;mysql -u root -p ranger &amp;lt; apache-ranger-2.5.0-schema-upgrade.sql&lt;/FONT&gt;&lt;/LI-SPOILER&gt;&lt;/LI&gt;&lt;LI&gt;&lt;STRONG&gt;Validate the Schema&lt;/STRONG&gt;:&lt;BR /&gt;Confirm that the&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;EM&gt;x_portal_user&lt;/EM&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;table exists and has the expected columns (e.g.,&lt;EM&gt;&amp;nbsp;login_id,&amp;nbsp;user_role).&lt;BR /&gt;&lt;/EM&gt;&lt;H3&gt;&lt;FONT size="4"&gt;&lt;STRONG&gt;Step 2: Check Transaction Management Configuration&lt;/STRONG&gt;&lt;/FONT&gt;&lt;/H3&gt;&lt;P&gt;The error suggests a missing&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;EM&gt;@Transactional&amp;nbsp;&lt;/EM&gt;annotation or misconfigured transaction manager in Ranger 2.5.0:&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;&lt;P&gt;&lt;STRONG&gt;Review Code/Configuration Changes&lt;/STRONG&gt;:&lt;BR /&gt;Compare the transaction management configurations between Ranger 2.4.0 and 2.5.0. Key files:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;&lt;P&gt;&lt;FONT size="3"&gt;&lt;EM&gt;ranger-admin/ews/webapp/WEB-INF/classes/conf/application.properties&lt;/EM&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;&lt;FONT size="3"&gt;&lt;EM&gt;ranger-admin/ews/webapp/WEB-INF/classes/spring-beans.xml&lt;/EM&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/LI&gt;&lt;/OL&gt;&lt;/LI&gt;&lt;/OL&gt;&lt;/OL&gt;&lt;P&gt;&lt;STRONG&gt;Apache Ranger JIRA&lt;/STRONG&gt;:&lt;BR /&gt;Search for issues like&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;A href="https://issues.apache.org/jira/browse/RANGER" target="_blank" rel="noopener noreferrer"&gt;RANGER-XXXX&lt;/A&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;related to transaction management in Ranger 2.5.0.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Ensure Transactional Annotations&lt;/STRONG&gt;:&lt;BR /&gt;In Ranger 2.5.0, the method&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;EM&gt;createUser&lt;/EM&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;in&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;EM&gt;UserMgr.java&lt;/EM&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;or its caller must be annotated with&lt;EM&gt;&amp;nbsp;@Transactional&amp;nbsp;&lt;/EM&gt;to ensure database operations run in a transaction.&lt;/P&gt;&lt;LI-SPOILER&gt;&lt;FONT size="2"&gt;@Transactional&lt;/FONT&gt;&lt;BR /&gt;&lt;FONT size="2"&gt;public void createUser(...) { ... }&lt;/FONT&gt;&lt;/LI-SPOILER&gt;&lt;P&gt;3.&amp;nbsp;&lt;STRONG&gt;Debug Transaction Boundaries&lt;/STRONG&gt;&lt;SPAN&gt;:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Enable transaction logging in&amp;nbsp;&lt;/SPAN&gt;&lt;EM&gt;log4j.properties&amp;nbsp;&lt;/EM&gt;&lt;SPAN&gt;to trace transaction activity&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;&lt;LI-SPOILER&gt;&lt;FONT size="2"&gt;log4j.logger.org.springframework.transaction=DEBUG&lt;/FONT&gt;&lt;BR /&gt;&lt;FONT size="2"&gt;log4j.logger.org.springframework.orm.jpa=DEBUG&lt;/FONT&gt;&lt;/LI-SPOILER&gt;&lt;H3&gt;&lt;FONT size="4"&gt;&lt;STRONG&gt;Step 3: Manually Create the User (Temporary Workaround)&lt;/STRONG&gt;&lt;/FONT&gt;&lt;/H3&gt;&lt;P&gt;If the user&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;EM&gt;drew.nicolette&lt;/EM&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;is missing from&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;EM&gt;x_portal_user,&lt;/EM&gt; manually insert it into the database:&lt;/P&gt;&lt;LI-SPOILER&gt;&lt;FONT size="2"&gt;INSERT INTO x_portal_user (login_id, password, user_role, status)&lt;/FONT&gt;&lt;BR /&gt;&lt;FONT size="2"&gt;VALUES ('drew.nicolette', 'LDAP_USER_PASSWORD_HASH_IF_APPLICABLE', 'ROLE_USER', 1);&lt;/FONT&gt;&lt;/LI-SPOILER&gt;&lt;P&gt;&lt;STRONG&gt;Note&lt;/STRONG&gt;&lt;SPAN&gt;: This bypasses the transaction error but is not a permanent fix.&lt;/SPAN&gt;&lt;/P&gt;&lt;H3&gt;&lt;FONT size="4"&gt;&lt;STRONG&gt;Step 4: Verify LDAP Configuration&lt;/STRONG&gt;&lt;/FONT&gt;&lt;/H3&gt;&lt;P&gt;Ensure LDAP settings in&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;EM&gt;ranger-admin/ews/webapp/WEB-INF/classes/conf/ranger-admin-site.xml&lt;/EM&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;are correct for Ranger 2.5.0:&lt;/P&gt;&lt;PRE&gt;&lt;SPAN class="token tag"&gt;&lt;SPAN class="token punctuation"&gt;&amp;lt;&lt;/SPAN&gt;property&lt;SPAN class="token punctuation"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;
  &lt;SPAN class="token tag"&gt;&lt;SPAN class="token punctuation"&gt;&amp;lt;&lt;/SPAN&gt;name&lt;SPAN class="token punctuation"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;ranger.authentication.method&lt;SPAN class="token tag"&gt;&lt;SPAN class="token punctuation"&gt;&amp;lt;/&lt;/SPAN&gt;name&lt;SPAN class="token punctuation"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;
  &lt;SPAN class="token tag"&gt;&lt;SPAN class="token punctuation"&gt;&amp;lt;&lt;/SPAN&gt;value&lt;SPAN class="token punctuation"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;LDAP&lt;SPAN class="token tag"&gt;&lt;SPAN class="token punctuation"&gt;&amp;lt;/&lt;/SPAN&gt;value&lt;SPAN class="token punctuation"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;
&lt;SPAN class="token tag"&gt;&lt;SPAN class="token punctuation"&gt;&amp;lt;/&lt;/SPAN&gt;property&lt;SPAN class="token punctuation"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;
&lt;SPAN class="token tag"&gt;&lt;SPAN class="token punctuation"&gt;&amp;lt;&lt;/SPAN&gt;property&lt;SPAN class="token punctuation"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;
  &lt;SPAN class="token tag"&gt;&lt;SPAN class="token punctuation"&gt;&amp;lt;&lt;/SPAN&gt;name&lt;SPAN class="token punctuation"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;ranger.ldap.url&lt;SPAN class="token tag"&gt;&lt;SPAN class="token punctuation"&gt;&amp;lt;/&lt;/SPAN&gt;name&lt;SPAN class="token punctuation"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;
  &lt;SPAN class="token tag"&gt;&lt;SPAN class="token punctuation"&gt;&amp;lt;&lt;/SPAN&gt;value&lt;SPAN class="token punctuation"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;ldap://your-ldap-server:389&lt;SPAN class="token tag"&gt;&lt;SPAN class="token punctuation"&gt;&amp;lt;/&lt;/SPAN&gt;value&lt;SPAN class="token punctuation"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;
&lt;SPAN class="token tag"&gt;&lt;SPAN class="token punctuation"&gt;&amp;lt;/&lt;/SPAN&gt;property&lt;SPAN class="token punctuation"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;H3&gt;&lt;FONT size="4"&gt;&lt;STRONG&gt;&lt;BR /&gt;Step 5: Check for Known Issues&lt;/STRONG&gt;&lt;/FONT&gt;&lt;/H3&gt;&lt;OL&gt;&lt;OL&gt;&lt;LI&gt;&lt;P&gt;&lt;STRONG&gt;Apache Ranger JIRA&lt;/STRONG&gt;:&lt;BR /&gt;Search for issues like&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;A href="https://issues.apache.org/jira/browse/RANGER" target="_blank" rel="noopener noreferrer"&gt;RANGER-XXXX&lt;/A&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;related to transaction management in Ranger 2.5.0.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;2. Apply Patches&lt;/STRONG&gt;:&lt;BR /&gt;If a patch exists (e.g., for missing&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;EM&gt;@Transactional&amp;nbsp;&lt;/EM&gt;annotations), apply it to the Ranger 2.5.0 codebase.&lt;/P&gt;&lt;H3&gt;&lt;STRONG&gt;&lt;FONT size="4"&gt;Step 6: Test with a New User&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/H3&gt;&lt;OL&gt;&lt;LI&gt;&lt;P&gt;Attempt to log in with a&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;STRONG&gt;different LDAP user&lt;/STRONG&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;to see if the issue is specific to&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;EM&gt;drew.nicolette&amp;nbsp;&lt;/EM&gt;or a systemic problem.&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;If the error persists for all users, focus on transaction configuration or schema issues.&lt;/P&gt;&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;If only&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;EM&gt;drew.nicolette&amp;nbsp;&lt;/EM&gt;fails, check for conflicts in the&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;EM&gt;x_portal_user&lt;/EM&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;table (e.g., duplicate entries).&lt;BR /&gt;&lt;BR /&gt;&lt;FONT size="4"&gt;&lt;STRONG&gt;Final Checks&lt;/STRONG&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;&lt;P&gt;&lt;STRONG&gt;Logs&lt;/STRONG&gt;: Monitor&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;EM&gt;ranger-admin.log&lt;/EM&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;and&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;EM&gt;catalina.out&lt;/EM&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;for transaction-related errors after applying fixes.&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;&lt;STRONG&gt;Permissions&lt;/STRONG&gt;: Ensure the database user has write access to the&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;EM&gt;x_portal_user&lt;/EM&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;table.&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;&lt;STRONG&gt;Dependencies&lt;/STRONG&gt;: Confirm that Spring and JPA library versions match Ranger 2.5.0 requirements.&lt;/P&gt;&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;Happy hadooping&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;&lt;/LI&gt;&lt;/OL&gt;&lt;LI&gt;&amp;nbsp;&lt;/LI&gt;&lt;/OL&gt;</description>
      <pubDate>Sun, 02 Mar 2025 15:20:52 GMT</pubDate>
      <guid>https://community.cloudera.com/t5/Support-Questions/Apache-Ranger-Admin-UI-Login-Question/m-p/403380#M252053</guid>
      <dc:creator>Shelton</dc:creator>
      <dc:date>2025-03-02T15:20:52Z</dc:date>
    </item>
  </channel>
</rss>

