EOS_Connect_UnlinkAccount

EOS API reference page for EOS_Connect_UnlinkAccount

Choose your implementation method:

C

C#

This function is part of the Connect Interface.

Remarks

Unlink external auth credentials from the owning keychain of a logged in product user. This function allows recovering the user from scenarios where they have accidentally proceeded to creating a new product user for the local native user account, instead of linking it with an existing keychain that they have previously created by playing the game (or another game owned by the organization) on another platform. In such scenario, after the initial platform login and a new product user creation, the user wishes to re-login using other set of external auth credentials to connect with their existing game progression data. In order to allow automatic login also on the current platform, they will need to unlink the accidentally created new keychain and product user and then use the EOS_Connect_Login and EOS_Connect_LinkAccount APIs to link the local native platform account with that previously created existing product user and its owning keychain. In another scenario, the user may simply want to disassociate the account that they have logged in with from the current keychain that it is linked with, perhaps to link it against another keychain or to separate the game progressions again. In order to protect against account theft, it is only possible to unlink user accounts that have been authenticated and logged in to the product user in the current session. This prevents a malicious actor from gaining access to one of the linked accounts and using it to remove all other accounts linked with the keychain. This also prevents a malicious actor from replacing the unlinked account with their own corresponding account on the same platform, as the unlinking operation will ensure that any existing authentication session cannot be used to re-link and overwrite the entry without authenticating with one of the other linked accounts in the keychain. These restrictions limit the potential attack surface related to account theft scenarios.

Parameters

EOS_Connect_UnlinkAccount

Parameter Type And Name

Usage Information

EOS_HConnect Handle

const EOS_Connect_UnlinkAccountOptions* Options

structure containing operation input parameters.

void* ClientData

arbitrary data that is passed back to you in the CompletionDelegate.

const EOS_Connect_OnUnlinkAccountCallback CompletionDelegate

a callback that is fired when the unlink operation completes, either successfully or in error.

This function is asynchronous; the EOS SDK guarantees that your callback (the CompletionDelegate parameter) will run when the operation completes, regardless of whether it succeeds or fails. Use the void* parameter to pass any contextual information the callback may need in order to react properly. Relevant information can be copied from the EOS SDK's cache while the callback function is running. You do not need to remove the callback function.

Callback Function Information

Because this function is asynchronous, it employs a callback of type EOS_Connect_OnUnlinkAccountCallback to report the results of its operation.

Callback Remarks

Function prototype definition for callbacks passed to EOS_Connect_UnlinkAccount.

Callback Parameters

EOS_Connect_OnUnlinkAccountCallback

Parameter Type And Name

Usage Information

const EOS_Connect_UnlinkAccountCallbackInfo* Data

A EOS_Connect_UnlinkAccountCallbackInfo containing the output information and result

Related API Members

This function is part of the Connect Interface.

Remarks

Unlink external auth credentials from the owning keychain of a logged in product user. This function allows recovering the user from scenarios where they have accidentally proceeded to creating a new product user for the local native user account, instead of linking it with an existing keychain that they have previously created by playing the game (or another game owned by the organization) on another platform. In such scenario, after the initial platform login and a new product user creation, the user wishes to re-login using other set of external auth credentials to connect with their existing game progression data. In order to allow automatic login also on the current platform, they will need to unlink the accidentally created new keychain and product user and then use the {Login} and {LinkAccount} APIs to link the local native platform account with that previously created existing product user and its owning keychain. In another scenario, the user may simply want to disassociate the account that they have logged in with from the current keychain that it is linked with, perhaps to link it against another keychain or to separate the game progressions again. In order to protect against account theft, it is only possible to unlink user accounts that have been authenticated and logged in to the product user in the current session. This prevents a malicious actor from gaining access to one of the linked accounts and using it to remove all other accounts linked with the keychain. This also prevents a malicious actor from replacing the unlinked account with their own corresponding account on the same platform, as the unlinking operation will ensure that any existing authentication session cannot be used to re-link and overwrite the entry without authenticating with one of the other linked accounts in the keychain. These restrictions limit the potential attack surface related to account theft scenarios.

Parameters

Connect.ConnectInterface.UnlinkAccount

Parameter Type And Name

Usage Information

UnlinkAccountOptions options

structure containing operation input parameters.

object clientData

arbitrary data that is passed back to you in the CompletionDelegate.

OnUnlinkAccountCallback completionDelegate

a callback that is fired when the unlink operation completes, either successfully or in error.

This function is asynchronous; the EOS SDK guarantees that your callback (the CompletionDelegate parameter) will run when the operation completes, regardless of whether it succeeds or fails. Use the object parameter to pass any contextual information the callback may need in order to react properly. Relevant information can be copied from the EOS SDK's cache while the callback function is running. You do not need to remove the callback function.

Callback Function Information

Because this function is asynchronous, it employs a callback of type Connect.OnUnlinkAccountCallback to report the results of its operation.

Callback Remarks

Function prototype definition for callbacks passed to {ConnectInterface.UnlinkAccount}.

Callback Parameters

Connect.OnUnlinkAccountCallback

Parameter Type And Name

Usage Information

UnlinkAccountCallbackInfo data

A EOS_Connect_UnlinkAccountCallbackInfo containing the output information and result

Related API Members