WebGUI: How to get the users IP-address

Hello.
I have to develop a simple web-application, that will enable users to reset their forgotten passwords or to unlock themselves, if they are locked because of too many failed login-attempts.
As you can imagine, this application must not require a login. For security reasons any action has to be logged.
The username can not be used for logging-purposes, as the application is executed using a default-user defined in transaction SICF. That's why the IP-address of the user's pc has to be written into the log-table.
My problem is, that i do not know how to get it. I have read many articles on help.sap.com, searched in the sap notes, used Google and tried to find usefull functions in our SAP-system, but after two days it still does not work and i do'nt know, what else to try.
At the moment i am able to read the name of the client-pc with my test-coding.
  DATA:    lv_webgui TYPE xfeld.
  STATICS: lv_computer_name TYPE string,
           lv_username TYPE string.
  CLASS: cl_gui_frontend_services DEFINITION LOAD.
  lv_webgui = cl_gui_frontend_services=>www_active.
  IF lv_webgui EQ gc_true.
    " Begin of experimental coding #1
    CALL METHOD cl_gui_frontend_services=>get_computer_name
      CHANGING
        computer_name = lv_computer_name.
    " End of experimental coding #1
    " Begin of experimental coding #2
    CALL FUNCTION 'ITS_ENV_GET_VARIABLE'
      EXPORTING
        variable = 'COMPUTERNAME'
      CHANGING
        value = lv_computer_name.
    " End of experimental coding #2
    MESSAGE s000(38) WITH lv_computer_name.
  ENDIF.
The problem is, that the Internet Explorer 7 (version: 7.0.5730.13CO) shows a warning before the scripts, generated by the ITS, are executed on the client. If the user clicks "abort", the scripts are not executed and the name of the client-pc will not be returned to the server (experimental coding #1 returns the value 'localhost', experimental coding #2 returns an empty string).
That's why the experimental coding is quite useless, because the user is able to avoid it's execution.
In theory i could use experimental coding #2 and stop the execution of the program if an empty string is returned but some users in our company have administrator-privileges and so they can change environment-variables at will. So i am afraid, that this procedure is not an option.
I am quite sure, that there must be a way to read the IP-address directly from the ITS without using the functions in my experimental coding, but i have no clue how this could be done.
Any suggestions would be highly appreciated.
As i do'nt know how to determine the version of our ITS, i have to leave this information out for the moment. If anyone needs this information it would be very kind, if he or she could tell me how to get the required information.
EDIT: As we are using SAP ECC 6.0 and Services are maintained via transaction SICF, it should be ITS 6.40.
Regards
Jörg Neumann
Edited by: Jörg Neumann on Oct 16, 2009 1:27 PM

Hello Wolfgang.
Thanks for your reply.
I can imagine, that the application as described above seems to be very insecure, but the description is not complete - i left some parts out, as they were not relevant for my problem.
1.) The application can only be reached from our intranet.
2.) Unlocking / Resetting password can be done three times per day, which limits the number of attemps for cracking a password to a total of 20 per day.
3.) The owner of the account will receive an email if the acount was changed by the application. So if somebody tries to crack the password, the owner of the account will get a total
20 3 mails per day - which should make him/her at least a litte suspicious. 
I know, that the logged data is quite worthless, as computername and username are read using clientside-scripting and there could be a proxy between the client and the server, but this is exaclty, what i have to develop.
I will keep the logging-problem in mind and talk about it in the next meeting, though i am quite sure, that it wo'nt change anything.
Regards Jörg Neumann
Edited by: Jörg Neumann on Oct 19, 2009 4:57 PM

