Athar and Andre,
We have been discussing PyKata as a regular server application, not a Google App.
There are several untrusted data issues. Crunchy has dealt with them in various ways. Andre, I do not understand how server mode works. Does that address all our issues (expect taking too long in the App Engine)?
1. The Python code users run. Clearly the App Engine has tinkered to make this safe. Do we have a mechanism for a normal server? Andre, your documentation for foreign tutorials mentions something about embedded Python in pages. Could that feature be easily adapted to pyKata for the code students submit? Are you happy with both the safety and the ability to run a reasonable variety of code?
2. We want teacher/contributers to be able to upload html pages for lessons. We want to then serve them to site users. We need them to be safe. Crunchy has an elaborate safety mechanism when it retrieves a foreign page. As I remember Andre said that it took too long for the Google App constraints. On a regular server, where we control the time limits, this would not be such an issue.
Our use on the App Engine would also be different than Crunchy: since we need each page uploaded to be checked once, stored locally, and then it can be served up repeatedly easily.
If worse came to worse we could queue pages uploaded for lessons, and analyze them, possibly in discrete steps, over time, but this would be a pain.
Andy
--
Andrew N. Harrington
Director of Academic Programs
Computer Science Department
Loyola University Chicago
512B Lewis Towers (office)
Snail mail to Lewis Towers 416
820 North Michigan Avenue
Chicago, Illinois 60611
http://www.cs.luc.edu/~anh
Phone: 312-915-7982
Fax: 312-915-7998
g...@cs.luc.edu for graduate administration
u...@cs.luc.edu for undergrad administration
aha...@luc.edu as professor
Hi Andy,
I haven't thought this far ahead, but perhaps now is a good time to
start the discussion. What I was thinking, but not even written down
yet, was that we will have certain trusted authors, and only an author
can upload a page to be displayed. That should eliminate any
malicious HTML, so we only have to worry about accidents. Do we need
any other restrictions on authors?
If we need restrictions, we could just have a template that has
variables for problems to be displayed. The author just fills out a
form with the reference numbers of problems he wants displayed in an
array on the page. The size of the array, the names of the problems,
the green check marks, everything is keyed off the list of problems.
Without these restrictions, our task is actually simpler, just provide
a copy of the page template to the author, and let him do whatever he
wants - add his logo, change background colors, even start from
scratch and make a whole new page. Maybe as a matter of policy, we
should keep some standard stuff in the header and footer - navigation
links, etc., but we can decide that later.
--
You received this message because you are subscribed to the Google Groups "PyWhip" group.
To post to this group, send email to pyw...@googlegroups.com.
To unsubscribe from this group, send email to pywhip+un...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/pywhip?hl=en.
A list of trusted authors is one possibility, but we could not know a good author, or an unknown malicious author could send a bunch of good stuff first before zinging us. Crunchy has the code for this. In the short run we can stick with trusted authors, but in a while we should look at what Andre has done. His security info page in impressive, showing the amount of thought his crew has put into this! Andre has reminded us for some time that we have an issue here.
We want generalized lesson content to be allowed, so I do not see a template.