added a authentication mechanism