hi,<div>interestingly I have the same version of Simba but the connection dialog looks different - I don&#39;t have those advanced properties at all.</div><div><br></div><div>In any case I couldn&#39;t use your solution as one of my requirements is to build a standard web app deployable in an old pre-existing tomcat server.</div>

<div>So I can&#39;t have my custom Security Handlers as you are doing in Jetty.</div><div><br></div><div>The best solution for me is to have the xmla servlet look at the security information within the SOAP request itself.</div>

<div><br></div><div>thanks!</div><div>Michele<br><br><div class="gmail_quote">On 3 May 2011 21:26, Manuel Darveau <span dir="ltr">&lt;<a href="mailto:manueldarveau@gmail.com">manueldarveau@gmail.com</a>&gt;</span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">Hi Michele,<br>
<br>
Sorry for the delay. I believe that the version of simba we are using<br>
is 4.3.6.14. If you look at the screen shot, there are additional<br>
options and the username/password are transfered to the authenticator.<br>
<br>
We had to put a custom org.mortbay.jetty.security.UserRealm into a<br>
org.mortbay.jetty.security.SecurityHandler and associate it to the<br>
org.mortbay.jetty.servlet.Context.<br>
The UserRealm receives the username/password from excel in it&#39;s<br>
com.eightd.ftk.jetty.configuration.DBUserRealm.authenticate(String,<br>
Object, Request) method.<br>
<br>
Manuel<br>
<br>
On Wed, Apr 27, 2011 at 6:28 AM, Michele Rossi &lt;<a href="mailto:michele.rossi@gmail.com">michele.rossi@gmail.com</a>&gt; wrote:<br>
&gt; Hi Manuel,<br>
&gt; I have the latest (as far as I know) version of SimbaO2X, 4.3.6.14 and I<br>
&gt; don&#39;t see anything like that in Excel.<br>
&gt; I have Excel 2007 and I&#39;ve tried with both the available login dialogs - see<br>
&gt; attached screenshots.<br>
&gt; In any case a mechanism handled solely by the container wouldn&#39;t be great<br>
&gt; for me as it&#39;s very likely that the underlying servlet wouldn&#39;t have access<br>
&gt; to the security credentials.<br>
&gt; I want to use them to open an authenticated Olap Connection.<br>
&gt; thanks,<br>
&gt; Michele<br>
&gt;<br>
&gt; On 27 April 2011 04:39, Manuel Darveau &lt;<a href="mailto:manueldarveau@gmail.com">manueldarveau@gmail.com</a>&gt; wrote:<br>
&gt;&gt;<br>
&gt;&gt; Hi Michele,<br>
&gt;&gt;<br>
&gt;&gt; You might want to take a look at the latest SimbaO2X version since it<br>
&gt;&gt; does support authentication at the servlet container level. In the<br>
&gt;&gt; connection dialog, there are username password textfields and a new<br>
&gt;&gt; checkbox to support cookie and thus, keeping session information. We<br>
&gt;&gt; just implemented a custom authentication integrated with an embedded<br>
&gt;&gt; jetty. I can provide some source if you want to. The only drawback<br>
&gt;&gt; with this approach is that is the user does not check the &quot;cookie<br>
&gt;&gt; support&quot; (whatever it is actually called), the authentication will be<br>
&gt;&gt; done on every request so you should implement a cache somehow.<br>
&gt;&gt;<br>
&gt;&gt; Since we don&#39;t use security/privileges on dimensions provided by<br>
&gt;&gt; mondrian, I can&#39;t tell if the logged in user is passed to mondrian.<br>
&gt;&gt;<br>
&gt;&gt; I think it would be a good idea to put a how-to on<br>
&gt;&gt; SimbaO2X/authentication/mondrian somewhere on the wiki.<br>
&gt;&gt;<br>
&gt;&gt; Manuel<br>
&gt;&gt;<br>
&gt;&gt; On Wed, Apr 20, 2011 at 4:15 PM, Michele Rossi &lt;<a href="mailto:michele.rossi@gmail.com">michele.rossi@gmail.com</a>&gt;<br>
&gt;&gt; wrote:<br>
&gt;&gt; &gt; hi,<br>
&gt;&gt; &gt; at the moment DefaultXmlaServlet simply ignores the XMLA SOAP security<br>
&gt;&gt; &gt; information.<br>
&gt;&gt; &gt; If there was ever anything like that in the code before it&#39;s certainly<br>
&gt;&gt; &gt; been<br>
&gt;&gt; &gt; removed now.<br>
&gt;&gt; &gt; In Excel (with Simba) you can type a username and a password in the<br>
&gt;&gt; &gt; dialog<br>
&gt;&gt; &gt; used to create a connection to an xmla server.<br>
&gt;&gt; &gt; Simba puts those two strings in a SOAP &quot;Security&quot; header that looks like<br>
&gt;&gt; &gt; my<br>
&gt;&gt; &gt; example below.<br>
&gt;&gt; &gt; I already have a working &quot;mod&quot; of DefaultXmlaServlet that I have been<br>
&gt;&gt; &gt; using<br>
&gt;&gt; &gt; for a while capable of reading and using that security header.<br>
&gt;&gt; &gt; Going back to your question about containers: it&#39;s certainly possible to<br>
&gt;&gt; &gt; protect access to &quot;/xmla&quot; using a standard http authentication<br>
&gt;&gt; &gt; mechanisms<br>
&gt;&gt; &gt; but Simba doesn&#39;t support any of that.<br>
&gt;&gt; &gt; Also even if Simba supported it the container would certainly not pass<br>
&gt;&gt; &gt; the<br>
&gt;&gt; &gt; authentication information to the XMLA servlet.<br>
&gt;&gt; &gt; And the biggest deal for me is using the credentials provided in Excel<br>
&gt;&gt; &gt; to<br>
&gt;&gt; &gt; open an authenticated Olap4j connection.<br>
&gt;&gt; &gt; I will put together a prototype in the next few days, I think it will be<br>
&gt;&gt; &gt; easier to discuss this with a piece of code to look at.<br>
&gt;&gt; &gt; thanks,<br>
&gt;&gt; &gt; Michele<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; On 20 April 2011 21:19, Julian Hyde &lt;<a href="mailto:jhyde@pentaho.com">jhyde@pentaho.com</a>&gt; wrote:<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; I&#39;d rather not spend hours researching this. But authentication<br>
&gt;&gt; &gt;&gt; problems<br>
&gt;&gt; &gt;&gt; have been solved countless times before in the XMLA server code base.<br>
&gt;&gt; &gt;&gt; Including authentication from Simba O2X. Can you look over the code and<br>
&gt;&gt; &gt;&gt; the<br>
&gt;&gt; &gt;&gt; checkin history and find out how the previous solutions did it.<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; If there is someone on the developers list who has worked on these<br>
&gt;&gt; &gt;&gt; issues,<br>
&gt;&gt; &gt;&gt; please speak up now.<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; Julian<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; ________________________________<br>
&gt;&gt; &gt;&gt; From: Michele Rossi [mailto:<a href="mailto:michele.rossi@gmail.com">michele.rossi@gmail.com</a>]<br>
&gt;&gt; &gt;&gt; Sent: Wednesday, April 20, 2011 10:52 AM<br>
&gt;&gt; &gt;&gt; To: &lt;<a href="mailto:jhyde@pentaho.com">jhyde@pentaho.com</a>&gt;<br>
&gt;&gt; &gt;&gt; Cc: Mondrian developer mailinglist<br>
&gt;&gt; &gt;&gt; Subject: Re: xmla security header processing<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; hi,<br>
&gt;&gt; &gt;&gt; as far as I know Axis is not a container but a library to create SOAP<br>
&gt;&gt; &gt;&gt; web<br>
&gt;&gt; &gt;&gt; services.<br>
&gt;&gt; &gt;&gt; There is nothing a container can do with that security information as<br>
&gt;&gt; &gt;&gt; it&#39;s<br>
&gt;&gt; &gt;&gt; not transferred in a standard http way.<br>
&gt;&gt; &gt;&gt; The username and password that you type in Excel when you create a new<br>
&gt;&gt; &gt;&gt; SimbaO2x connection are sent to the server in the request header xml<br>
&gt;&gt; &gt;&gt; element<br>
&gt;&gt; &gt;&gt; that I copied below.<br>
&gt;&gt; &gt;&gt; So we either modify the xmla servlet or create an xmla callback with<br>
&gt;&gt; &gt;&gt; the<br>
&gt;&gt; &gt;&gt; same features.<br>
&gt;&gt; &gt;&gt; Do you agree on the general principle that the client (excel)<br>
&gt;&gt; &gt;&gt; credentials<br>
&gt;&gt; &gt;&gt; should be used to open the olap4j connection?<br>
&gt;&gt; &gt;&gt; And that the session id should be used to retrieve existing<br>
&gt;&gt; &gt;&gt; connections?<br>
&gt;&gt; &gt;&gt; You certainly can&#39;t delegate any of these two features to the<br>
&gt;&gt; &gt;&gt; container.<br>
&gt;&gt; &gt;&gt; thanks!<br>
&gt;&gt; &gt;&gt; Michele<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; Sent from my iPhone<br>
&gt;&gt; &gt;&gt; On 20 Apr 2011, at 18:19, &quot;Julian Hyde&quot; &lt;<a href="mailto:jhyde@pentaho.com">jhyde@pentaho.com</a>&gt; wrote:<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; I&#39;m not an expert on the HTTP/SOAP stuff. But the general goal should<br>
&gt;&gt; &gt;&gt; be<br>
&gt;&gt; &gt;&gt; to let the container (e.g. tomcat or apache axis) manage as much of<br>
&gt;&gt; &gt;&gt; this<br>
&gt;&gt; &gt;&gt; stuff as possible. Maybe you can see how people have made<br>
&gt;&gt; &gt;&gt; authentication<br>
&gt;&gt; &gt;&gt; work elsewhere in the XMLA servlet.<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; Julian<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; ________________________________<br>
&gt;&gt; &gt;&gt; From: Michele Rossi [mailto:<a href="mailto:michele.rossi@gmail.com">michele.rossi@gmail.com</a>]<br>
&gt;&gt; &gt;&gt; Sent: Wednesday, April 20, 2011 8:00 AM<br>
&gt;&gt; &gt;&gt; To: Mondrian developer mailing list<br>
&gt;&gt; &gt;&gt; Cc: <a href="mailto:jhyde@pentaho.com">jhyde@pentaho.com</a><br>
&gt;&gt; &gt;&gt; Subject: xmla security header processing<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; Hi,<br>
&gt;&gt; &gt;&gt; I am writing some code to handle the xmla security header:<br>
&gt;&gt; &gt;&gt; &lt;Header&gt;<br>
&gt;&gt; &gt;&gt;                        &lt;Security<br>
&gt;&gt; &gt;&gt; xmlns=&quot;<a href="http://schemas.xmlsoap.org/ws/2002/04/secext" target="_blank">http://schemas.xmlsoap.org/ws/2002/04/secext</a>&quot;&gt;<br>
&gt;&gt; &gt;&gt;                            &lt;UsernameToken&gt;<br>
&gt;&gt; &gt;&gt;                                &lt;Username&gt;MICHELE&lt;/Username&gt;<br>
&gt;&gt; &gt;&gt;                                &lt;Password<br>
&gt;&gt; &gt;&gt; Type=&quot;PasswordText&quot;&gt;ROSSI&lt;/Password&gt;<br>
&gt;&gt; &gt;&gt;                            &lt;/UsernameToken&gt;<br>
&gt;&gt; &gt;&gt;                        &lt;/Security&gt;<br>
&gt;&gt; &gt;&gt;                        &lt;BeginSession mustUnderstand=&quot;1&quot;<br>
&gt;&gt; &gt;&gt; xmlns=&quot;urn:schemas-microsoft-com:xml-analysis&quot; /&gt;<br>
&gt;&gt; &gt;&gt;                     &lt;/Header&gt;<br>
&gt;&gt; &gt;&gt; Such header is sent out by XMLA clients such as SimbaO2X (Excel<br>
&gt;&gt; &gt;&gt; plugin).<br>
&gt;&gt; &gt;&gt; My idea is to pass user credentials down to the connection manager and<br>
&gt;&gt; &gt;&gt; use<br>
&gt;&gt; &gt;&gt; them to create new connections.<br>
&gt;&gt; &gt;&gt; I also think that connections should be associated with sessions.<br>
&gt;&gt; &gt;&gt; I am thinking of a Map that associates session IDs with OlapConnection<br>
&gt;&gt; &gt;&gt; objects.<br>
&gt;&gt; &gt;&gt; I can put all this logic directly in DefaultXmlaServlet or (probably)<br>
&gt;&gt; &gt;&gt; in a<br>
&gt;&gt; &gt;&gt; &quot;XmlaRequestCallback&quot; class.<br>
&gt;&gt; &gt;&gt; Which option do we want to go for?<br>
&gt;&gt; &gt;&gt; I also have in mind another more specific bit of functionality: hiding<br>
&gt;&gt; &gt;&gt; username / password in the session ID returned to the xmla client.<br>
&gt;&gt; &gt;&gt; This can be useful especially in the case of a server going down and<br>
&gt;&gt; &gt;&gt; forgetting a particular session id.<br>
&gt;&gt; &gt;&gt; (Your user leaves Excel open for a couple of days and when he tries to<br>
&gt;&gt; &gt;&gt; use<br>
&gt;&gt; &gt;&gt; the Pivot again he gets an error if the server has been bounced in the<br>
&gt;&gt; &gt;&gt; meantime).<br>
&gt;&gt; &gt;&gt; The other use case could be http load balancers.<br>
&gt;&gt; &gt;&gt; As Excel does not send any cookies most load balancers would fail to<br>
&gt;&gt; &gt;&gt; apply<br>
&gt;&gt; &gt;&gt; the &quot;sticky session&quot; policy and could redirect different xmla requests<br>
&gt;&gt; &gt;&gt; to<br>
&gt;&gt; &gt;&gt; different cluster members.<br>
&gt;&gt; &gt;&gt; Only one of those members would know about the specified session ID (in<br>
&gt;&gt; &gt;&gt; other words only one of those servers would have an OlapConnection<br>
&gt;&gt; &gt;&gt; object<br>
&gt;&gt; &gt;&gt; stored under the given session id) but the others could re-obtain the<br>
&gt;&gt; &gt;&gt; credentials by de-crypting the session id.<br>
&gt;&gt; &gt;&gt; I can make the encrypted session ID very secure - even to &quot;clear text&quot;<br>
&gt;&gt; &gt;&gt; attacks.<br>
&gt;&gt; &gt;&gt; I will discuss the details only if we think it&#39;s a feature worth<br>
&gt;&gt; &gt;&gt; having.<br>
&gt;&gt; &gt;&gt; Michele<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; _______________________________________________<br>
&gt;&gt; &gt; Mondrian mailing list<br>
&gt;&gt; &gt; <a href="mailto:Mondrian@pentaho.org">Mondrian@pentaho.org</a><br>
&gt;&gt; &gt; <a href="http://lists.pentaho.org/mailman/listinfo/mondrian" target="_blank">http://lists.pentaho.org/mailman/listinfo/mondrian</a><br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt;<br>
&gt;&gt; _______________________________________________<br>
&gt;&gt; Mondrian mailing list<br>
&gt;&gt; <a href="mailto:Mondrian@pentaho.org">Mondrian@pentaho.org</a><br>
&gt;&gt; <a href="http://lists.pentaho.org/mailman/listinfo/mondrian" target="_blank">http://lists.pentaho.org/mailman/listinfo/mondrian</a><br>
&gt;<br>
&gt;<br>
&gt; _______________________________________________<br>
&gt; Mondrian mailing list<br>
&gt; <a href="mailto:Mondrian@pentaho.org">Mondrian@pentaho.org</a><br>
&gt; <a href="http://lists.pentaho.org/mailman/listinfo/mondrian" target="_blank">http://lists.pentaho.org/mailman/listinfo/mondrian</a><br>
&gt;<br>
&gt;<br>
<br>_______________________________________________<br>
Mondrian mailing list<br>
<a href="mailto:Mondrian@pentaho.org">Mondrian@pentaho.org</a><br>
<a href="http://lists.pentaho.org/mailman/listinfo/mondrian" target="_blank">http://lists.pentaho.org/mailman/listinfo/mondrian</a><br>
<br></blockquote></div><br><br clear="all"><br>-- <br><span style="font-family:arial, sans-serif;font-size:13px;border-collapse:collapse"><p style="margin-top:0px;margin-right:0px;margin-bottom:12pt;margin-left:0px"><b><span style="font-size:8pt;color:navy"><br>

</span></b></p><p style="margin-top:0px;margin-right:0px;margin-bottom:12pt;margin-left:0px"><b><span style="font-size:8pt;color:navy">Michele Rossi</span></b><span style="font-size:8pt;color:rgb(31, 73, 125)"><br><br></span><span style="font-size:8pt;color:rgb(31, 73, 125)"><img src="cid:image001.jpg@01CB8D7B.B6E536C0"></span><span style="font-size:8pt;color:rgb(31, 73, 125)"></span></p>

<p style="margin-top:0px;margin-right:0px;margin-bottom:12pt;margin-left:0px"><span style="font-size:8pt;color:rgb(31, 73, 125)">Via San Martino, 52, 56125 Pisa, ITALY<br>T: +39 050 220 3894<br><a href="mailto:m.rossi@iontrading.com" style="color:rgb(42, 93, 176)" target="_blank"><span style="color:blue">m.rossi@iontrading.com</span></a><br>

<a href="http://www.iontrading.com/" style="color:rgb(42, 93, 176)" target="_blank"><span style="color:blue">http://www.iontrading.com</span></a></span></p></span><br>
</div>