Authenticate using an External Provider