From: Nathan Rixham on
Daniel Brown wrote:
> On Mon, Sep 13, 2010 at 19:47, Micky Hulse <mickyhulse.lists(a)gmail.com> wrote:
>> Motion sensing camera connected to a mechanical pointer stick aimed to
>> trigger the server power button.
>>
>> On his way out of the office:
>>
>> Clap on/clap off Clapper connected to computer power cable.
>
> It would be cheaper to employ the same method used on some
> lawnmowers and required on Jet Skis and Skidoos: a cable with a clip
> worn by the rider. The rider falls off, the cable releases from the
> vehicle, disengaging the throttle and cutting the engine. The boss
> stands up, his entire infrastructure collapses, everyone's connections
> are closed, and all PCs subsequently catch fire.

I fear this is the implementation needed to make "boss" see sense, however..

> Realistically, a simple desktop-based application running in the
> system tray (presuming Windows) would send a kill signal to a
> predefined script to issue safe closing routines to the database
> first, then any other systems he wants to close out. It could even
> have simple options to poll if there's a screensaver activated, which
> would initiate the process automatically, should he choose to be
> extremely paranoid. The same could be automated to work in reverse,
> to automatically bring the systems up, when the local desktop session
> becomes active (from hibernation, logoff, or screensaver), or even
> with an override ("Pause Sessions") by right-clicking the systray
> icon.

