Locking  users in UME api

Hi All,
I am trying to lock and unlock the users using UME api's.
This is the code which I had used.
               com.sap.security.api.IUser user = UMFactory.getUserFactory().getUserByLogonID("test");
               String userId = user.getUniqueName();
               IUserAccountFactory uaf = UMFactory.getUserAccountFactory();
               IUserAccount ua = uaf.getUserAccountByLogonId(userId);
               IUserAccount uma = uaf.getMutableUserAccount(ua.getUniqueID());
               IUserFactory uf = UMFactory.getUserFactory();
               uma.setLocked(true,0);
               uma.save();
               uma.commit();
               uf.invalidateCacheEntryByLogonId(userId);
When I checked the status of this user "test" in user administration, the status is shown as locked. But when i tried to login with the user "test", I could login successfully. 
Couldnt know how this happens. Any points to what is going wrong.
Thanks in advance.
Regards,
Yoga
PS: Useful answers will be rewarded.

hi,
you need to use the mutable user account.create one button and on the action of the button put the following code.
try
IWDClientUser wdUser = WDClientUser.getCurrentUser();
IUser user = wdUser.getSAPUser();
IUserAccount[] acct = user.getUserAccounts();
String userId = acct[0].getLogonUid();
IUserAccountFactory accountFactory = UMFactory.getUserAccountFactory();
IUserAccount account = accountFactory.getUserAccountByLogonId("cindranil");
IUserAccount mutableAccount = accountFactory.getMutableUserAccount(account.getUniqueID());
mutableAccount.setLocked(false,IUserAccount.LOCKED_BY_ADMIN);
        mutableAccount.save();
        mutableAccount.commit();
        catch(Exception e)
             wdComponentAPI.getMessageManager().reportSuccess("Error");
regards
Indranil
reward points if useful

