J'ai l'intention de basculer d'une application à partir de l'ancien OAuth flux avec l' SFSafariViewController
pour le nouveau flux avec iOS 11 SFAuthenticationSession
. La journalisation n'est pas un problème, le transfert vers la nouvelle API ne me fallut que quelques minutes à mettre en œuvre. Cependant la déconnexion m'a dérouté.
Comment?
Je ne trouve pas de mention de vouloir offrir la possibilité de se déconnecter n'importe où dans les docs. L'aide de l'ancien SFSafariViewController
d'invalider les cookies? Non, ils ne sont pas partagé avec SFAuthenticationSession
. Dès que je redémarre la session d'authentification de l'utilisateur est automatiquement connecté et il n'y a pas moyen de sortir. Donc comment faire pour activer la déconnexion? Ou suis-je simplement donnant sur quelque chose de complètement évident?
Mise à jour: J'ai trouvé une voie "qui fonctionne" dans un sens technique, mais c'est dingue pour l'utilisateur: Ouvrir un nouveau SFAuthenticationSession sur la page de déconnexion qui efface le cookie. Mais cela signifie que lors de l'enregistrement de l'affichage des alertes demande à l'utilisateur s'il souhaite connecter via le service. Si oui est sélectionné ("connexion"), le témoin de la compensation page de déconnexion est ouvert, l'utilisateur doit manuellement rejeter le point de vue, qui peut être pris par le gestionnaire d'achèvement et nous savons que nous pouvons ouvrir la connexion de vue encore une fois.. l'affichage de l'invite de connexion à la déconnexion? J'ai vraiment n'aime pas cette solution.
Des idées? Suis-je en donnant un complètement la solution la plus évidente?
Mise à jour 2: Comme on n'a aucune idée sur ce problème jusqu'à présent, ce n'est probablement pas facile. J'ai déposé une proposition d'Apple via leur outil de rapport pour clarifier la façon de gérer ce ou de le construire dans l'API si pas disponible. Affichera si je reçois une réponse.
Mise à jour 3: Après méditer la question un peu plus nous avons trouvé un autre possible (bien qu'aussi peu attractif) solution si vous pouvez influer sur la page de connexion de l'authentification OAuth fournisseur de: réaliser des cookies très courte durée. Ensuite, la page de connexion peut être ouvert sans l'ouverture de session automatique dans. Toutefois, cela tue tout le but de partager des sessions de connexion entre les applications.. et vous devez être en mesure d'influencer la page de connexion.
Mise à jour 4: Depuis iOS 12 SFAuthenticationSession
est obsolète et a obtenu remplacé par ASWebAuthenticationSession
. Toutefois ASWebAuthenticationSession
ne change rien en ce qui concerne les journaux. Il n'est pas encore possible. Même problème qu'avant.