Authentication #

Pragma’s cross-platform accounts system provides support for authenticating and connecting players across all major game platforms.

In this overview, we’ll cover the following key concepts in Pragma’s authentication system:

Account Services and Game Services #

Pragma services are organized into two backend types: social and game.

  • Social backend: Handles authentication, player accounts, and is used to manage a player’s social information (e.g. display name, friends list) shared across one or more game titles.
  • Game backend: Used to power game services, such as parties, matchmaking, inventory, and meta-game systems.

Each backend operates independently, with distinct responsibilities and access to specific data. This structure enables multi-game studios to make use of a centralized location for social data (e.g. friends lists, game presence, and bans) such as providing players with a shared friends list across different games. This independence also supports various configurations of environments such as alpha, beta, and playtest.

Session types #

Pragma has 3 authenticated session types with varying permissions levels, actions, and restricted data access.

  • Player: A Player session is used to matchmake and interact with player data.
  • Operator: An Operator session is used to perform administrative tasks such as applying an account ban.
  • Partner: A Partner session is for trusted third parties such as game servers.

Pragma authentication process #

Players authenticate with Pragma by first authenticating through a third party identity provider and exchanging the id provider token for a Pragma session token. Once verified, Pragma retrieves or creates an account for the player and issues them a social and game token for their respective backends.

Pragma has support for many providers, including Steam, Epic, PlayStation, and Xbox, and support for additional providers is added regularly. Additional providers can be added via our plugin system to easily integrate with publisher account systems and other relevant third parties.

Topics in this section #

TopicDescription
Identity ProvidersUsing identity providers for authentication and social integration.
Login and SessionManage user sessions with long-lived WebSockets and queues.
BansRestrict a player's access from your game by issuing an account ban.
Limited Access ModeSchedule time windows that open the platform for specified Player Groups.
How-To GuidesGet started with Pragma's authentication system with our How-To Guides.
ReferenceSDK, config, data classes, and plugins related to monetization.