add auth logic sceleton