finish implementation of Auth