A domain server comprising: a processor; a local area network connection to a plurality of client devices; a wide area network connection to a cloud authentication mechanism; a local database comprising user identification and passwords; a domain authentication mechanism configured to perform a method comprising: receiving a first authentication request from a first client device, said authentication request comprising a first user identification and a first password; looking up said first user identification and said first password in said database; if said first user identification and said first password are not present in said database, transmitting said first user identification and said first password to said cloud authentication mechanism; receiving a first acceptance token from said cloud authentication mechanism; based on said first acceptance token, storing said first user identification and said first password in said database; transmitting a second acceptance token to said first client device; receiving a second authentication request from a second client device, said second authentication request comprising said first user identification and said first password; looking up said first user identification and said first password received in said second authentication request in said database and determining that said first user identification and said first password are found in said database; and transmitting a third acceptance token to said second client device without performing a cloud authentication. a processor; a local area network connection to a plurality of client devices; a wide area network connection to a cloud authentication mechanism; a local database comprising user identification and passwords; a domain authentication mechanism configured to perform a method comprising: receiving a first authentication request from a first client device, said authentication request comprising a first user identification and a first password; looking up said first user identification and said first password in said database; if said first user identification and said first password are not present in said database, transmitting said first user identification and said first password to said cloud authentication mechanism; receiving a first acceptance token from said cloud authentication mechanism; based on said first acceptance token, storing said first user identification and said first password in said database; transmitting a second acceptance token to said first client device; receiving a second authentication request from a second client device, said second authentication request comprising said first user identification and said first password; looking up said first user identification and said first password received in said second authentication request in said database and determining that said first user identification and said first password are found in said database; and transmitting a third acceptance token to said second client device without performing a cloud authentication. receiving a first authentication request from a first client device, said authentication request comprising a first user identification and a first password; looking up said first user identification and said first password in said database; if said first user identification and said first password are not present in said database, transmitting said first user identification and said first password to said cloud authentication mechanism; receiving a first acceptance token from said cloud authentication mechanism; based on said first acceptance token, storing said first user identification and said first password in said database; transmitting a second acceptance token to said first client device; receiving a second authentication request from a second client device, said second authentication request comprising said first user identification and said first password; looking up said first user identification and said first password received in said second authentication request in said database and determining that said first user identification and said first password are found in said database; and transmitting a third acceptance token to said second client device without performing a cloud authentication.