add user authentication ,etc