"Jeff" <[EMAIL PROTECTED]> wrote on 10/12/2005 08:43:16 AM:

> Just rebuilt one of my servers and when setting up MySQL again an old
> problem I'd had and worked around came up again.
> 
> Why is it that if I grant a user@'%' permissions, that user can access
> the database from any other machine on the network, but that same user
> logon accessing the db from the local system, fails until I actually
> create another grant record for [EMAIL PROTECTED]
> 
> It's not a huge problem but I'd like to understand it better.
> 
> Thanks,
> 
> Jeff
> 

http://dev.mysql.com/doc/mysql/en/adding-users.html

The security system wisely treats local users and remote users 
differently. For a truly secure server, someone must be physically at the 
machine in order to make a localhost login attempt. This presumes that 
some level of physical security also protects that machine. If an 
administrator had only one account, it wouldn't make a difference from 
where they logged in. That would be a hole in the security plan as you now 
have exposed admin rights beyond the server's physical security perimeter.

Think about it in terms of "James Bond" or "Mission Impossible". They 
wouldn't need to break into the vault containing the database computer if 
an administrative account could do what they wanted from outside, would 
they?  With the two-tier system, an administrator could have limited 
privileges when not physically at the console and full privileges while at 
the console. 

Of course, logging in to the server through SSH, telnet, or some other 
remote terminal software defeats this kind of security check as the user 
now appears to be at the local terminal. Oh, well. It is not perfect but 
it is better than nothing at all!

Shawn Green
Database Administrator
Unimin Corporation - Spruce Pine

Reply via email to