add support for user impersonation