The main problem here is in using a stateless protocol (HTTP) in a
stateful manner (with sessions), it makes this, technically, impossible.
That said, you could do this in a stateless manner quite easily by
giving the boss full control of granting and denying access, that way he
is always accountable (with his described nature, it might be good for
the buck to stop with him, rather than your code). I'd suggest having a
simple boolean flag, usersCanAccess and giving him a button to toggle
the flags state from true to false. Real life implementation could be an
empty file which is `touch`ed and `unlink`ed, php implementation being
an if(file_exists('boss_man_say_okay') ){ // let monkeys work } type
solution.

Best,

Nathan
From: Marc Guay on
> if(file_exists('boss_man_say_okay') ){ // let monkeys work }

Is there an acronym for the sound of sad, knowing laughter?
From: Yousif Masoud on
On 12/09/10 17:32, tedd wrote:
> Hi gang:
>
> I have a client who wants his employees' access to their online
> business database restricted to only times when he is logged on.
> (Don't ask why)
>
> In other words, when the boss is not logged on, then his employees
> cannot access the business database in any fashion whatsoever
> including checking to see if the boss is logged on, or not. No access
> whatsoever!
>
> Normally, I would just set up a field in the database and have that
> set to "yes" or "no" as to if the employees could access the database,
> or not. But in this case, the boss does not want even that type of
> access to the database permitted. Repeat -- No access whatsoever!
>
> I was thinking of the boss' script writing to a file that accomplished
> the "yes" or "no" thing, but if the boss did not log off properly then
> the file would remain in the "yes" state allowing employees undesired
> access. That would not be acceptable.
>
> So, what methods would you suggest?
>
> Cheers,
>
> tedd
>
Hi Tedd,
One aspect of software design to keep in mind is change. Today the
customer wants everyone to have access when they are logged in. They
may want that rule relaxed a little. Perhaps, employees can login when
members of a certain group are logged in.

I recommend using some form of external device that instructs the system
to enable/disable access to the database. Depending on the sensitivity
of the data, the solution can utilize a card reader (once the boss takes
the card out of the reader, database access is terminated for the
company) and either a fingerprint or retinal scanner [for extra
security]. If it is really sensitive data, then a retinal scanner and
some form of code generator that generates one-time eight digit (at
least) code to enable access to the database. The algorithm that
generates the codes would be a deeply guarded secret (that would mostly
be their problem -- you will need to ensure that once you sign off the
project, there is no way it can be retrieved from you).

No need to shut down the database server, just instruct the firewall to
block the MySQL port and/or Web server port. Might be a good idea to
choose a different port than 3306 for MySQL.

What would happen if, for some reason the "boss" couldn't make it in or
is on Holiday?

Good luck,
Yousif

PS. It might be a good idea to introduce them to the concept of RBAC and
see what they think.


From: Matty Sarro on
Ooooh, how about a pressure sensor on his seat??? Like the ones they have in
cars to make that little airbag light illuminate.

if buttDetected{
allowAccess();
}

On Wed, Sep 15, 2010 at 7:00 PM, Yousif Masoud <yousif.masoud(a)gmail.com>wrote:

> On 12/09/10 17:32, tedd wrote:
>
>> Hi gang:
>>
>> I have a client who wants his employees' access to their online business
>> database restricted to only times when he is logged on. (Don't ask why)
>>
>> In other words, when the boss is not logged on, then his employees cannot
>> access the business database in any fashion whatsoever including checking to
>> see if the boss is logged on, or not. No access whatsoever!
>>
>> Normally, I would just set up a field in the database and have that set to
>> "yes" or "no" as to if the employees could access the database, or not. But
>> in this case, the boss does not want even that type of access to the
>> database permitted. Repeat -- No access whatsoever!
>>
>> I was thinking of the boss' script writing to a file that accomplished the
>> "yes" or "no" thing, but if the boss did not log off properly then the file
>> would remain in the "yes" state allowing employees undesired access. That
>> would not be acceptable.
>>
>> So, what methods would you suggest?
>>
>> Cheers,
>>
>> tedd
>>
>> Hi Tedd,
> One aspect of software design to keep in mind is change. Today the
> customer wants everyone to have access when they are logged in. They may
> want that rule relaxed a little. Perhaps, employees can login when members
> of a certain group are logged in.
>
> I recommend using some form of external device that instructs the system to
> enable/disable access to the database. Depending on the sensitivity of the
> data, the solution can utilize a card reader (once the boss takes the card
> out of the reader, database access is terminated for the company) and either
> a fingerprint or retinal scanner [for extra security]. If it is really
> sensitive data, then a retinal scanner and some form of code generator that
> generates one-time eight digit (at least) code to enable access to the
> database. The algorithm that generates the codes would be a deeply guarded
> secret (that would mostly be their problem -- you will need to ensure that
> once you sign off the project, there is no way it can be retrieved from
> you).
>
> No need to shut down the database server, just instruct the firewall to
> block the MySQL port and/or Web server port. Might be a good idea to choose
> a different port than 3306 for MySQL.
>
> What would happen if, for some reason the "boss" couldn't make it in or is
> on Holiday?
>
> Good luck,
> Yousif
>
> PS. It might be a good idea to introduce them to the concept of RBAC and
> see what they think.
>
>
>
> --
> PHP General Mailing List (http://www.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php
>
>
From: Phpster on
Next we'll be suggesting sharks with frikking laser attached to their heads to guard the door!

Bastien

Sent from my iPod

On Sep 15, 2010, at 19:53, Matty Sarro <msarro(a)gmail.com> wrote:

> Ooooh, how about a pressure sensor on his seat??? Like the ones they have in
> cars to make that little airbag light illuminate.
>
> if buttDetected{
> allowAccess();
> }
>
> On Wed, Sep 15, 2010 at 7:00 PM, Yousif Masoud <yousif.masoud(a)gmail.com>wrote:
>
>> On 12/09/10 17:32, tedd wrote:
>>
>>> Hi gang:
>>>
>>> I have a client who wants his employees' access to their online business
>>> database restricted to only times when he is logged on. (Don't ask why)
>>>
>>> In other words, when the boss is not logged on, then his employees cannot
>>> access the business database in any fashion whatsoever including checking to
>>> see if the boss is logged on, or not. No access whatsoever!
>>>
>>> Normally, I would just set up a field in the database and have that set to
>>> "yes" or "no" as to if the employees could access the database, or not. But
>>> in this case, the boss does not want even that type of access to the
>>> database permitted. Repeat -- No access whatsoever!
>>>
>>> I was thinking of the boss' script writing to a file that accomplished the
>>> "yes" or "no" thing, but if the boss did not log off properly then the file
>>> would remain in the "yes" state allowing employees undesired access. That
>>> would not be acceptable.
>>>
>>> So, what methods would you suggest?
>>>
>>> Cheers,
>>>
>>> tedd
>>>
>>> Hi Tedd,
>> One aspect of software design to keep in mind is change. Today the
>> customer wants everyone to have access when they are logged in. They may
>> want that rule relaxed a little. Perhaps, employees can login when members
>> of a certain group are logged in.
>>
>> I recommend using some form of external device that instructs the system to
>> enable/disable access to the database. Depending on the sensitivity of the
>> data, the solution can utilize a card reader (once the boss takes the card
>> out of the reader, database access is terminated for the company) and either
>> a fingerprint or retinal scanner [for extra security]. If it is really
>> sensitive data, then a retinal scanner and some form of code generator that
>> generates one-time eight digit (at least) code to enable access to the
>> database. The algorithm that generates the codes would be a deeply guarded
>> secret (that would mostly be their problem -- you will need to ensure that
>> once you sign off the project, there is no way it can be retrieved from
>> you).
>>
>> No need to shut down the database server, just instruct the firewall to
>> block the MySQL port and/or Web server port. Might be a good idea to choose
>> a different port than 3306 for MySQL.
>>
>> What would happen if, for some reason the "boss" couldn't make it in or is
>> on Holiday?
>>
>> Good luck,
>> Yousif
>>
>> PS. It might be a good idea to introduce them to the concept of RBAC and
>> see what they think.
>>
>>
>>
>> --
>> PHP General Mailing List (http://www.php.net/)
>> To unsubscribe, visit: http://www.php.net/unsub.php
>>
>>