On Wed, Jun 11, 2008 at 10:24 AM, [EMAIL PROTECTED] <[EMAIL PROTECTED]> wrote:
>
> I've started to study the code and play with it, and then of course,
> other
> obligations took the priority. But I'll have more time during the
> summer.
> It seems like that the extending of the web interface would be pretty
> easy,
> but the real problem is that the current notebook infrastructure
> doesn't
> suit our needs. The first change would be to enable the possibility
> that (sage) users have their own sage_notebook directory. This is not
> a big problem, and I already made a (more or less) working code for
> that. But in order to do that I had to change the behavior of some
> core
> classes in notebook.

It would be really really good if this were something that could
be merged back into the existing notebook, so we can benefit
from each other's work longterm.

> The tricky part is security. If I understood correctly, the code from
> the
> worksheets is executed via yet another sage instance by the use of
> pseudo-terminal.

Yep.  And for a public service such as sagenb.org, that is all done
over an ssh connection to another account!

> I wasn't able to pin-point the exact spot in the code where this is
> happening. It

It happens when the interface Sage object is created in worksheet.py,
near the top of the file.   That creates a pseudotty interface to an ssh
session when you use the server_pool option to the notebook command.

> looks like this is done with the function _send() from sage class, but
> I could not
> find where is this function defined. Then there is evaluate() from
> cell.py, which is
> also a mystery for me. I think the easiest solution would be to
> decorate the function
> which executes the code from the worksheets with a function that would
> check the
> rights of the user to execute the code. The default function would do
> nothing, and if,
> for example, one wants to use sage on a server with sage users being
> the regular
> users of that server, that function would check wether the user has
> the rights to
> execute the code.
> I'm not sure what is the best way to do that. This should be done in
> such a way to be easily configurable to enable the use of sage server
> in various settings.
> Any suggestions?
>
> Ivica
>
> On 11 lip, 04:13, "William Stein" <[EMAIL PROTECTED]> wrote:
>> On Wed, May 28, 2008 at 8:25 PM, [EMAIL PROTECTED] <[EMAIL PROTECTED]> wrote:
>>
>> > OK.
>> > Source code seems reasonably readable.
>> > I'll start playing with the code, and see where I'll end up.
>>
>> Have you guys got anywhere?  As was mentioned before, starting
>> small is often a very good idea.
>>
>> William
>>
>>
>>
>>
>>
>>
>>
>> > On 29 svi, 03:10, "Timothy Clemans" <[EMAIL PROTECTED]> wrote:
>> >> Hi,
>>
>> >> Thanks for showing your interest in working on the Notebook. I'm one
>> >> of the Notebook developers.
>>
>> >> I did some work on some an administrator portal over a week ago
>> >> however I forgot about it, and it was deleted today when I was
>> >> cleaning up my home directory. I had implemented an administration
>> >> page with a frontend to banning individual users from logging in.
>>
>> >> I don't plan on writing new code until after the work I've already
>> >> done on some other Notebook stuff has been merged into Sage, 
>> >> seehttp://groups.google.com/group/sage-devel/browse_thread/thread/624262....
>> >> You could get started on Notebook development by reviewing one of
>> >> those. E-mail Michael Abshoff at [EMAIL PROTECTED] for a
>> >> TRAC account so you can add and contribute to tickets.
>>
>> >> We have a tutorial on doing general development 
>> >> athttp://sagemath.org/doc/html/prog/index.html. The Notebook source code
>> >> is in sage/server/notebook, 
>> >> seehttp://www.sagemath.org/hg/sage-main/file/6a6766d05f3b/sage/server/no....
>>
>> >> I recommend working on implementing your administration ideas as small
>> >> projects. For example the user settings page in the Notebook now was
>> >> originally just a change password page and then a more general page
>> >> was created out of it, seehttp://trac.sagemath.org/sage_trac/ticket/3213. 
>> >> Then on top of that
>> >> there is a patch up that implements better styling for that page and
>> >> also a change auto-save interval control.
>>
>> >> Timothy
>>
>> >> On Wed, May 28, 2008 at 5:22 PM, [EMAIL PROTECTED] <[EMAIL PROTECTED]> 
>> >> wrote:
>>
>> >> > Hi,
>> >> > I would like to incorporate Sage in a web-application which, among
>> >> > other things, enables remote editing and executing of programs in
>> >> > various programming languages and mathematical/engineering tools,
>> >> > written by the group of researchers from our university.
>> >> > Specifically, we would like to extend the capabilities of notebook so
>> >> > that we can add/delete users and their data programatically while the
>> >> > Sage web server is running. Perhaps it would be also interesting to
>> >> > include user management in the Setting part of the notebook web
>> >> > interface?
>> >> > I have some experience in Python, but none in Twisted framework. Could
>> >> > you give me some hints where to look in Sage source? Do you already
>> >> > have some plans in this direction?
>>
>> >> > Thanks for a great application.
>>
>> >> > Ivica Nakic
>> >> > Assistant Professor of Mathematics
>> >> > University of Zagreb
>> >> > Croatia
>>
>> --
>> William Stein
>> Associate Professor of Mathematics
>> University of Washingtonhttp://wstein.org
> >
>



-- 
William Stein
Associate Professor of Mathematics
University of Washington
http://wstein.org

--~--~---------~--~----~------------~-------~--~----~
To post to this group, send email to sage-devel@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at http://groups.google.com/group/sage-devel
URLs: http://www.sagemath.org
-~----------~----~----~----~------~----~------~--~---

Reply via email to