The main problem with this is security. What if some miscreant sends "rm -rf *" to the server? How can a compromise be reached without resorting to massive regular expression checking? I milled over this for a while. Today, I had an idea.
Why not use some sort of ssh style authentication built directly into our server? Basically, only authorized programmers would be given a key, and only the proper key would allow you to connect to the server.
You could even have different levels of access based on your key. Level 1 - you can call predefined methods (if any) built into the server; Level 2 - you can use modules installed on the remote machine to create objects and/or call functions; Level 3 - you can send your own frozen objects, or code refs, to the remote server to be executed.
This would require a bit more administration, as someone would have to deal out the keys as appropriate, but I think it could work.
Then again, maybe this has already been done in XML land. I don't know. If it hasn't - ugh. That's a lot of work. Maybe I should ask for a grant from the Perl Foundation. If not, I think it would take a joint effort from a few people. Maybe a sourceforge project.
Anyone interested? Offhand, I'd say Ben Trott would be a good source for the authentication part, Matt Sergeant for the RPC portion and Paul Seamons for the generic server portion.
5 minutes later...
Am I just re-inventing Apache/mod_perl?
SSh transport (Score:1)
It worked. I didn't really handle authorization, though--it was just standard SSH authentication. You could hack in authorization on top of the SSH iden
Re:SSh transport (Score:1)
Yes, a couple of others have mentioned Penguin as well and I've taken a look. I tried contacting the author, but haven't heard back. I didn't really expect anything - looks like it's been five years since it was last touched.
I was actually looking at your Crypt::OpenPGP module the other day as a possible solution. I know nothing about PGP, so I was thinking of buying the ORA book on it just for that!
Securing the transport layer wasn't somethi
Re:SSh transport (Score:1)
I tried contacting him about Penguin over five years ago, and never heard back. :-)
Re:SSh transport (Score:1)
I'll send you the code when I get access to it again, in a couple of days (at SXSW right now