Partilhar via


Facebook's Graph API 2.0 Upgrade e ACS

Atualizado: 17 de julho de 2015

No dia 30 de abril de 2015, todas as aplicações ativadas pelo Facebook serão automaticamente atualizadas para o Graph API v2.0 do Facebook. Se utilizar o Facebook como fornecedor de identidade num espaço de nome ACS, poderá ter de escoar alterações nas configurações do seu fornecedor de identidade do Facebook em ACS, alterações de código na sua aplicação ou ambas para evitar tempo de inatividade. Para mais informações sobre os planos do Facebook, consulte o Guia de Atualização da Plataforma do Facebook.

Fundo

A ACS utiliza os seguintes pontos finais do Facebook: https://www.facebook.com/dialog/oauth, https://graph.facebook.com/oauth/access\_tokene https://www.facebook.com/logout.phphttps://graph.facebook.com/me. O Facebook irá atualizar automaticamente estes pedidos de Graph API "sem versão" para usar o V2.0 no dia 30 de abril de 2015.

Ao adicionar o Facebook como fornecedor de identidade em ACS, o 'email' é definido como uma permissão de aplicação (por padrão). Se não tiver optado por nenhuma permissão de candidatura (campo vazio) ou o padrão ('email') nas configurações do seu fornecedor de identidade do Facebook, então não precisa de fazer nenhuma alteração de aplicação ou configuração. Se escolheu outras permissões de aplicação, então deve rever completamente este tópico para avaliar o impacto e tomar as medidas adequadas.

Application permissions dialog

Avaliação do Impacto

As seguintes alterações feitas pelo Facebook precisam da sua consideração:

  • Permissões

    • A permissão "basic_info", que é implicitamente parte de cada pedido do Facebook, será substituída pela permissão "public_profile", que também estará implícita. Os conjuntos de permissão para os dois são idênticos, exceto que neste último caso a lista de amigos fará parte de uma permissão separada 'user_friends'. Para obter uma funcionalidade equivalente à permissão 'basic_info', terá de solicitar explicitamente a permissão "user_friends".

    • Foram feitas alterações significativas nas permissões baseadas em "amigos". O Guia de Atualização da Plataforma do Facebook descreve-os em detalhe.

    • O Facebook exige que aplicações que solicitem permissões adicionais para além de 'basic_profile', 'email' e 'user_friends' passem pelo seu processo de Revisão de Login .

  • Permissões Recusadas

    • O Facebook permitirá que os utilizadores escolham quais permissões conceder a uma aplicação, com a opção de recusar seletivamente permissões. As aplicações terão de lidar com estes casos de utilização.

    • Os utilizadores não podem recusar a permissão "public_profile".

    • Se o utilizador recusar a permissão de 'e-mail', a ACS não passará a reclamação de 'email' no símbolo de volta à aplicação.

  • IDs de utilizador com âmbito de aplicações

    • Os IDs de utilizador enviados no token ACS como a alegação de "identificador de nome" passarão de IDs globalmente telescópio (o mesmo ID do utilizador em várias aplicações do Facebook) para IDs com aplicações (diferentes IDs de utilizador para cada aplicação do Facebook).

    • É o caso apenas para os utilizadores do Facebook que recentemente se inscrevem na aplicação. É retrocompatível com utilizadores que já se inscreveram na aplicação antes.

    • Se a aplicação se basear em IDs de utilizador globalmente apara correlacionar o utilizador em diferentes registos de aplicações do Facebook, terá de fazer ajustes e utilizar a API de Mapeamento de Negócios do Facebook para fazer o mesmo.

Recomendações

Se descobrir que há impacto nas suas aplicações ACS ativadas pelo Facebook, aqui está uma lista não exaustiva de recomendações. Nem tudo isto pode ser aplicável a si. Consulte o Guia de Atualização da Plataforma do Facebook para obter a lista completa.

  • Certifique-se de que não tem dependências de permissões de aplicações preprecadas.

  • Envie permissões de aplicação alargadas para a Revisão de Início de Sessão do Facebook. Em alternativa, pode reduzir a sua aplicação para utilizar apenas permissões de aplicação de 'basic_profile', 'email' e 'user_friends'.

  • Atualize a lógica da sua aplicação para lidar com permissões recusadas.

  • Atualize a lógica da sua aplicação para lidar com iDs de utilizador com âmbito de aplicações se tiver de correlacionar os utilizadores em vários registos de aplicações do Facebook. Use a API de Mapeamento de Negócios do Facebook para fazer isto.