If SQL 2005 or above you should look at using EXECUTE AS. You can create a stored proc that can create logins as needed as if a sysadmin was doing the work where the caller will not need elevated permissions.
There are no special teachers of virtue, because virtue is taught by the whole community.
--Plato