Vixen
02b45cc4
csharp
public record class GateToken

A signed-in session, as a bearer token the client carries and cannot read.

Read the guide page for this →

Remarks

⚠ Not a TransferTicket, and the difference is which plane it belongs to. A ticket admits one character to one shard for about a minute and is checked by a realm; this admits one account to the gate for hours and is checked by the gate. Making them one type would mean a realm could be handed something that authorises reading an account's character list, which is exactly the confusion ADR-017's assembly split exists to prevent.

⚠ Stateless, and therefore not revocable before it expires. There is no session table, so signing out is a client-side forget and a compromised token works until Expires. That is the trade a stateless token always makes, and the bound on it is the lifetime — hours rather than weeks. Suspension is checked against the account on every request that matters rather than against the token, so a banned account stops being able to play immediately even though its token still parses.

Fields and properties (2)

  • public Guid Account

    Whose.

  • public DateTimeOffset Expires

    When it stops being accepted.

Methods (2)

  • public GateToken(Guid Account, DateTimeOffset Expires)

    A signed-in session, as a bearer token the client carries and cannot read.

  • public override string ToString()

    Returns a string that represents the current object.

Used by (4)

  • GateEndpointsVixen.Live.Gate
  • GateServiceVixen.Live.Gate
  • GateServiceTestsVixen.Live.Gate.Tests
  • GateTokenSignerVixen.Live.Gate