on 03-09-2012 8:33 AM
Hello,
I have the following situation, the user logs into SAP BO 4.0 Launch pad application, he needs to start our external web application and therefore we created an hyperlink. The application opens in a new tab, that's running fine. Our application uses BO SDK to provide some functionality (browse user SAP folders, reports or so), and therefore we need to log in into the current user session.
Is there any way to deliver either the serialized session or logon token to external application? Are there any internal variables to be used? Or should I use totally different approach?
There would be a workaround by delivering just the current BO user name to the external app, and than using a separate (administrators) login to fetch only the current user's data. But this I guess is not the right way to do the job.
Any help is greatly appreciated
There is no supported way to pass the session from BI Launchpad. As per your workaround, if you pass the username, you could use Trusted Authentication (look up ITrustedPrincipal in the SDK documentation) to logon to enterprise as that user.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Thank you Adam,
I have implemented a solution using ThrustedPrincipal. Using the shared secret within SDK I am able to log in as any user without problem. To resolve the current user name I'm "stealing" the launch pad cookie InfoViewPLATFORMSVC_COOKIE_USR. To force the browser to send the BO cookies to my web application, the hyperlink in Launch Pad must follow the "same domain" rules which an unfortunate restriction (my web app must be installed on same server as BO).
Is there perhaps any common way how to deliver the user name to an external web application (perhaps as a request parameter) ?
Hi Martin,
I am facing same situation than you and I also considered using the trusted authentication until I reads following statement in java docs
To enable trusted authentication on a client machine, create a text file named TrustedPrincipal.conf
on the client machine and add the following text:
SharedSecret=<secret>
where <secret> is the trusted authentication shared secret configured in BusinessObjects Enterprise.
So, if the external web app may be launched from any user this would mean having to install this file in all BI LaunchPad desktop computers. It isn´t? This does not sound very elegant. Is this what you did?
Thanks
By "Client Machine", it really means "Server that your code is running on". So, in this case it would be the machine where Tomcat and BILaunchpad are running.
Also, for BO 4.x, you no longer manually create the TrustedPrincipal.conf file. Instead, do the following:
- Log in to the CMC
- Go to Authentication>>Enterprise
- Scroll to the bottom
- Turn on Trusted Authentication.
- Click on "New Shared Secret"
- Then click on "Download Shared Secret" to get the file that you need.
In BO 3.1 and below, the shared secret was in plain text, in 4.x it is encrypted so it's safer to use.
-Dell
Hi Dell,
Thanks for your answer. Documentation was a bit confuse when using the term ¨Client Machine´. It does works now but customer (I agree with him) does not agree this approach. Any user can try to copy & paste the URL used by our custom app and to replacing its username by the one that they prefer and it will works.......
Thanks in any case,
Alfons
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
93 | |
10 | |
10 | |
9 | |
9 | |
7 | |
6 | |
5 | |
5 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.