<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: RPC and Authentication</title>
	<atom:link href="http://www.davidfischer.name/2009/09/rpc-and-authentication/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.davidfischer.name/2009/09/rpc-and-authentication/</link>
	<description>Some Things to Some People</description>
	<lastBuildDate>Thu, 02 Sep 2010 05:29:07 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
	<item>
		<title>By: David</title>
		<link>http://www.davidfischer.name/2009/09/rpc-and-authentication/comment-page-1/#comment-51</link>
		<dc:creator>David</dc:creator>
		<pubDate>Fri, 02 Oct 2009 05:58:21 +0000</pubDate>
		<guid isPermaLink="false">http://www.davidfischer.name/?p=239#comment-51</guid>
		<description>I&#039;m leaning toward using the &lt;a href=&quot;http://docs.djangoproject.com/en/1.1/howto/auth-remote-user/&quot; rel=&quot;nofollow&quot;&gt;RemoteUserMiddleware&lt;/a&gt;, but that means making the authentication only compatible with Django 1.1+. However, this makes a lot of sense given that I&#039;m using a server based authentication system. If in the future, I decide to support a session based authentication system, hopefully I can use a different middleware for that.</description>
		<content:encoded><![CDATA[<p>I&#8217;m leaning toward using the <a href="http://docs.djangoproject.com/en/1.1/howto/auth-remote-user/" rel="nofollow">RemoteUserMiddleware</a>, but that means making the authentication only compatible with Django 1.1+. However, this makes a lot of sense given that I&#8217;m using a server based authentication system. If in the future, I decide to support a session based authentication system, hopefully I can use a different middleware for that.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: David</title>
		<link>http://www.davidfischer.name/2009/09/rpc-and-authentication/comment-page-1/#comment-46</link>
		<dc:creator>David</dc:creator>
		<pubDate>Mon, 21 Sep 2009 16:08:09 +0000</pubDate>
		<guid isPermaLink="false">http://www.davidfischer.name/?p=239#comment-46</guid>
		<description>&lt;a href=&quot;#comment-45&quot; rel=&quot;nofollow&quot;&gt;@aaloy &lt;/a&gt; 
This same type of authentication is supported by XMLRPC clients in at least &lt;a href=&quot;http://ws.apache.org/xmlrpc/client.html&quot; rel=&quot;nofollow&quot;&gt;Java&lt;/a&gt; and &lt;a href=&quot;http://phpxmlrpc.sourceforge.net/doc-2/ch07s03.html&quot; rel=&quot;nofollow&quot;&gt;PHP&lt;/a&gt; and you are using it in Javascript. In addition, if the RPC client is on the same port, domain and protocol as the rest of your website, then once a user is authenticated in a browser session, all future requests for that session will contain the authentication information. This is why the simple Javascript JSONRPC client on the demo site&#039;s method summary page still works. This is nice because you don&#039;t even have to use a fancy Javascript library like qooxdoo. Just &lt;a href=&quot;http://docs.djangoproject.com/en/dev/howto/apache-auth/&quot; rel=&quot;nofollow&quot;&gt;tie your Apache authentication to your Django user database&lt;/a&gt; and you&#039;re done!

There really isn&#039;t a whole lot of work to be done to add this authentication so I think I can handle it. However, I am always willing to accept a patch if you contribute something.</description>
		<content:encoded><![CDATA[<p><a href="#comment-45" rel="nofollow">@aaloy </a><br />
This same type of authentication is supported by XMLRPC clients in at least <a href="http://ws.apache.org/xmlrpc/client.html" rel="nofollow">Java</a> and <a href="http://phpxmlrpc.sourceforge.net/doc-2/ch07s03.html" rel="nofollow">PHP</a> and you are using it in Javascript. In addition, if the RPC client is on the same port, domain and protocol as the rest of your website, then once a user is authenticated in a browser session, all future requests for that session will contain the authentication information. This is why the simple Javascript JSONRPC client on the demo site&#8217;s method summary page still works. This is nice because you don&#8217;t even have to use a fancy Javascript library like qooxdoo. Just <a href="http://docs.djangoproject.com/en/dev/howto/apache-auth/" rel="nofollow">tie your Apache authentication to your Django user database</a> and you&#8217;re done!</p>
<p>There really isn&#8217;t a whole lot of work to be done to add this authentication so I think I can handle it. However, I am always willing to accept a patch if you contribute something.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: aaloy</title>
		<link>http://www.davidfischer.name/2009/09/rpc-and-authentication/comment-page-1/#comment-45</link>
		<dc:creator>aaloy</dc:creator>
		<pubDate>Mon, 21 Sep 2009 10:33:37 +0000</pubDate>
		<guid isPermaLink="false">http://www.davidfischer.name/?p=239#comment-45</guid>
		<description>I like this approach, in fact Qooxdoo people in their API also suposes this kind of authentication, see: http://demo.qooxdoo.org/current/apiviewer/#qx.io.remote.Rpc

To be consistent with Django I agree with you that user authentication should come in the HTTP header. The only risk I see in this is to be able to comunicate with non Python clients (Qooxdoo for me) and not make it just Python based.

Please let me know if I can help in any way.</description>
		<content:encoded><![CDATA[<p>I like this approach, in fact Qooxdoo people in their API also suposes this kind of authentication, see: <a href="http://demo.qooxdoo.org/current/apiviewer/#qx.io.remote.Rpc" rel="nofollow">http://demo.qooxdoo.org/current/apiviewer/#qx.io.remote.Rpc</a></p>
<p>To be consistent with Django I agree with you that user authentication should come in the HTTP header. The only risk I see in this is to be able to comunicate with non Python clients (Qooxdoo for me) and not make it just Python based.</p>
<p>Please let me know if I can help in any way.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
