now supporting keychain-based authentication