Re: Running Python scripts under a different user

2006-05-31 Thread Mikael Olofsson
Laszlo Nagy wrote:
> For Windows, you can use the 'runas.exe' program. But it requires a 
> password too.

Or you can get a copy of the shareware program RunAsProfessional, which 
I use for my kids stupid games that necessarily has to be run by an 
admin. The price I paid was 10 Euro, which I still think was money well 
spent. IIRC you get a 30 days trial version for free.

http://freedownloads.rbytes.net/cat/desktop/other3/runas-professional/

It does the same thing as RunAs, but you do not need to type the 
password every time you run your program. Instead the password is stored 
encrypted in the file you launch. I do not know what encryption is used, 
or how safe the encryption is. My needs are simply to make sure that my 
kids do not destroy anything by mistake. Sure, the stupid game may be 
designed to destroy, but that's another issue.

/MiO
-- 
http://mail.python.org/mailman/listinfo/python-list


Re: Running Python scripts under a different user

2006-05-29 Thread Laurent Pointal
Bernard Lebel a écrit :
> On 5/26/06, Laszlo Nagy <[EMAIL PROTECTED]> wrote:
>> For Windows, you can use the 'runas.exe' program. But it requires a
>> password too.
>>
>>  From what you wrote, I think that you need to change architecture. You
>> should write your own service rather than write tricky programs. This
>> way you can develop your own security system, and restrict access to
>> specific files/programs. You can write tools that can connect to your
>> service. The service program can be ran on the background, with
>> sufficient privileges. How does it sound?
> 
> [Bermard] Any ressource you could point me to as to write services?
> I'm totally unexperienced with that.

As you run under Unix, you may be interrested into the daemon.py script.

See Unix Daemon in page http://homepage.hispeed.ch/py430/python/index.html

And too: http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/278731


See also google links for python + daemon

A+

Laurent.
-- 
http://mail.python.org/mailman/listinfo/python-list


Re: Running Python scripts under a different user

2006-05-29 Thread Bernard Lebel
Thanks Laszlo, I'll check it out.

Bernard




On 5/29/06, Laszlo Nagy <[EMAIL PROTECTED]> wrote:
>
> >>
> >>  From what you wrote, I think that you need to change architecture. You
> >> should write your own service rather than write tricky programs. This
> >> way you can develop your own security system, and restrict access to
> >> specific files/programs. You can write tools that can connect to your
> >> service. The service program can be ran on the background, with
> >> sufficient privileges. How does it sound?
> >
> > [Bermard] Any ressource you could point me to as to write services?
> > I'm totally unexperienced with that.
> I'm sorry, I was out of town in the weekend. You can try to write a
> multi-threaded application server that provides services through TCP/IP.
> Probably, the easiest to start with an existing framework:
>
> http://twistedmatrix.com/projects/core/
> http://www.webwareforpython.org/
>
> There are many other libraries, you can look for them in the cheeseshop.
>
> http://cheeseshop.python.org/pypi
>
> You can also develop your own protocol with SocketServer or xmlrpc:
>
> http://docs.python.org/lib/module-SocketServer.html
> http://docs.python.org/lib/module-xmlrpclib.html
>
>
> Best,
>
>Laszlo
>
>
-- 
http://mail.python.org/mailman/listinfo/python-list


Re: Running Python scripts under a different user

2006-05-29 Thread Laszlo Nagy

>>
>>  From what you wrote, I think that you need to change architecture. You
>> should write your own service rather than write tricky programs. This
>> way you can develop your own security system, and restrict access to
>> specific files/programs. You can write tools that can connect to your
>> service. The service program can be ran on the background, with
>> sufficient privileges. How does it sound?
>
> [Bermard] Any ressource you could point me to as to write services?
> I'm totally unexperienced with that.
I'm sorry, I was out of town in the weekend. You can try to write a 
multi-threaded application server that provides services through TCP/IP.
Probably, the easiest to start with an existing framework:

http://twistedmatrix.com/projects/core/
http://www.webwareforpython.org/

There are many other libraries, you can look for them in the cheeseshop.

http://cheeseshop.python.org/pypi

You can also develop your own protocol with SocketServer or xmlrpc:

http://docs.python.org/lib/module-SocketServer.html
http://docs.python.org/lib/module-xmlrpclib.html


Best,

   Laszlo

-- 
http://mail.python.org/mailman/listinfo/python-list


Re: Running Python scripts under a different user

2006-05-26 Thread Bernard Lebel
On 5/26/06, Laszlo Nagy <[EMAIL PROTECTED]> wrote:
> For Windows, you can use the 'runas.exe' program. But it requires a
> password too.
>
>  From what you wrote, I think that you need to change architecture. You
> should write your own service rather than write tricky programs. This
> way you can develop your own security system, and restrict access to
> specific files/programs. You can write tools that can connect to your
> service. The service program can be ran on the background, with
> sufficient privileges. How does it sound?