Similar Messages

  • Create user via UME API/LDAP

    Hi,
    I'm trying to create a user using the UME Api
    IUserMaint umeUser = UMFactory.getUserFactory().newUser( uniqueId );
    .... set properties on umeUser...
    umeUser.commit;
    The user created ok in our ldap server (Tivoli DS) but on the root dn, i.e. ou=companyX,c=se
    Is there a way to create the user in another ldap-node, say ou=internetUsers, ou=companyX, c=se?

    Hello Mattias,
    You should set the property
    <b>ume.ldap.access.creation_path.uacc = ou=internetUsers, ou=companyX, c=se</b>
    Check this for more:
    http://help.sap.com/saphelp_nw2004s/helpdata/en/63/14f5b51a6eff429f2d8b2063400e82/content.htm
    This path is where new user accounts are created.
    This path must be relative to the path defined in
    ume.ldap.access.base_path.uacc
    If this property is not defined, user accounts are stored in the path defined in
    ume.ldap.access.base_path.uacc
    Greeting,
    Praveen Gudapati

  • EMail Notification for the Newly Created users using UME API

    Hi ,
    In my application ,the user creation is handled by custom Admin module which uses the UME APIs. Upon creating the user, we need to send a notification mail to the user's email id which he provided in the Add new user form.
    <b>Is there any direct APIs available to notify the user via email. I hope the Standard user creatin module in User Administration also uses the same UME APIs.</b>
    Please let me know the possibilities.
    Appreciate your help.
    <b><b>Sample Code:</b>
         <b>IUserFactory mUserFact = UMFactory.getUserFactory();
         IUserMaint mUserMaint = mUserMaint = mUserFact.newUser(aUser.getLogin());
         IUserAccountFactory mAccountFact =UMFactory.getUserAccountFactory();
         IUserAccount portalAccount = null;
         mUserMaint.setDisplayName(aUser.getLogin());
         mUserMaint.setXXX();
         mUserMaint.save();
         mUserMaint.commit();
         portalAccount = mAccountFact.newUserAccount(aUser.getLogin(), mUserMaint.getUniqueID());
         mAccount.setPassword("XXXXXX");
         aUser.setPassword(mPassword);
         mAccount.save();
         mAccount.commit();</b></b>
    Thanks and Regards,
    Sekar

    Hi,
    I have used the Java Mail API directly send the notification upon new user creation.
    Thanks and Regards,
    Sekar

  • User Management API for unlocking/locking users

    Hello All,
    I am trying to develop an application where in a person should input the user id and check if the user is currently locked or unlocked. And also if it is locked, he should be able to unlock it. I want to know that, is there any UME API available for fetching the lock/unlock status and modifying it? I tried using IUsermaint but it does not returns the lock status. Any input on this? or may be a code snippet?
    Thanks in advance.
    Ameya

    The setLocked() method mentioned above takes 2 parameters, a boolean and an int.
    public void setLocked(boolean lock, int reason)
    boolean parameter indicates whether to lock or unlock user. In above snippet, I have given it as false which is to unlock user. To lock the users, mention the parameter as true.
    int parameter is to specify the lock/unlock reason.
    Check javadocs for more details
    http://help.sap.com/javadocs/nw04s/current/se/com/sap/security/api/IUserAccount.html
    Regards,
    Yoga

  • "Password has expired" for user created via UME API

    Hi,
    I have written a service that processes new user accounts and uses the UME API to create them. The code works fine on my local Sneak Preview installation of EP6 SP16, allowing the created users to logon and forcing them to change their password on first login.
    When I try and run this code on EP6 SP14 it completes without generating any exceptions but when I try and login I get the message "Password has expired" and cannot login or change the users password.
    Does anyone know why?
    I have the following UME settings for both servers:
    ume.logon.security_policy.password_change_allowed = TRUE
    ume.logon.security_policy.password_change_required = TRUE
    ume.logon.security_policy.password_expire_days = 99999
    The SP14 server also uses LDAP to authenticate users primarily  and has the following setting:
    ume.persistence.data_source_configuration = dataSourceConfiguration_ads_deep_readonly_db.xml
    There are some other UME configuration differences but none that seem relevant to this problem.
    Can anyone suggest what the problem might be?
    Cheers,
    Steve Archer

    The Xp machine is fine acessing the mb
    its the macbook that is having a problem accessing the xp machine coz it says that the password has expired
    but there is no password for the user on the xp machine that i am trying to access from my mb
    so that would be:
    xp to mb = fine all working
    mb to xp = password expired even though no password required for the xp user

  • How to get Portal Login user ID and Groups using UME API in JSPDynpages

    Hi Experts,
    How can I get the portal logged user ID and bsed on that ID need to get his assigend groups.
    For this Initially I need to get the logged user ID using UME API.
    Can you drop the code to write and display using JSP Dynpages?
    Thanks
    Venkat.

    Hi,
    Try the below code
    IUserFactory userfact=UMFactory.getUserFactory();
    IUser user=userfact.getUserByUniqueName(request.getUser().getUserId());
    String usrid=user.getUniqueName();
    And also you can get the groups assigned to user by using the below code
    Iterator groups = user.getParentGroups(true);
    while (groups.hasNext()) {
         String groupstr = (String) groups.next();
         IGroup g = UMFactory.getGroupFactory().getGroup(groupstr);
         response.write("Group name "g.getUniqueName()"<br>");
    Regards
    Suresh

  • Retrieve user in webdynpro code through ume api

    Hi
    How to get the user name through code in webdynpro application.
    please tell me which UME api to use.
    Regards
    Vidyadhar

    Hi,
    Check the code below, you can retrive the user details
    ISearchResult rst = UMFactory.getUserFactory().getUniqueIDs();
                      IUserFactory usf = UMFactory.getUserFactory();
                      IUser iuser = null;
                      IUserListElement userElement = null;
                      int i = 0;
                      while (rst.hasNext()) {
                            iuser =
                                  UMFactory.getUserFactory().getUser(rst.next().toString());
                            String email = iuser.getEmail();
                            String fname = iuser.getFirstName();
                            String lname = iuser.getLastName();
    let me know if there are any issues.
    regards
    Anil

  • Ume + LDAP ADS lock users

    I'm working with EP6 SP12 with UME connected to an LDAP Microsoft ADS in read-write mode.
    I have set the attribute "ume.logon.security_policy.lock_after_invalid_attempts=5" and when a user fails to login with wrong password 5 times it's locked.
    The issue is that a user is locked both in UME and in LDAP. Is it right? If yes how can I unlock a user in UME and in LDAP too. When I unlock user from UME it works fine from UME side but it remains locked in LDAP. As result this user it's not able to login in portal.
    Thanks a lot in advance.
    Tiziano

    I came across the same issue with my setup.
    I authenticate off of database + MS ADS read only.  If a user locks them self out, we have to unlock in portal and ADS.
    There is the option in the UME for read-write to ADS for users to be able to change passwords in the portal and have it replicate out to ADS.  If you went that way I would do SSL for LDAP and opening port 626 on your firewall as well. 
    We do not have employees using our portal as their only means of getting to the network so, I do not allow them to change passwords via portal.  I am sure that it would be safe but, the though of opening up something else on the firewall scares me.

  • How to create a user in UME Database using web dynpro java custom application

    Hi,
    Can you please suggest me how to create a user in UME Database using web dynpro java custom application.
    My Requirement is user can register his/her user id in SAP Portal 7.3 UME database.
    Please suggest me.
    Thanks and Regards,
    Amit

    Hi Amit,
    Generated Documentation (Untitled)
    This is what you're looking for, there's no real cook-book -- though Amey mentioned there might be some material on SDN, perhaps some tutorials.
    You should be looking into com.sap.security.api.IUserFactory, methods newUser(String) which gives you and IUserMaint and commitUser(IUserMaint, IUserAccount) -- IUserAccount can be obtained using com.sap.security.api.IUserAccountFactory, method newUserAccount(String)
    Hope it helps,
    D.

  • Error while creating the USER in UME

    Hi Experts,
    I'm having NW 7.1 SP05 JAVA Engine and SAP MII 12.1 is running on NW.
    I'm having the Super Admin Role and trying to create the new user in UME,but I'm getting the error while doing so.
    The complete error trace is as below:
    "Error Creating the User". The complete log detail is as below: Error creating user [EXCEPTION] com.sap.security.core.wd.exception.UmeUiException: at com.sap.security.core.wd.umeuifactory.UmeUiFactoryCompInterface.handleThrowable(UmeUiFactoryCompInterface.java:3072) at com.sap.security.core.wd.umeuifactory.UmeUiFactoryCompInterface.createEntity(UmeUiFactoryCompInterface.java:349) at com.sap.security.core.wd.umeuifactory.wdp.InternalUmeUiFactoryCompInterface.wdInvokeMethod(InternalUmeUiFactoryCompInterface.java:937) at com.sap.tc.webdynpro.progmodel.generation.ExternalControllerPI$ExternalInterfaceInvocationHandler.invoke(ExternalControllerPI.java:339) at $Proxy2071.createEntity(Unknown Source) at com.sap.security.core.wd.maintainuser.MaintainUserComp.saveModifications(MaintainUserComp.java:952) at com.sap.security.core.wd.maintainuser.wdp.InternalMaintainUserComp.saveModifications(InternalMaintainUserComp.java:689) at com.sap.security.core.wd.maintainuser.ModifyUserView.onActionSave(ModifyUserView.java:569) at com.sap.security.core.wd.maintainuser.wdp.InternalModifyUserView.wdInvokeEventHandler(InternalModifyUserView.java:550) at com.sap.tc.webdynpro.progmodel.generation.DelegatingView.invokeEventHandler(DelegatingView.java:131) at com.sap.tc.webdynpro.progmodel.controller.Action.fire(Action.java:72) at com.sap.tc.webdynpro.clientserver.phases.ProcessingEventPhase.doHandleActionEvent(ProcessingEventPhase.java:156) at com.sap.tc.webdynpro.clientserver.phases.ProcessingEventPhase.execute(ProcessingEventPhase.java:91) at com.sap.tc.webdynpro.clientserver.window.WindowPhaseModel.processRequestPartly(WindowPhaseModel.java:162) at com.sap.tc.webdynpro.clientserver.window.WindowPhaseModel.doProcessRequest(WindowPhaseModel.java:110) at com.sap.tc.webdynpro.clientserver.window.WindowPhaseModel.processRequest(WindowPhaseModel.java:97) at com.sap.tc.webdynpro.clientserver.window.WebDynproWindow.processRequest(WebDynproWindow.java:514) at com.sap.tc.webdynpro.clientserver.cal.AbstractClient.executeTasks(AbstractClient.java:52) at com.sap.tc.webdynpro.clientserver.cal.ClientApplication.doExecute(ClientApplication.java:1547) at com.sap.tc.webdynpro.clientserver.cal.ClientApplication.doProcessing(ClientApplication.java:1361) at com.sap.tc.webdynpro.serverimpl.core.sessionctx.AbstractExecutionContextDispatcher.delegateToApplicationDoProcessing(AbstractExecutionContextDispatcher.java:154) at com.sap.tc.webdynpro.serverimpl.wdc.sessionctx.DispatchHandlerForAppProcessing.doService(DispatchHandlerForAppProcessing.java:35) at com.sap.tc.webdynpro.serverimpl.wdc.sessionctx.AbstractDispatchHandler.service(AbstractDispatchHandler.java:127) at com.sap.engine.services.servlets_jsp.server.deploy.impl.module.IRequestDispatcherImpl.dispatch(IRequestDispatcherImpl.java:95) at com.sap.tc.webdynpro.serverimpl.wdc.sessionctx.ExecutionContextDispatcher.dispatchToApplicationDoProcessing(ExecutionContextDispatcher.java:114) at com.sap.tc.webdynpro.serverimpl.core.sessionctx.AbstractExecutionContextDispatcher.dispatch(AbstractExecutionContextDispatcher.java:80) at com.sap.tc.webdynpro.clientserver.session.ApplicationSession.dispatch(ApplicationSession.java:571) at com.sap.tc.webdynpro.clientserver.session.ApplicationSession.dispatch(ApplicationSession.java:602) at com.sap.tc.webdynpro.clientserver.session.ApplicationSession.doApplicationProcessingStandalone(ApplicationSession.java:523) at com.sap.tc.webdynpro.clientserver.session.ApplicationSession.doProcessing(ApplicationSession.java:270) at com.sap.tc.webdynpro.clientserver.session.ClientSession.doApplicationProcessing(ClientSession.java:729) at com.sap.tc.webdynpro.clientserver.session.ClientSession.doProcessing(ClientSession.java:256) at com.sap.tc.webdynpro.clientserver.session.RequestManager.doProcessing(RequestManager.java:258) at com.sap.tc.webdynpro.serverimpl.core.sessionctx.AbstractExecutionContextDispatcher.delegateToRequestManager(AbstractExecutionContextDispatcher.java:202) at com.sap.tc.webdynpro.serverimpl.wdc.sessionctx.DispatchHandlerForRequestManager.doService(DispatchHandlerForRequestManager.java:38) at com.sap.tc.webdynpro.serverimpl.wdc.sessionctx.AbstractDispatchHandler.service(AbstractDispatchHandler.java:127) at com.sap.engine.services.servlets_jsp.server.deploy.impl.module.IRequestDispatcherImpl.dispatch(IRequestDispatcherImpl.java:95) at com.sap.tc.webdynpro.serverimpl.wdc.sessionctx.ExecutionContextDispatcher.dispatchToRequestManager(ExecutionContextDispatcher.java:140) at com.sap.tc.webdynpro.serverimpl.core.sessionctx.AbstractExecutionContextDispatcher.dispatch(AbstractExecutionContextDispatcher.java:92) at com.sap.tc.webdynpro.serverimpl.core.sessionctx.AbstractExecutionContextDispatcher.dispatch(AbstractExecutionContextDispatcher.java:104) at com.sap.tc.webdynpro.serverimpl.core.AbstractDispatcherServlet.doContent(AbstractDispatcherServlet.java:87) at com.sap.tc.webdynpro.serverimpl.core.AbstractDispatcherServlet.doPost(AbstractDispatcherServlet.java:61) at javax.servlet.http.HttpServlet.service(HttpServlet.java:727) at javax.servlet.http.HttpServlet.service(HttpServlet.java:820) at com.sap.engine.services.servlets_jsp.server.Invokable.invoke(Invokable.java:140) at com.sap.engine.services.servlets_jsp.server.Invokable.invoke(Invokable.java:37) at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:466) at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:291) at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:396) at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:385) at com.sap.engine.services.servlets_jsp.filters.DSRWebContainerFilter.process(DSRWebContainerFilter.java:48) at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78) at com.sap.engine.services.servlets_jsp.filters.ServletSelector.process(ServletSelector.java:76) at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78) at com.sap.engine.services.servlets_jsp.filters.ApplicationSelector.process(ApplicationSelector.java:240) at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78) at com.sap.engine.services.httpserver.filters.WebContainerInvoker.process(WebContainerInvoker.java:78) at com.sap.engine.services.httpserver.chain.HostFilter.process(HostFilter.java:9) at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78) at com.sap.engine.services.httpserver.filters.ResponseLogWriter.process(ResponseLogWriter.java:60) at com.sap.engine.services.httpserver.chain.HostFilter.process(HostFilter.java:9) at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78) at com.sap.engine.services.httpserver.filters.DefineHostFilter.process(DefineHostFilter.java:27) at com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12) at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78) at com.sap.engine.services.httpserver.filters.MonitoringFilter.process(MonitoringFilter.java:29) at com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12) at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78) at com.sap.engine.services.httpserver.filters.MemoryStatisticFilter.process(MemoryStatisticFilter.java:43) at com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12) at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78) at com.sap.engine.services.httpserver.filters.DSRHttpFilter.process(DSRHttpFilter.java:42) at com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12) at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78) at com.sap.engine.services.httpserver.server.Processor.chainedRequest(Processor.java:425) at com.sap.engine.services.httpserver.server.Processor$FCAProcessorThread.process(Processor.java:250) at com.sap.engine.services.httpserver.server.rcm.RequestProcessorThread.run(RequestProcessorThread.java:45) at com.sap.engine.core.thread.execution.Executable.run(Executable.java:109) at com.sap.engine.core.thread.execution.CentralExecutor$SingleThread.run(CentralExecutor.java:314) Caused by: java.lang.NoSuchMethodError: com.sap.security.api.logon.ISecurityPolicyFactory.getSecurityPolicyByUniqueName(Ljava/lang/String;)Lcom/sap/security/api/ISecurityPolicy; at com.sap.security.core.jmx.impl.JmxModificationHelper.getSecurityPolicyFromAttributes(JmxModificationHelper.java:2531) at com.sap.security.core.jmx.impl.JmxModificationHelper.createEntity(JmxModificationHelper.java:1588) at com.sap.security.core.jmx.impl.JmxServer.createEntity(JmxServer.java:226) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:585) at com.sun.jmx.mbeanserver.StandardMetaDataImpl.invoke(StandardMetaDataImpl.java:414) at javax.management.StandardMBean.invoke(StandardMBean.java:323) at com.sap.pj.jmx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:944) at com.sap.pj.jmx.server.interceptor.MBeanServerWrapperInterceptor.invoke(MBeanServerWrapperInterceptor.java:288) at com.sap.engine.services.jmx.CompletionInterceptor.invoke(CompletionInterceptor.java:400) at com.sap.pj.jmx.server.interceptor.BasicMBeanServerInterceptor.invoke(BasicMBeanServerInterceptor.java:277) at com.sap.jmx.provider.ProviderInterceptor.invoke(ProviderInterceptor.java:340) at com.sap.engine.services.jmx.RedirectInterceptor.invoke(RedirectInterceptor.java:340) at com.sap.pj.jmx.server.interceptor.MBeanServerInterceptorChain.invoke(MBeanServerInterceptorChain.java:330) at com.sap.engine.services.jmx.MBeanServerSecurityWrapper.invoke(MBeanServerSecurityWrapper.java:288) at com.sap.engine.services.jmx.ClusterInterceptor.invoke(ClusterInterceptor.java:813) at com.sap.pj.jmx.server.interceptor.MBeanServerInterceptorChain.invoke(MBeanServerInterceptorChain.java:330) at com.sap.security.core.jmx._gen.IJmxServer$Impl.createEntity(IJmxServer.java:534) at com.sap.security.core.wd.jmxmodel.JmxModelCompInterface.createEntity(JmxModelCompInterface.java:249) at com.sap.security.core.wd.jmxmodel.wdp.InternalJmxModelCompInterface.wdInvokeMethod(InternalJmxModelCompInterface.java:788) at com.sap.tc.webdynpro.progmodel.generation.ExternalControllerPI$ExternalInterfaceInvocationHandler.invoke(ExternalControllerPI.java:339) at $Proxy2070.createEntity(Unknown Source) at com.sap.security.core.wd.umeuifactory.UmeUiFactoryCompInterface.createEntity(UmeUiFactoryCompInterface.java:347) ... 77 more
    Thanks in Advance
    Suresh

    Hi Venkatrao, below is the latest trace message:
    <!LOGHEADER[START]/>
    <!HELP[Manual modification of the header may cause parsing problem!]/>
    <!LOGGINGVERSION[1.5.7.1006]/>
    <!NAME[./log/defaultTrace_00.trc]/>
    <!PATTERN[defaultTrace_00.trc]/>
    <!FORMATTER[com.sap.tc.logging.ListFormatter]/>
    <!ENCODING[UTF8]/>
    <!FILESET[5, 20, 10485760]/>
    <!PREVIOUSFILE[defaultTrace_00.4.trc]/>
    <!NEXTFILE[defaultTrace_00.6.trc]/>
    <!LOGHEADER[END]/>
    .0 #2011 12 15 12:51:43:677#+0530#Error#com.sap.security.core.wd.maintainuser.MaintainUserComp#
    #BC-JAS-SEC-UME#sap.com/tcsecumewdkit#000C29701F5F0581000000000000118C#24097150000000004#sap.com/tcsecumewdumeadmin#com.sap.security.core.wd.maintainuser.MaintainUserComp.public void saveModifications( )#Administrator#269##2E093C0026EC11E1B9BF000C29701F5F#6892527026ed11e1cd49000c29701f5f#6892527026ed11e1cd49000c29701f5f#0#Thread[HTTP Worker [@107880335],5,Dedicated_Application_Thread]#Java##
    Error creating user
    [EXCEPTION]
    #1#com.sap.security.core.wd.exception.UmeUiException:
         at com.sap.security.core.wd.umeuifactory.UmeUiFactoryCompInterface.handleThrowable(UmeUiFactoryCompInterface.java:3072)
         at com.sap.security.core.wd.umeuifactory.UmeUiFactoryCompInterface.createEntity(UmeUiFactoryCompInterface.java:349)
         at com.sap.security.core.wd.umeuifactory.wdp.InternalUmeUiFactoryCompInterface.wdInvokeMethod(InternalUmeUiFactoryCompInterface.java:937)
         at com.sap.tc.webdynpro.progmodel.generation.ExternalControllerPI$ExternalInterfaceInvocationHandler.invoke(ExternalControllerPI.java:339)
         at $Proxy2071.createEntity(Unknown Source)
         at com.sap.security.core.wd.maintainuser.MaintainUserComp.saveModifications(MaintainUserComp.java:952)
         at com.sap.security.core.wd.maintainuser.wdp.InternalMaintainUserComp.saveModifications(InternalMaintainUserComp.java:689)
         at com.sap.security.core.wd.maintainuser.ModifyUserView.onActionSave(ModifyUserView.java:569)
         at com.sap.security.core.wd.maintainuser.wdp.InternalModifyUserView.wdInvokeEventHandler(InternalModifyUserView.java:550)
         at com.sap.tc.webdynpro.progmodel.generation.DelegatingView.invokeEventHandler(DelegatingView.java:131)
         at com.sap.tc.webdynpro.progmodel.controller.Action.fire(Action.java:72)
         at com.sap.tc.webdynpro.clientserver.phases.ProcessingEventPhase.doHandleActionEvent(ProcessingEventPhase.java:156)
         at com.sap.tc.webdynpro.clientserver.phases.ProcessingEventPhase.execute(ProcessingEventPhase.java:91)
         at com.sap.tc.webdynpro.clientserver.window.WindowPhaseModel.processRequestPartly(WindowPhaseModel.java:162)
         at com.sap.tc.webdynpro.clientserver.window.WindowPhaseModel.doProcessRequest(WindowPhaseModel.java:110)
         at com.sap.tc.webdynpro.clientserver.window.WindowPhaseModel.processRequest(WindowPhaseModel.java:97)
         at com.sap.tc.webdynpro.clientserver.window.WebDynproWindow.processRequest(WebDynproWindow.java:514)
         at com.sap.tc.webdynpro.clientserver.cal.AbstractClient.executeTasks(AbstractClient.java:52)
         at com.sap.tc.webdynpro.clientserver.cal.ClientApplication.doExecute(ClientApplication.java:1547)
         at com.sap.tc.webdynpro.clientserver.cal.ClientApplication.doProcessing(ClientApplication.java:1361)
         at com.sap.tc.webdynpro.serverimpl.core.sessionctx.AbstractExecutionContextDispatcher.delegateToApplicationDoProcessing(AbstractExecutionContextDispatcher.java:154)
         at com.sap.tc.webdynpro.serverimpl.wdc.sessionctx.DispatchHandlerForAppProcessing.doService(DispatchHandlerForAppProcessing.java:35)
         at com.sap.tc.webdynpro.serverimpl.wdc.sessionctx.AbstractDispatchHandler.service(AbstractDispatchHandler.java:127)
         at com.sap.engine.services.servlets_jsp.server.deploy.impl.module.IRequestDispatcherImpl.dispatch(IRequestDispatcherImpl.java:95)
         at com.sap.tc.webdynpro.serverimpl.wdc.sessionctx.ExecutionContextDispatcher.dispatchToApplicationDoProcessing(ExecutionContextDispatcher.java:114)
         at com.sap.tc.webdynpro.serverimpl.core.sessionctx.AbstractExecutionContextDispatcher.dispatch(AbstractExecutionContextDispatcher.java:80)
         at com.sap.tc.webdynpro.clientserver.session.ApplicationSession.dispatch(ApplicationSession.java:571)
         at com.sap.tc.webdynpro.clientserver.session.ApplicationSession.dispatch(ApplicationSession.java:602)
         at com.sap.tc.webdynpro.clientserver.session.ApplicationSession.doApplicationProcessingStandalone(ApplicationSession.java:523)
         at com.sap.tc.webdynpro.clientserver.session.ApplicationSession.doProcessing(ApplicationSession.java:270)
         at com.sap.tc.webdynpro.clientserver.session.ClientSession.doApplicationProcessing(ClientSession.java:729)
         at com.sap.tc.webdynpro.clientserver.session.ClientSession.doProcessing(ClientSession.java:256)
         at com.sap.tc.webdynpro.clientserver.session.RequestManager.doProcessing(RequestManager.java:258)
         at com.sap.tc.webdynpro.serverimpl.core.sessionctx.AbstractExecutionContextDispatcher.delegateToRequestManager(AbstractExecutionContextDispatcher.java:202)
         at com.sap.tc.webdynpro.serverimpl.wdc.sessionctx.DispatchHandlerForRequestManager.doService(DispatchHandlerForRequestManager.java:38)
         at com.sap.tc.webdynpro.serverimpl.wdc.sessionctx.AbstractDispatchHandler.service(AbstractDispatchHandler.java:127)
         at com.sap.engine.services.servlets_jsp.server.deploy.impl.module.IRequestDispatcherImpl.dispatch(IRequestDispatcherImpl.java:95)
         at com.sap.tc.webdynpro.serverimpl.wdc.sessionctx.ExecutionContextDispatcher.dispatchToRequestManager(ExecutionContextDispatcher.java:140)
         at com.sap.tc.webdynpro.serverimpl.core.sessionctx.AbstractExecutionContextDispatcher.dispatch(AbstractExecutionContextDispatcher.java:92)
         at com.sap.tc.webdynpro.serverimpl.core.sessionctx.AbstractExecutionContextDispatcher.dispatch(AbstractExecutionContextDispatcher.java:104)
         at com.sap.tc.webdynpro.serverimpl.core.AbstractDispatcherServlet.doContent(AbstractDispatcherServlet.java:87)
         at com.sap.tc.webdynpro.serverimpl.core.AbstractDispatcherServlet.doPost(AbstractDispatcherServlet.java:61)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
         at com.sap.engine.services.servlets_jsp.server.Invokable.invoke(Invokable.java:140)
         at com.sap.engine.services.servlets_jsp.server.Invokable.invoke(Invokable.java:37)
         at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:466)
         at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:291)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:396)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:385)
         at com.sap.engine.services.servlets_jsp.filters.DSRWebContainerFilter.process(DSRWebContainerFilter.java:48)
         at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
         at com.sap.engine.services.servlets_jsp.filters.ServletSelector.process(ServletSelector.java:76)
         at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
         at com.sap.engine.services.servlets_jsp.filters.ApplicationSelector.process(ApplicationSelector.java:240)
         at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
         at com.sap.engine.services.httpserver.filters.WebContainerInvoker.process(WebContainerInvoker.java:78)
         at com.sap.engine.services.httpserver.chain.HostFilter.process(HostFilter.java:9)
         at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
         at com.sap.engine.services.httpserver.filters.ResponseLogWriter.process(ResponseLogWriter.java:60)
         at com.sap.engine.services.httpserver.chain.HostFilter.process(HostFilter.java:9)
         at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
         at com.sap.engine.services.httpserver.filters.DefineHostFilter.process(DefineHostFilter.java:27)
         at com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
         at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
         at com.sap.engine.services.httpserver.filters.MonitoringFilter.process(MonitoringFilter.java:29)
         at com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
         at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
         at com.sap.engine.services.httpserver.filters.MemoryStatisticFilter.process(MemoryStatisticFilter.java:43)
         at com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
         at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
         at com.sap.engine.services.httpserver.filters.DSRHttpFilter.process(DSRHttpFilter.java:42)
         at com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
         at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
         at com.sap.engine.services.httpserver.server.Processor.chainedRequest(Processor.java:425)
         at com.sap.engine.services.httpserver.server.Processor$FCAProcessorThread.process(Processor.java:250)
         at com.sap.engine.services.httpserver.server.rcm.RequestProcessorThread.run(RequestProcessorThread.java:45)
         at com.sap.engine.core.thread.execution.Executable.run(Executable.java:109)
         at com.sap.engine.core.thread.execution.CentralExecutor$SingleThread.run(CentralExecutor.java:314)
    Caused by: java.lang.NoSuchMethodError: com.sap.security.api.logon.ISecurityPolicyFactory.getSecurityPolicyByUniqueName(Ljava/lang/String;)Lcom/sap/security/api/ISecurityPolicy;
         at com.sap.security.core.jmx.impl.JmxModificationHelper.getSecurityPolicyFromAttributes(JmxModificationHelper.java:2531)
         at com.sap.security.core.jmx.impl.JmxModificationHelper.createEntity(JmxModificationHelper.java:1588)
         at com.sap.security.core.jmx.impl.JmxServer.createEntity(JmxServer.java:226)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:585)
         at com.sun.jmx.mbeanserver.StandardMetaDataImpl.invoke(StandardMetaDataImpl.java:414)
         at javax.management.StandardMBean.invoke(StandardMBean.java:323)
         at com.sap.pj.jmx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:944)
         at com.sap.pj.jmx.server.interceptor.MBeanServerWrapperInterceptor.invoke(MBeanServerWrapperInterceptor.java:288)
         at com.sap.engine.services.jmx.CompletionInterceptor.invoke(CompletionInterceptor.java:400)
         at com.sap.pj.jmx.server.interceptor.BasicMBeanServerInterceptor.invoke(BasicMBeanServerInterceptor.java:277)
         at com.sap.jmx.provider.ProviderInterceptor.invoke(ProviderInterceptor.java:340)
         at com.sap.engine.services.jmx.RedirectInterceptor.invoke(RedirectInterceptor.java:340)
         at com.sap.pj.jmx.server.interceptor.MBeanServerInterceptorChain.invoke(MBeanServerInterceptorChain.java:330)
         at com.sap.engine.services.jmx.MBeanServerSecurityWrapper.invoke(MBeanServerSecurityWrapper.java:288)
         at com.sap.engine.services.jmx.ClusterInterceptor.invoke(ClusterInterceptor.java:813)
         at com.sap.pj.jmx.server.interceptor.MBeanServerInterceptorChain.invoke(MBeanServerInterceptorChain.java:330)
         at com.sap.security.core.jmx._gen.IJmxServer$Impl.createEntity(IJmxServer.java:534)
         at com.sap.security.core.wd.jmxmodel.JmxModelCompInterface.createEntity(JmxModelCompInterface.java:249)
         at com.sap.security.core.wd.jmxmodel.wdp.InternalJmxModelCompInterface.wdInvokeMethod(InternalJmxModelCompInterface.java:788)
         at com.sap.tc.webdynpro.progmodel.generation.ExternalControllerPI$ExternalInterfaceInvocationHandler.invoke(ExternalControllerPI.java:339)
         at $Proxy2070.createEntity(Unknown Source)
         at com.sap.security.core.wd.umeuifactory.UmeUiFactoryCompInterface.createEntity(UmeUiFactoryCompInterface.java:347)
         ... 77 more

  • How to create user in UME,

    HI gurus,
    In requeriment for project, the customer request is about a aplication to create user in the UME automaticall after fill a survey with questions of security, my questions are;
    1. Exist a way for create users automatically ??, a RFC ? a Web Service ? or this step is strictly done for a human
    (UME isn´t integrated with abap data source).
    2. ¿ In KM exist a application that permit show a questionary, and questions and answers were filled from information hosted in tables z in R3 ?
    THanks in advance

    Hi Pacheco Mauricio,
    1. Exist a way for create users automatically ??, a RFC ? a Web Service ? or this step is strictly done for a human
    (UME isn´t integrated with abap data source).
             It is already answered by Erhan
    1- There isnt a standart way to create user in portal. You can code a web service to create user using portal apis
             using API's only you can create Application which help to create Users in Portal UME.      
    2. ¿ In KM exist a application that permit show a questionary, and questions and answers were filled from information hosted in tables z in R3 ?
    2- And also there isnt a standart way to create a poll using ecc tables. But there is a way to create poll in portal.
              SAP had provided a Poll Facility in Portal what Erhan suggested, but problem is you can at a time put only one question in a poll, but if you want some more functionality along with polls, you can go for Sweetlets which is third party tool.
             But if you want to develop a Survey kind of application where you want different type of questions along with different answer options than you have to build application from scratch like how we develop Custom Web Dynpro Java Applications.
    Regards,
    Tushar Shinde.

  • How to use the UME api in order to search the LDAP?

    Hello,
    I have an application which connects to the LDAP the portal is connecting to and search users according to a certain search criteria.
    Here is the relevant piece of code:
    Hashtable env = new Hashtable();
    DirContext ctx = new InitialDirContext(env);
    SearchControls controls = new SearchControls();
    String filter = "firstName=..."
    NamingEnumeration results = ctx.search("OU=OUs", filter, controls);
    I would like to do this same search using the UME API.
    Can someone please show me the equivalent code to it using the UME API?

    Hi Roy,
    you find the Configuration File you are using in your portal via System Administration -> System Configuration -> UM Configuration -> Data Sources
    or in sapume.properties where you can find
    ##xml file that configures the persistence except roles
    ume.persistence.data_source_configuration=YOUR_DATASOURCE_CONFIG_FILE.xml
    In this xml file, there is the entry
    <principal type="user">:
    <principal type="user">
         <nameSpaces>
         <nameSpace name="com.sap.security.core.usermanagement">     
    <attributes>                               
    <attribute name="firstname" populateInitially="true"/><attribute name="displayname" populateInitially="true"/>               <attribute name="lastname" populateInitially="true"/>                    <attribute name="fax"/>                         <attribute name="email"/>                    <attribute name="title"/>               <attribute name="department"/>                    <attribute name="extensionAttribute2"/>               <attribute name="mobile"/>          <attribute name="telephone"/>                    <attribute name="streetaddress"/>               <attribute name="pobox"/>                    <attribute name="location"/>               <attribute name="telephoneShort"/>               </attributes>
         </nameSpace>
         <nameSpace name="com.sap.security.core.usermanagement.relation">
         <attributes>
         <attribute name="PRINCIPAL_RELATION_PARENT_ATTRIBUTE"/>
         </attributes>
         </nameSpace>
        </nameSpaces>
    </principal>
    According to your company LDAP attributes, you will have to extend the above attributes, telephoneShort for example is an attribute within our company.
    The UME API does the rest.
    All you have to do, is request the right attribute (in my above example it was the last name).
    (Sorry for the format, but it is quite cumbersome to format it properly with the available editor   )
    Kind regards,
    Rebecca

  • How to call UME API from ABAP?

    Hello all,
    I want to call the UME API using ABAP to change portal users from backend system.
    Is this possible without JAVA development? How?
    Thanks for your help,
    Regards,
    Guido Knapp

    Hi,
    Refer this link you wil get some idea
    http://help.sap.com/saphelp_nw04/helpdata/en/e0/3820a37edeec45a91dd6e45fba15b8/frameset.htm
    Regards,
    Senthil K.

  • No Access Error with Locked User iView

    Hi
    We are running EP6SP2 Patch 35
    I’m trying to give access to the Locked User iView to a group of users (I don’t want them to have full User Management functionality)
    I’ve created a role and added Locked User iView to it.  The role has the same property values as the standard User Admin role (eg UME Action ID: UME.Manage_All = Yes), but when I try to access the Locked User iView I get:
    No Access
    You have no permission to perform this action.
    Can anybody advise what else I need to do to get this to work?
    Thanks.

    Hi Mike,
    just to make sure: did you restart the server after assigning the UME Action to the role???
    Unfortunately, this has to be done in order for your changes to take effect.
    Best regards,
    Robert

  • Locking user

    Hi,
    i need to lock users. One method is to directly access USR02, but i'm not so pleased with that.
    Looking for function modules i found BAPI_USER_LOCK. This is not sufficient, i need to set the validity date (GLTGB) in addition. BAPI_USER_CHANGE does not offer to change the validity date.
    Is there any other FM to lock the user and set the field GLTGB to a specified date?

    Hi Rainer,
    please have a look at report IAM_API_TESTFRAME.
    Inline documentation says
    *& Report serves as frame for calling the
    *& Identity & Access Management API in ABAP.
    *& For documentation purposes, but covers main functionality
    I did not use or analyze further but I think it could be helpful especially as it may maintain remote systems
    Regards,
    Clemens

Maybe you are looking for

  • Making a video playlist

    I was just wondering if anyone knew how to make a video playlist (say for like a party) in either itunes or frontrow. I've tried making one in itunes but it doesn't seem to play like a normal music playlist because it won't go to the next video. Also

  • How do you open a cs7 file in indesign cc?

    How do you open a cs7 file in indesign cc?

  • Rules - Write to File What do each Const mean?

    I have a sub routine in my rules to write to file. It contains a line that says: Const ForReading = 1, ForWriting = 2, ForAppending = 8 What do each one of these do? Write? Read? Append? I usually use append but it seemed to be placing duplicate item

  • Cannot compile servlet file

    I cannot compile Servlet files on my WinXP environment. my servlet.jar file is located at c:\tomcat\jakarta-tomcat-3.3.1\common\lib\servlet.jar what shall I do? The error messages are only for servlet portion of code?

  • T500 - error 0210 key stuck 01

    hello, i have a problem. i want to access the eeprom from my t500. you need to press the esc button several times on boot up. but when i do this i get the error 0210 key stuck 01. none of my keys are stuck they are all working. can someone help me pl