User switch scenario involving BSP application

Hi
   I am new to BSP application design. We have requirement from a BSP  application wherein different sales force personnel need to see different segments of same data on the BSP application - owing to security requirements. We are thinking of using a default user and then user switch to specific  SAP reference user ( based on maybe their windows logon credentials within the BSP application - each reference will have a security that has authorization to see a particular segment of data for a group of sales force people.
Is this approach ok ( of switching user from default to specific reference user and having a reference user as the representative user for each sales force group ) ?  Any thoughts/suggestions on experiences that can be shared here to architect this scenario would be highly appreciated.

Hi,
you can do this. Therefore you have to setup an use the nodes via sicf. User switch involves also
a new registration with authorization. You can lok at bsp application SYSTEM for that.
On the otherhand: build role via Profile generator: TXN PFCG and do authorization checks as you do
it in SAPGui Dynpro Programmining. Why not. We have build big applications with many user roles
using this approach.
The first ones makes only sense, when you have a public area using a public user. Therefore you enter the public account in thze right sicf nodes.
Best regards,
Stefan

Similar Messages

  • User validation for the BSP application

    I wanted a user to access the bsp application.
    I already have the user names maintained in the database who will be using the application.
    i am using the application class for my application.
    where should i do the user validation and how.
    i know tst if i would had used the model class then i can do it in the request method of the model class.
    but where to do it when using the application class.
    Thanks

    Hi Din,
    I assume that the usernames that are present in your Database also exists in the WAS Server.
    i.e. The database has a part of users that are present in the WAS Server.
    Your need is to allow only those users in the database to access your bsp application and not others correct!
    If your first BSP Page is a ...
    <b>View</b>
    1.In the DO_INIT method of the Corresponding Controller Class populate the internal table that is present in the Application Class with the usernames that are present in the database.
    2. In the DO_REQUEST method of the Corresponding Controller Class check for the username who runs your BSP Application is present in the Database.
    You can get the username who run the bsp application using the system field...
    data: username type string.
    username = sy-uname.
    So if the <i>username</i> is in the database show your bsp page else show an error page.
    <b>You can directly check for the sy-uname is present in the database.</b>
    <b>Page with Flow Logic</b>
    It is same as MVC only thing is that method name changes...
    Place the code in the DO_INIT of MVC in onCreate of Page with Flow logic.(Populate the internal table of the application class with the usernames from the database)
    Place the code in the DO_REQUEST of MVC in onRequest of Page with Flow logic.(Check whether the sy-uname is present in the itab or directly in the database).
    Hope it solves your problem
    Regards,
    Maheswaran.B

  • Restricting Concurrent users on a particular BSP Application

    We are having an appraisals link in the PM section of the portal which runs the HAP_DOCUMENT BSP application. We have to restrict the number of concurrent users accesing this application at the same time to about 600 so that the server will not crash...Is there a way by which i can find out the no of users accesing a partcular BSP application concurrently??

    Appearently my interpretation of how Logon Groups work don't match up to their actual sophistication. 
    They use this number of users only as a gage to load balance between mutliple app servers.  It never uses this amount as a limiting factor.
    Sorry if I led you down an incorrect path.  It seemed promissing.  However you could at least use this approach to limit the load to a single app server.  You could then configure the maximum number of concurrent connections in the ICM on this app server.  However this probably only works if you are willing to dedicate a single app server to this single application.

  • How user will execute the BSP application I created...

    Hi,
    I have created a BSP application which has various pages with flow logic.
    Now to execute it I use execute icon and then I get moved to web browser.
    The application is working cool.
    But what I am wondering is user is not going to go to code and use excute button to execute the code.
    So how can he do the execution of page ?

    You have lots of options (and no generally users don't go to SE80 and launch your application from there).
    1.  Give out the URL to your application. Users can launch the application directly from the URL in the browser. The URL could be stored in the Browser Favorites or as a desktop icon.
    2.  If you use the Netweaver Portal - create a BSP iView for the application and attach it to the users' role.
    3.  A BSP URL can be added as a link in the SAP Easy Access Menu.  Under favorites, just choose Insert Other Object
    4.  You can create an ABAP Transaction code. In the program under this transaction code, you could host the BSP application in an HTML Control or open it externally in a browser via CL_GUI_FRONTEND_SERVICES=>EXECUTE.  It is fairly easy to create a generic ABAP program to launch BSP application and receive the application name via a Transaction Code Parameter. You can build a specfic URL to a BSP application in code using CL_BSP_RUNTIME=>CONSTRUCT_BSP_URL.

  • Capture all the Users who viewed the BSP Applications ???

    Hello All,
           I need to create a BSP Application which shows all the Users, who have executed different BSP Applications and the Number of Times each user has executed these BSP's.
    Is this Possible ?
    If yes, can anyone tell me how to go forward  ????
    Regards,
    Deepu.K
    Message was edited by:
            deepu k

    Hello Eddy,
          I have gone thru ur Blog.
    But in this I guess I need from this part -->
    C. Generating Own Stats in BSP
    C.1. Logging It
    If all of the aforementioned tools don’t cover what you’re looking for, or there are technical/other reasons not
    to choose them, then there is only one thing left to do. Write your own stuff. It really isn’t that difficult to do
    and, if you are confident enough, you can make something that suits your needs 100%. Or as a host in a
    Flemish regional TV DIY show always says: “What you do yourself is usually done better.” Let us see what
    you need to do in order to achieve this.
    First of all you need data on the browser. This can be done via JavaScript and the navigator object:
    appCodeName
    The code name of browser (i.e.: Mozilla)
    appName
    The name of the browser (i.e.: Microsoft Internet Explorer)
    appVersion
    Version information of the browser (ie: 4.75 [en] (Win98; U)
    userAgent
    String passed by browser as user-agent header. (ie: Mozilla/4.0
    (compatible; MSIE 5.5; Windows 98; Hotbar 3.0))
    Platform
    The platform of the client's computer. JavaScript 1.2 property. (ie:
    Win32)
    You probably need some extra information like IP number. This can be done via the
    request->get_header_field method.
    As such you don’t need to retrieve this info every time if you have a single entry point like a login page. Just
    put it in a server side cookie. Each new page will read this cookie and save this info together with the page
    name, user id, eventual parameters, etc. into the log. Now I talked earlier about the visitor concept. This is
    also an ideal place to implement this. If you are only interested in returning visitors with a full day time interval,
    you can for example determine whether that user has already used that application. If so, you just increment a
    counter. If not, you have to create a new line. This method will also reduce the size of your table.
    C.2 Showing It
    The only thing you need to do is to analyze and visualize stuff. The analyzing stuff is completely up to you.
    The following screen shot is an example where the total number of visitors within a given time frame is shown.
    It also shows the number of unique visitors in that same time frame compared to the potential number of
    visitors. You might find this of interest if you want to know how many (internal) users actually use your intranet
    application. You can couple the user info to the department info and then you can figure out whether
    department X or Y is actually using the application.
    But I didnot get the actual idea of implementing this in my BSP.
    Can you give an explanation for the above ?
    Regards,
    Deepu.K

  • User NOT able to login again to BSP application after logging off

    Hi Experts,
    What the user is doing?
    Step 1: User logged into BSP Application. Result: Successful login
    Step 2: User logged off from BSP Application. Result: Successful log off
    Step 3. User again tries to log into BSP Application with correct login credentials. Result : LOGIN FAILURE
    What is being displayed onto the screen after step 3?
    1. Login screen does not changes.
    2. It does not show any error/warning messages.
    3. Next screen, after login screen is NOT being displayed.
    What the user does next?
    User is deleting all the cookies & cache, and again trying to log into BSP application. Result : Successful login
    Question:
    Everytime, the user logs off from the BSP application, and again tries to login, he/she is NOT able to login without clearing the cookies and cache.
    First, the user has to clear cookies and cache, then ONLY he/she is able login.
    Can you please advice on this?
    Response will be highly appreciated.
    Regards,
    Mandar

    Hi,
    Refer http://help.sap.com/saphelp_nw04/helpdata/en/6b/9d91d062cc52419f23926ff1bf2ad3/content.htm
    BSP Application Login/Logoff and http://wiki.sdn.sap.com/wiki/display/BSP/Logon
    This may be helpful for your issue.
    Thanks,
    Chandra

  • Javascript error calling a bi 7.0 webapplication from a bsp application

    Hi everyone,
    This is the scenario we're facing a javascript error :
    Enterprise Portal is calling a custom bsp application ( via an iview in the enterprise portal ) in the bi system with a parameter "template_id" and a value, which is the technical name of a bi web application.
    The bsp application is evaluating the parameter by some custom code and creating a html page with a redirect or a maintenance message to the bi web application passed with the parameter "template_id".
    The html link to the bi web application is created according to this documentation :
    http://help.sap.com/saphelp_nw70ehp1/helpdata/en/46/03d4ac801467e6e10000000a1553f6/content.htm
    Purpose of the bsp application :
    in the bi system there is a database table to maintain a flag for each webtemplate and infocube, which should not be called via the enterprise portal for a certain time ( some kind of maintenance switch ). The bsp application then decides to show a maintenance page for the called webtemplate or to send the redirect page to the client.
    The process described above is :
    working with the bi 7.01 sp7 in the bi ( enterprise portal sp22 ) in the productive system.
    working in the Q&A system bi 7.01 sp8 with bi 3.5 web applications.
    not working in the Q&A system bi 7.01 sp8 with bi 7.0 web applications.
    The javascript error calling bi 7.0 web applications is :
    Webpage error details
    User Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Win64; x64; Trident/4.0; .NET CLR 2.0.50727; SLCC2; .NET4.0C; .NET4.0E)
    Timestamp: Mon, 6 Jun 2011 09:11:04 UTC
    Message: Object doesn't support this property or method
    Line: 96
    Char: 11
    Code: 0
    URI: https://mlptb1.mlp-ag.com:58001/irj/servlet/prt/portal/prtroot/pcd!3aportal_content!2fcom.sap.pct!2fplatform_add_ons!2fcom.sap.ip.bi!2fiViews!2fcom.sap.ip.bi.bex?TEMPLATE=B_221_002_KUNDEN_POSTEN_AD
    We've opened a message. Support center is saying that this method isn't supported by sap. We should ommit the bsp application and the used functionality.
    Is there any way to find out, what is causing this object is missing ?
    Is there another way than a bsp application to use this custom maintenance function in the described system setup ?
    system components :
    production system
    SAP NetWeaver 7.0 Portal SP22
    SAP BI 7.01 SP 7
    q&a system
    SAP NetWeaver 7.0 Portal SP22
    SAP BI 7.01 SP 8
    Kind regards.
    Dirk

    Hello everyone,
    we did some further analysis on this problem und we think we found the problem.
    The error occurs while trying to execute the standard url for web templates inside a Enterprise Portal Frame, for example
    https://XXX:XXX/irj/servlet/prt/portal/prtroot/pcd!3aportal_content!2fcom.sap.pct!2fplatform_add_ons!2fcom.sap.ip.bi!2fiViews!2fcom.sap.ip.bi.bex?TEMPLATE=XXX
    While executing the URL a HTML-Page with some embeded Javascript-code is sent back to the browser.
    In this Javascrip-Code, the method-call "dsmObj.registerAll" leads to a script error in Internet Explorer.
    dsmObj.registerAll("pcd:portal_content/com.sap.pct/platform_add_ons/com.sap.ip.bi/iViews/com.sap.ip.bi.bex", "GUSID:6FC9SuhGDPIMMLwOdeHEIg--_7WQud13yeLJDz2kYoQFSg--", "1307605928212");
    In SP7, the method "dsmObj.registerFullKey" is called instead of "dsmObj.registerAll". This has changed in SP8.
    dsmObj.registerFullKey("GUSID:iBPvyska9*xE_JBalkQG2g--YyKv2C3NToP0I79Mw7EO8w--", "1307606479963");
    The object "dsmObj" seems to reference the parent frame of the Enterprise Portal.
    Has anyone seen this before? Any ideas how we can fix this?
    Kind regards,
    Matthias
    Edited by: Matthias Keller on Jun 9, 2011 2:07 PM

  • Session Management in BSP applications

    Hello,
    I habe been developing the following application to send E-Mails from Outlook to SAP WEB AS Abap Stack:
    - I have created a COM-Addin in MS Outlook
    - When the user clicks on a button, that I have created, the currently marked E-Mail-Message is read
    - The E-Mail-Information is analysed
    - MS Internet Explorer is dynamically opened by my Outlook application
    - A html form is dynamically created
    - html form is posted dynamically to a BSP-application
    -> Basically what I have is a HTML form, that is posted to a BSP application
    I am facing the problem that Web AS is mixing up different sessions:
    - I have no user specified for my BSP application, that means whenever a client visits my page a login popup should appear
    - I have defined the first page of my web application as stateless
    So what I expected was, that whenever my html form is posted to the Web AS, I get a logon popup, and everytime my web page is called a new session is started
    Actually MS Internet Explorer and my BSP Web Application are acting differently:
    When I post the html form for the first time, the logon popup appears and everything works fine
    When I post the html form for the second time WITHOUT CLOSING THE FORMER INTERNET EXPLORER INSTANCE, the LOGON POPUP DOES NOT APPEAR, and the BSP application is using old, wrong data from the former html form
    When I CLOSE ALL INTERNET EXPLORER INSTANCES, THE LOGON POPUP APPEARS, and I get the correct information for my BSP application
    ->
    Whenever I have already sent a html form to the application and do not close all internet explorer instances, my BSP application mixes up old data
    Whenever I have already sent a html form to the application and CLOSE all internet explorer instances, my BSP application is working fine.
    I have the following settings for my BSP application in transaction SICF:
    - Logon Procedure: Stanadard
    - Anonymous Logon Data:
         Client: 301
         User: [blank]
         Password: [blank]
    Does anybody have an idea how to get my application to work correctly?
    - I cannot change internet explorer settings as I have many clients and no authorization for that
    - I can change (maybe meta data?) the html form
    - Are there any settings of the BSP application that I can change, so that my application works fine
    Thanks for your help in advance!
    Andreas

    Hello Sebastian,
    Thanks for your answer!!!
    Unfortunately I cannot close the brower window via javascript, as my BSP application is not simply one page reveiving the form and sending one response page, but the BSP application consists of more pages (providing search functionalities,...).
    I have tried the following:
    - I have opened a new Internet Explorer application "IE-application1"
    - I have started my MS Outlook application which (dynamically) opened a new Internet Explorer "window2".
    - The Mail was saved to SAP
    - I closed the "window2"
    - I sent another mail to SAP via "window3"
    -> SAP was still remembering the session of "window2" and mixed up the session (session info obviously was hold in "IE-application1")
    I did not fully understand your answer refering to BSP Application "system" and its page "session_single_frame.htm" together with the source code of "session_single_frame.htm".
    What I need is, to tell my startpage "index.htm" the following: Forget every cookie and session and whatever else you have had until now, take the input values of the html form and process them. Is this possible with "session_single_frame.htm"?
    Andreas

  • Download internal table from BSP application to C:\ drive of the user

    Hi,
    How do we download a internal table data from a BSP application to the C:\ drive of the user. Have tried GUI Download, but it doesn't work. Also don't want a pop up to appear while this is happening. The code has to there in 'OnInputProcessing' event.
    Regards,
    Jaison

    Hi Raja,
    I went through few of the blogs and wrote the below code for downloading data. My requirement is that in the InputProcessing event i need to write a subset of data to the users C:\ drive. But even after doing the below change i'm unable to get the requirement done. Can you please tell me as to what i'm missing. I'm new to BSP development and help would be highly appreciated.
    if not it_messages1[] is initial.
      clear wa_messages1.
      loop at it_messages1 into wa_messages1.
       clear temp_string.
       concatenate wa_messages1-PROJECT wa_messages1-FILENAME.......
       into temp_string separated by CL_ABAP_CHAR_UTILITIES=>HORIZONTAL_TAB.
       concatenate main_string temp_string into main_string separated by
       CL_ABAP_CHAR_UTILITIES=>CR_LF.
      endloop.
    CALL FUNCTION 'SCMS_STRING_TO_XSTRING'
      EXPORTING
        TEXT                 = main_string
        MIMETYPE        = 'APPLICATION/MSEXCEL;charset=utf-16le'
      ENCODING       =
    IMPORTING
       BUFFER         =  xmain_string.
    EXCEPTIONS
      FAILED         = 1
      OTHERS         = 2
    CALL METHOD cl_bsp_utility=>download
    EXPORTING
        object_s = xmain_string
        content_type = 'APPLICATION/MSEXCEL;charset=utf-16le'
        content_disposition = 'attachment;filename=test.xls'
        response = mresponse
        navigation = navigation.
    Edited by: Jaison Yohannan on Jun 3, 2009 2:16 PM

  • How to secure BSP applications for external users on the internet?

    I posted this question under Enterprise Portal forum but got no response. I am hoping some of you experts in this area can help.
    We have developed BSP applications and set them up as iViews in Enterprise Portal 6. Our portal implementation will be used by external users.
    We have security concerns that the access to the BSPs  allows external users direct access to the R/3 system. We were told that we should use ITS application instead of BSP application for external users.
    Do any of you have any insight into how we could work around the security problem with BSP applications, or BSP applications in EP6? Your help will be greatly appreciated.

    In sense they are correct as to whether it is more secure or not would have to be a call by people who are more of an expert than myself.
    But I can see there point the BSP runs directly on the system and uses the system security where as the ITS is basically just an RFC call. However for us we use a 620 server with BSP's and make RFC calls to our R/3 systems thus keeping people of the R/3 directly - however we are not opened to the Internet.
    If your message is answered please remember to mark it solved so others searching in the future can find the solved ones quicker - just click on the yellow star.

  • BSP Application Login : User Authentication

    Hi All,
    We have a particular BSP application which we want to open up to the world without any authorization checks/password entries etc. Anybody who knows the URL should be able to access the link without any restrictions. But when I try to access the link it pops me up a logon pad. I am sure this is not from my BSP code. What are the steps I need to take to make sure users dont have to go through without needing to log in?
    Any pointers will be greatly appreciated.
    Regards,
    Karthik

    Hello Karthik Boyapalli ,
                                       You can achieve this functionality by giving the logon information in the BSP service directly in Trabnsaction SICF and then navigating to the path sap->bc->bsp-><bspname>. If this is the case then all the users who access this BSP will be logged in with user that is mentioned on that BSP service.
    Hope this helps.
    Thanks,
    Greetson

  • BSP Application: Entering User Credentials again

    Hi all,
    We are having a BSP application in our Portal and all the related settings of the UserMapping and System creation have been done properly.
    Even after performing the UserMapping, when we run that BSP iview , it prompts a dialog box to enter the UserId and Password ( of R/3) .
    Why is it not taking the same UserId/psswd assigned in UserMapping ? 
    How can I stop this Prompt Window .. where I enter the user(r/3) details again .. ?
    awaiting for your valuable inputs..
    Thnx,
    NR

    After UserMapping you can add the user name & pwd to BSP URl as below:
    http://<host_name>:port/sap/bc/bsp/your_bsp_application_url.htm<b>?sap-user=<sap log on id>&sap-password=<passwrod>&</b>sap-client=<client no>
    This will avoid the logon pop-up.But here pwd can been seen by others.
    <i>* Reward each useful answer</i>
    Raja T
    Message was edited by:
            Raja Thangamani

  • How to add a BSP application to user role

    What is the procedure to add a custom 'Zbsp' BSP application to the user role in PFCG Transaction code ?
    When we add a transaction or report. it is working fine.
    Please Suggest to add BSP application  by defining required parameters

    Hi Raja,
    The  BSP application which i have created used to access a custom based abap program by means of  Ztransaction or Z internet service.
    In SRM, I want to assign this BSP application page which has link to the abap program to SUS suppliers portal page . i.e add to the particular user role.
    When i try to add this application to the user role in PFCG , it asks for the parameters action-id menu no and controller name.
    These are all used in the standard BSP appliaction say SRMSUS  bsp application..
    Suggest what values should i give it to access this BSP application to the particular user role..
    If you have questions in my requirement, do ask me.
    Thanks in advance

  • Loggin intp BSP applications using SAP Dialog user

    Hi,
    I used SAP - service type user to log into my BSP applications in the following way:
    ========================================
    data: usr type bapialias,
    pwd type bapipwd.
    data: return type table of bapiret2,
    wa_return type bapiret2,
    bname type USUSERNAME.
    usr = request->get_form_field( 'username' ).
    pwd = request->get_form_field( 'password' ).
    CALL FUNCTION 'SUSR_INTERNET_USERSWITCH'
    EXPORTING
    ALIAS = usr
    PASSWORD = pwd
    IMPORTING
    BNAME_AFTER_SWITCH = bname
    TABLES
    RETURN = return.
    loop at return into wa_return.
    err_msg = wa_return-message.
    endloop.
    if bname is not initial.
    navigation->goto_page( 'main.htm' ).
    endif.
    ===========================================
    From the above, i am able to log in successfully. INow i need to log in as SAP Dialog user. Is there any way where i can log into BSP where the sap users are dialog types..
    Thx,
    Rajesh

    Hey Raja,
    Thanks for ur timely suggestions.
    Now its working fine.
    I am closing this issue.

  • A BSP application involving multiple table

    Hi.. I am in learning process of BSP .
    I have a requirement as below . I am getting confused as to which part of coding I write in layout and in even handler.
    Each time the loop runs I need to get the corresponding itab-feild records which are there in  *itab_final * 
    This is the sample code in abap editor.
    Loop at itab .
    Loop at  itab1.
             Read itab2 with key feild1 = itab1-field1.
                If sy-ubrc <> 0.
           move  table1-field1 to itab_final.
           append itab_final.
                endif.
    Endloop.
    Write : Records for tab1-fld.
             Loop at itab_final.
                  write : / itab_final-field1.
             Endloop.
    Endloop.
    Can plz some one suggest me how do i go about this requirement to implement in a BSP application.

    Hi Sravan,
    Till now I worked on small BSP application where in there is a single select query using which all record go in to a single internal table(which is genrally  written in event handler)  which can be displayed writing code in layout tab.
    Now my requirement is that I have a internal table itab  and for every single record of itab I have few records which are appended to itab2. I need to display  the records in itab2 for each loop pass of itab.

Maybe you are looking for