From: Todd O. <to...@da...> - 2001-04-23 04:47:19
|
From the posts this week, it seems that I may be the only one on board for the multiple sites in one database concept, so I'll table that discussion a little while. Anyway, even with my concept, there are still occassions where you will want two organizations to interchange data, whether or not they're in the same database or even the same server; this is where XML-RPC comes into play. http://www.xml-rpc.org Let's suppose I have (4) 25,000 member organizations (state universities without central control). Furthermore, two universities have separate LDAP authentication and the other two use a database (one MySQL and one Postgres). The physics professors from all four universities meet at a conference and decide that they will try to produce Cold Fusion again (the nuclear kind). Since Appalacian State's physics department is the most prominant, they will "host" this _collaboration_. How will UC-Berkley, Georgia Tech and MIT professors be able to login and post on App State's Cold Fusion site? Enter XML-RPC. Jeremy will create an associate member account (or whatever we decide to call it) for Dr. John Smith at MIT on App State's site (let's assume App State uses a MySQL member database). Wait, there are already two Dr. John Smiths at AppState already with usernames john_smith and john_smith2. Dr. Smith at MIT uses john_smith as his login. This special "associate" account will have username john_smith_mit, BUT MIT's Dr. Smith won't have to know that because he'll log in as john_smith from mit.edu. App State's phpWS will send a XML-RPC request to MIT asking for Dr. Smith's md5 password hash (this is for security purposes). This will only Authenticate Dr. Smith, assuming his password matches and his account is not disabled at MIT. Upon authentication, App State's permissions apply exclusive of any permissions he had at MIT. This separates the Authentication and Permission phases for MIT's Dr. Smith. By creating modules (which I like much better than plug-ins BTW) that support XML-RPC, separate phpWebSite installations can share and transfer data like the example I gave above. If Dr. Smith's password changes at MIT, then it's effectively changed at App State. Inter-university calendars could be done this way too. Similar systems exist to request the latest headlines form Slashdot and Freshmeat. Take a look at this XML syndication example if your browser can handle it. http://www.bsdtoday.com/backend/bt.rdf --Todd |