custom auth adapter