[Bermard] Any ressource you could point me to as to write services?
I'm totally unexperienced with that.


Thanks a bunch.

Bernard
-- 
http://mail.python.org/mailman/listinfo/python-list


Re: Running Python scripts under a different user

2006-05-26 Thread Bernard Lebel
On 5/26/06, Diez B. Roggisch <[EMAIL PROTECTED]> wrote:
> And as you refrain form telling us which OS you are running under

[Bernard] The network file server is Red Hat Enterprise 4.
The user workstation run through MS Windows XP Pro 32bit SP2,
accessing the file server through Samba.


one
> can only be very vague on what to suggest - UNIXish OSes have for
> example the setguid-bit, sudo springs to mind and under certain desktops
> there are ways to acquire root-settings (but you need a password then I
> guess)
>
> Windows I don't know so much - but there exist the possibility to make a
> program run under a different user-account.

[Bernard] Thanks anway.

Bernard
-- 
http://mail.python.org/mailman/listinfo/python-list


Re: Running Python scripts under a different user

2006-05-26 Thread Laszlo Nagy
  Hello Diez,

Please see below.
> And as you refrain form telling us which OS you are running under one 
> can only be very vague on what to suggest - UNIXish OSes have for 
> example the setguid-bit, sudo springs to mind and under certain desktops 
> there are ways to acquire root-settings (but you need a password then I 
> guess)
>
> Windows I don't know so much - but there exist the possibility to make a 
> program run under a different user-account.
>   

For Windows, you can use the 'runas.exe' program. But it requires a 
password too.

 From what you wrote, I think that you need to change architecture. You 
should write your own service rather than write tricky programs. This 
way you can develop your own security system, and restrict access to 
specific files/programs. You can write tools that can connect to your 
service. The service program can be ran on the background, with 
sufficient privileges. How does it sound?

Best,
 
   Laszlo

-- 
http://mail.python.org/mailman/listinfo/python-list


Re: Running Python scripts under a different user

2006-05-26 Thread Diez B. Roggisch
Bernard Lebel schrieb:
> Hello,
> 
> I would like to know if there is a way to run a Python file under a
> different user account than the one logged in. Allow me to explain.
> 
> There are a bunch of people here, they are "basic user", with limited
> permissions. Basically there are locations on the network where they
> can only read and execute files, but no way to write.
> 
> Now, if these users want to write or modify files and directories,
> they would have to use my tools, which would control the permissions
> and allow the operations under parameters that I have defined.
> 
> Currently I see two ways of accomplishing this:
> 
> 1- the script changes the permissions of the locations the user is
> writing to, allowing the "basic user" to write to this location, and
> then restore the original permissions. What I don't like about this
> one, is that if the script stops, the locations may retain the writing
> permissions for the basic user.
> 
> 2- the script itself runs under a account with writing privileges (the
> power user), and network location permissions are not changed. If the
> script crashes, well, nothing to worry about as far as I can see.
> 
> 
> I could find in the Python library a way to do #1 easily (the os
> module), but failed to find anything for #2.

You didn't find anything there for a few reasons - mainly because if 
there was anything that made a program decide for itself which rights it 
wanted to run with, the whole concept of restrictive access would be 
kind of useless...


And as you refrain form telling us which OS you are running under one 
can only be very vague on what to suggest - UNIXish OSes have for 
example the setguid-bit, sudo springs to mind and under certain desktops 
there are ways to acquire root-settings (but you need a password then I 
guess)

Windows I don't know so much - but there exist the possibility to make a 
program run under a different user-account.

Diez
-- 
http://mail.python.org/mailman/listinfo/python-list


Running Python scripts under a different user

2006-05-26 Thread Bernard Lebel
Hello,

I would like to know if there is a way to run a Python file under a
different user account than the one logged in. Allow me to explain.

There are a bunch of people here, they are "basic user", with limited
permissions. Basically there are locations on the network where they
can only read and execute files, but no way to write.

Now, if these users want to write or modify files and directories,
they would have to use my tools, which would control the permissions
and allow the operations under parameters that I have defined.

Currently I see two ways of accomplishing this:

1- the script changes the permissions of the locations the user is
writing to, allowing the "basic user" to write to this location, and
then restore the original permissions. What I don't like about this
one, is that if the script stops, the locations may retain the writing
permissions for the basic user.

2- the script itself runs under a account with writing privileges (the
power user), and network location permissions are not changed. If the
script crashes, well, nothing to worry about as far as I can see.


I could find in the Python library a way to do #1 easily (the os
module), but failed to find anything for #2.



Thanks in advance
Bernard
-- 
http://mail.python.org/mailman/listinfo/python-list