Hi everyone,
I’m trying to implement EOS_Connect_Login
using the OnlineServicesEOSGS
subsystem in Unreal Engine 5, but I’m not sure how to properly configure it. Has anyone managed to get this working?
Here’s the login function I’m using:
void UEOSGameInstanceSubsystem::LoginWithAccessToken(const FString& CognitoToken, FPlatformUserId PlatformUserId)
{
UE::Online::FAuthLogin::Params Params;
Params.CredentialsType = UE::Online::LoginCredentialsType::ExternalAuth;
Params.PlatformUserId = PlatformUserId;
Params.CredentialsToken.EmplaceUE::Online::FExternalAuthToken(
UE::Online::FExternalAuthToken{ UE::Online::ExternalLoginType::OpenIdAccessToken, CognitoToken });
OnlineServicesInfoInternal->AuthInterfaceEOSGS->Login(MoveTemp(Params)).OnComplete([](const UE::Online::TOnlineResult<UE::Online::FAuthLogin>& Result)
{
if (Result.IsOk())
{
UE_LOG(LogTemp, Warning, TEXT("Login Success!"));
}
else
{
UE_LOG(LogTemp, Warning, TEXT("Login Failed! %s"), *Result.GetErrorValue().GetLogString());
}
});
}
However, I’m receiving the following error:
LogEOSSDK: Error: LogEOSAuth: Invalid parameter EOS_Auth_Credentials.ExternalType reason: invalid type
LogOnlineServices: Warning: [FAuthEOS::Login] Failure: LoginEASImpl invalid_params (EOS_InvalidParameters)
LogTemp: Warning: Login Failed! invalid_params (EOS_InvalidParameters)
I suspect the system is attempting to call LoginEASImpl
instead of LoginConnectImpl
, even though I intend to use EOS_Connect_Login
. I have a suspicion that this might be due to the AuthEOSGSLoginConfig.EASAuthEnabled
setting.
I’ve tried disabling EASAuthEnabled
with:
[OnlineServices.Login]
EASAuthEnabled=false
But it doesn’t seem to affect the behavior.
Has anyone successfully configured the system to use EOS_Connect_Login
(via LoginConnectImpl
) with OpenID tokens (e.g., Cognito)? Any advice or example configurations would be greatly appreciated.
Thanks in advance!