Hoe we bij Parallels Sign In with Apple veroverden

Hoe we bij Parallels Sign In with Apple veroverden

Ik denk dat veel mensen na WWDC 2019 al hebben gehoord van Sign In with Apple (kortweg SIWA). In dit artikel zal ik bespreken met welke specifieke obstakels we zijn geconfronteerd bij de integratie van dit systeem in ons licentieportaal. Dit artikel is niet helemaal voor degenen die net beginnen met SIWA (voor hen heb ik een aantal informatieve links aan het einde van de tekst gegeven). In dit materiaal zullen veel mensen waarschijnlijk antwoorden vinden op vragen die kunnen ontstaan bij de integratie van de nieuwe Apple-service.

Apple staat geen aangepaste omleidingen toe

Eigenlijk zie ik het antwoord op deze vraag nog steeds niet op de ontwikkelaarsfora. Het is als volgt: als je gebruik wilt maken van de SIWA JS API, dat wil zeggen, niet via de native SDK wilt werken vanwege de afwezigheid daarvan om verschillende redenen (niet macOS/iOS of een oude versie van genoemde systemen), dan heb je een eigen openbaar portaal nodig, anders is het niet mogelijk. Op de WWDR-portal moet je registreren en bevestigen dat je de eigenaar bent van je domein, en alleen daarop kun je de door Apple goedgekeurde omleidingen instellen.

Hoe we bij Parallels Sign In with Apple veroverden

Wat te doen als je de omleiding in de applicatie wilt onderscheppen? We hebben dit probleem heel eenvoudig opgelost: we hebben op ons portaal een lijst met toegestane omleidingen voor onze applicaties aangemaakt, die deze aanvragen vóór het tonen van de SIWA-authenticatiepagina. En we maken gewoon een omleiding van het portaal naar de applicatie met de gegevens die we van Apple hebben ontvangen. Eenvoudig en effectief.

Problemen met e-mail

Laten we kijken naar hoe we de problemen met de e-mail van de gebruiker hebben opgelost. Ten eerste is er geen REST API die deze informatie van de backend kan ophalen – alleen de client ontvangt deze gegevens en kan ze samen met de autorisatiecode doorgeven.

Ten tweede worden de informatie over de naam en e-mail van de gebruiker slechts ƩƩn keer doorgegeven, bij de eerste inlog van de gebruiker in de applicatie via Apple, waar de gebruiker de opties voor het delen van zijn persoonlijke gegevens kiest.

Op zich zijn deze problemen niet kritiek, zolang de verbinding met het sociale profiel succesvol is aangemaakt op het portaal — de gebruikersidentifier is dezelfde en gekoppeld aan het Team ID — dat wil zeggen, het is ƩƩn voor alle applicaties van uw team die zijn geĆÆntegreerd met SIWA. Maar als de login via Apple is gedaan en er daarna een fout optrad waardoor de verbinding op het portaal niet tot stand is gebracht, is de enige optie om de gebruiker naar appleid.apple.com te sturen, de verbinding met de applicatie te verbreken en het opnieuw te proberen. Het probleem kan worden opgelost door een bijpassend KB-artikel te schrijven en daarop te verwijzen.

Een volgende, minder prettige probleem is dat Apple een nieuw concept voor proxy-e-mail heeft bedacht. In ons geval, als de gebruiker al op het licentieportaal was met zijn echte e-mailadres en bij de eerste login via Apple de optie om e-mail te verbergen kiest, wordt er een nieuw account geregistreerd met dit proxy-e-mailadres, waarin duidelijk geen licenties staan, wat de eindgebruiker in de war brengt.

De oplossing voor dit probleem is redelijk eenvoudig: omdat de gebruikersidentifier hetzelfde is in SIWA en niet afhankelijk is van de gekozen opties/applicatie waarin wordt ingelogd, stellen we gewoon met behulp van een speciaal script in staat om deze koppeling met Apple naar een ander account met het echte e-mailadres van de gebruiker te switchen en zo zijn 'aankopen te herstellen'. Na deze procedure komt de gebruiker via SIWA in een ander account op het portaal en werkt alles correct.

Bij inloggen via het webportaal is er geen app-icoon.

Om een ander probleem op te lossen hebben we om verduidelijking gevraagd bij vertegenwoordigers van Apple en delen we de verkregen kennis:

https://forums.developer.apple.com/thread/123054
Hoe we bij Parallels Sign In with Apple veroverden

Dus de essentie is de volgende: aan het hoofd van de SIWA-groep kan alleen een macOS/iOS applicatie worden geplaatst, waarin de benodigde service-ID's van portalen worden toegevoegd. Evenzo, om het icoon bij de hoofdapplicatie te tonen, moeten er versies gepubliceerd zijn in de App Store met media die door Apple zijn goedgekeurd. Het icoon zal daarvandaan worden gehaald.

Als u dus alleen een portaal heeft en er geen applicatie uit de App Store is, zal er geen mooi icoon zijn, maar met de naam van de applicatie kunt u zich redden — als er geen media bij de hoofdapplicatie zijn, wordt deze informatie gehaald uit de beschrijving van de service-ID:
Hoe we bij Parallels Sign In with Apple veroverden
Hoe we bij Parallels Sign In with Apple veroverden

Het aantal elementen in de SIWA-groep is beperkt tot 5.

Op dit moment is er geen oplossing voor dit probleem, behalve het gebruik van meerdere groepen. Als je minder dan 6 identificaties hebt: 1 hoofdtoepassing en 5 afhankelijke, dan zie je de volgende melding bij het registreren.

Hoe we bij Parallels Sign In with Apple veroverden

Wij hebben groepen aangemaakt voor ons licentietportal en voor elke toepassing die met dit portal werkt. Wat betreft de beperking van slots, hebben we al een radar bij Apple aangemaakt en wachten we op hun antwoord.

Nuttige links

Het meest nuttige link, naar mijn mening, waar ik in feite alles mee heb gedaan. Half nuttige documentatie van Apple. hier.

Geniet ervan! Vragen, gedachten, ideeƫn en suggesties zijn welkom in de opmerkingen.

Bron: habr.com

Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers šŸ”„ Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers | ProHoster