Similar Messages

  • How to get the user piveliges in Solaris

    Dear All,
    In solaris how to get the user priveliges,
    Example:lsuser -f "user name"
    In AIX the above command will show the user priveliges,that user having su access or not like that,I want to know in Solaris,i gone through "ppriv" it not giving the valid information.
    Kindly tell me how to get the user priveliges.
    Regrads,
    Venkatachalam.M

    -K- (!),
    I followed your suggestions and it works well now. Do you know why I prefer to see the UI in english ? Because the help and everything else (documentation) is in english making very difficult to find in the french UI what is referred to in the english on-line help.
    Merci de votre aide !
    Christian

  • How to get the User ID's details in SRM Workflow EBP system

    Hi Team
    How to get the User ID's details in SRM Workflow EBP system. Example like i have User ID "BTEMPEST" but i want his full name . so please suggst me how to get the full name of user id where it is maintained.
    Thanks.
    Puneet.

    Thank you very much muthu.
    For your information FM "RSPLPPM_GET_USERDETAILS" is working fine.
    Thanks for quick response.
    Thanks
    Puneet.

  • How to get the user entered data?

    Hi all,
    I have created an HTMLB DynPage component.
    In That i have created my input screen with textboxes using response.write method.
    i have added one onConfirm event on which the data whould validate.
    so onConfirm method im trying to get the data with request.getParameter method which returns null...
    how to do...how to get the user entered data to do my validations...can anyone plz advice.
    Thanks,
    Viswes

    Hi
    inputfield or textbox component entered directly using response.write(...) are not htmlb , but html.
    to create portal input field (ie HTMLB), you should do something like
    this in the doProcessBeforeOutput member function
    InputField field1 = new InputField("Id1");
    field1.setSize(8); // 8 characters
    this.getForm().addComponent(field1);
    and in doProcessAfterInput member function
    InputField field1 =
    (InputField) this.getComponentByName("Id1");
    you can then manipulate the content of the field.
    Hope this help,
    Guillaume

  • How to get the user view

    Hi,
    Can anyone say how to get the user view of a user logged in through admin interface.
    I have tried to get the roles of logged in user as below:
    <ref>waveset.roles</ref>
    it did not work..
    Please suggest

    who said you cant create view for logged in user, try the following machi
    <Action id='0' name='User View' application='com.waveset.session.WorkflowServices'>
    <Argument name='op' value='getView'/>
    <Argument name='authorized' value='true'/>
    <Argument name='type' value='User'/>
    <Argument name='id' value='$(WF_CASE_OWNER)'/>
    <Return from='view' to='userview/>
    </Action>
    Rgds,
    Purush

  • How to get the user active stauts in jspdynpro

    How to get the user active status in jspdynpro.
    I want check weather a user is active or not (Collaboration Launch Pad functionality)
    in jspdynpage.
    Thank's in advance,
    Mr.Chowdary

    Hi Eddy,
    Here the scenario is to get the data of a field from the user defined table to pass the extracted values as a input to the XL reporter, which will be selected while generating the report.
    It would be great if you provide any solution for this problem.
    Thanks.

  • How to get the users list that can Add/Remove or modify Vendors in Oracle?

    How to get the users list that can Add/Remove or modify Vendors in Oracle?
    I need to generate a report like name and responsibility. Thanks

    That query gives the Supplier information.
    But what i would be needing is to find out the USERS in oracle who can Add/Modify or Remove Vendors.
    I assume it should be based on the Responsibility.

  • How to get the User Details inoformation in portal?

    I had defined the user informations in "Portal User Details". But i don't know how to get it and what the user table is?
    for example: How to get the email address of user i have defined in portals?
    Tank you very much!
    Ghia Liu
    Genesyslogic.com.tw

    You would use the portal API's for this, there is one named wwsec_api.person_info that returns a record with the specified user's information, such as first name, lsat name, email, telephone, etc - a pretty long list. With release 2 of portal the data is no longer stored in the wwsec_person$ table as it was in release 1 so use the API (which actually is how I would normally do it in release 1 as well).
    To get more documentation on portal API's go to: http://portalstudio.oracle.com/pls/ops/docs/FOLDER/COMMUNITY/PDK/plsql/doc/astart.htm
    Hope that this helps you - enjoy the day!
    Art

  • How to get the user created at and modified at properties for a site collection using powershell

    Hi guys, I Know how to get the list of users of a site collection by Get-SPUser cmdlet but hte problem is that this cmdlet doesnt give me the user Created at and modifed at properties 
    can any one tell me how to get these values via powershell???? 
    ps: ignore the 2013 screenshot.. i just want a way to get those values .. if you provide me solution in either 2010 or 2013 , i will crack the other..
    plz guys help me ...

    Get the User Information list and then get the user from that list
    $web = Get-SPWeb "siteUrl"
    $userInfoList = $web.SiteUserInfoList
    $userItem = $userInfoList.Items[0]; #0 here is just for demonstration. You take the user you want here or loop through all users.
    $created = $userItem["Created"]
    $modified = $userItem["Modified"]

  • How to get the local IP address?

    Hi,
    I try to obtain the users local IP address similar to:
    InetAddress localHost= InetAddress.getLocalHost();
    String localIP = localHost.getHostAddress();
    InetAddress[] inetAddress = InetAddress.getAllByName(localHost.getHostName());
    for (int k = 0; k < inetAddress.length; k++)
       if(!inetAddress [k].getHostAddress().equals(localIP))
          return inetAddress [k].getHostAddress();
    }This code works fine in a stand alone application. When I try to use it in conjunction with Web Start it only returns 127.0.0.1.
    I think there's no Service from Web Start that gives me the users IP address. Or am I wrong?
    Does anyone know a solution for this?
    Thanks in advance!

    Hello,
    I use java.net.InetAddress.getLocalHost().getHostName();
    in my javaws and I get the real hostname.
    Probably your DNS is not correct,
    or other possible problem: sign your jars, so you get full access to the System resources.
    regards.

  • How to get the User input of Dynamic Action confirmation message ?

    Hi Guys,
    I'm using apex 4.1,
    I have added a confirmation message box as page Dynamic Action. How can i get the user input of that confirmation pop up ?
    Thanks

    Hi,
    you don't directly get the user input. But you should still be able to get what you want. Let's assume you have a dynamic action which fires for a "Change" (or any other) event and which has two or more actions
    1) Confirm
    2) Execute PL/SQL Code
    If the user clicks Cancel/No in the confirm dialog, APEX will stop the execution of this dynamic action and not run "Execute PL/SQL Code".
    Hope that helps
    Patrick
    My Blog: http://www.inside-oracle-apex.com
    APEX Plug-Ins: http://apex.oracle.com/plugins
    Twitter: http://www.twitter.com/patrickwolf

  • How to get the user name from Single Sign On Process?

    Post Author: sasikumar
    CA Forum: Authentication
    I am loging in Single Sign On Page. Then it goes to one JSP which lists out some links including InfoView link. While clicking InfoView link, I need to pass user name with the url for authentication. How and where can I get the user name?

    Care to be more specific what you mean with single sign-on? There are numerous ways this can be done.
    Just how you get the authenticated o/s user from within an Oracle session, depends on just how the actual authentication to Oracle was done in order to create that Oracle session.
    E.g. dealing in Oracle with a LDAP server is very different than dealing with a NT Primary/Secondary Domain Controller using o/s authentication, than dealing with a Java-based application server that does it own thing, etc.

  • How to get the User Id from the user interactive task?

    If I need to get the user id or whoever process the user interactive task and save this information to the database, how can I get the user identity who process the interactive task? I tried the owner, creator on the execdata, but it doesn't work.
    Thank you

    try using
    Participant.id or Participant.name
    in the interactivity and update this value in the database.
    HTH
    Narasimha
    Edited by: Narasimha on Mar 6, 2011 9:42 PM

  • How to get the user password?

    I want to get the user password.
    How to do ?
    Thank you.

    Hi Zhang,
    You cannot see the password of an Authenticated User. You can retrieve the Password of the User in encrypted from using JNDI - by connecting to the OID & getting it. You can even change the password of the user with the necessary permissions - but, you cannot get the unencrpted password.
    Regards,
    Sandeep

  • How to get the user exits Enhancement no.

    Hi All,
    How to get the following userexit  Enhancement no in SMOD transaction code.
    User Exit: J_1i7_userexit_exinv_addl_data
    Please help.

    Hi,
    These are the user exits not for the code implemention . These are called by the values given in the configuration. so u don't see any enhancement number for them .
    For more details refer this doc by clicking on find and give ur exit name.
    [Reference|http://allsapsdonline.blogspot.com/2008_10_01_archive.html]
    Rhea.

Maybe you are looking for