Autorização do EDS
- Introdução
- Processo de autorização
- Tokens 3.0: multiusuário versus usuário único
- O EDS é compatível com vários usuários?
Introdução
O Entertainment Discovery Services (EDS) 3.1 não oferecerá suporte a tráfego anônimo. A autenticação é necessária para todas as solicitações ao EDS. O EDS exigirá um XToken dos chamadores para autenticar corretamente os clientes. Esses tokens são produzidos pelo XSTS e podem ser obtidos por meio de vários XBOX Authentication Services (XAS). Há serviços de autenticação separados para dispositivos, usuários e títulos, que definirão a identidade do token. O XSTS é o guardião do XBOX LIVE. Ele é a primeira linha de defesa para determinar se um usuário ou dispositivo está autorizado a se conectar a qualquer um dos serviços do XBOX LIVE. Depois de autenticar o usuário, o XSTS gera um XToken que ele pode usar para se identificar com segurança para qualquer componente do serviço. Esse XToken é seu passaporte para o LIVE. Pessoas e coisas querem usar nossos serviços. E queremos que a maioria dessas coisas e pessoas possa usar nossos serviços. Mas como garantimos que as coisas não estão fingindo ser pessoas e que as pessoas são realmente quem dizem ser? Fornecemos a elas tokens que podem ser usados para se identificar para outros. Esses tokens são produzidos pelo XSTS e geralmente são chamados de XTokens. XToken é um termo amplo usado para abranger tokens que contêm uma variedade de coisas diferentes e podem vir em muitas formas diferentes, mas todos são criados, assinados e, opcionalmente, criptografados pelo servidor XSTS. Internamente, o XSTS usa o MXAN para criar e formatar os tokens. O MXAN é o único componente que extrai informações de um XToken. Os serviços que consomem os tokens passam os cabeçalhos da solicitação para o MXAN para que sejam decifrados. Os tokens são processados e validados, e as declarações expressas no token são retornadas ao serviço. O serviço pode então usar esses valores de declaração para identificar o usuário ou dispositivo chamador e executar ações com base nessas informações. Os tokens de identidade básicos (para usuário, dispositivo e título) são fornecidos pelos XBOX Authentication Services (XAS). Cada XAS é responsável por gerar um token de identidade que especifica valores para várias declarações pelas quais ele é responsável.- XASD (XAS para dispositivos): cria um DToken que fornece uma identidade de dispositivo
- XASU (XAS para usuários): cria um UToken que fornece uma identidade de usuário
- XAST (XAS para títulos): cria um TToken que fornece uma identidade de título
Processo de autorização
-
Obtenha um ou mais tokens de identidade. Você pode solicitar um XToken com no máximo um token de cada tipo D, U e T. Você deve fornecer pelo menos um token D ou U.
- Solicite um DToken ao XASD fornecendo os detalhes de autenticação do dispositivo
- Solicite um UToken ao XASU com alguma forma de autenticação de usuário. A autenticação do usuário provavelmente é fornecida na forma de um token MSA (RPS).
- Solicite um TToken ao XAST. Os títulos disponíveis dependem da plataforma em execução no momento, portanto, você também deve fornecer um DToken ao XAST.
-
Crie uma solicitação XSTS.
- Defina a terceira parte confiável para a qual você está solicitando um token.
- Preencha as propriedades da solicitação com os tokens D, U e/ou T.
- Execute a solicitação XSTS e armazene em cache o XToken resultante. O XToken retornado contém (no máximo) todas as informações de identidade de dispositivo, usuário e título dos tokens de identidade e quaisquer declarações adicionais (status atual da assinatura, grupos de usuários etc.).
Tokens 3.0: multiusuário versus usuário único
Este é o formato do token 3.0:XBL3.0 x=<hash>;<token>
Dependendo do <hash>, o token é tratado de forma diferente:
- Se <hash> for igual a * (asterisco), nenhum usuário específico está executando a solicitação e todos os usuários do token estão presentes na entidade de segurança desserializada. Esta é a verdadeira forma multiusuário.
- Se <hash> for igual a - (traço), nenhum usuário está executando a solicitação. Todos os usuários na entidade de segurança desserializada são removidos.
- Se <hash> não for igual a * ou -, ele será um identificador que indica qual usuário do token está fazendo a solicitação. Somente o usuário indicado estará presente na entidade de segurança desserializada. Todos os outros usuários são removidos. Este é o token 3.0 de usuário único.
O EDS é compatível com vários usuários?
- A resposta é não. No caso descrito, o console sempre enviará tokens de usuário único. Mesmo que haja vários usuários conectados, deve haver um “Chamador” indicado, e todas as outras identidades são descartadas.
