Hogyan győztük le a Parallels-nél a Bejelentkezés az Apple-lel

Hogyan győztük le a Parallels-nél a Bejelentkezés az Apple-lel

Azt hiszem, sokan már hallották a Sign In with Apple (röviden SIWA) szót a WWDC 2019 után. Ebben a cikkben elmondom, milyen konkrét buktatókkal kellett szembenéznem, amikor ezt a dolgot a licencportálunkba integráltam. Ez a cikk nem igazán azoknak szól, akik most döntöttek úgy, hogy megértik a SIWA-t (számukra számos oktató hivatkozást adtam a szöveg végén). Ebben az anyagban valószínűleg sokan választ találnak azokra a kérdésekre, amelyek az új Apple szolgáltatás integrálásakor felmerülhetnek.

Az Apple nem engedélyezi az egyéni átirányításokat

Valójában még mindig nem látok választ erre a kérdésre a fejlesztői fórumokon. A lényeg a következő: ha a SIWA JS API-t akarod használni, pl. nem működik a natív SDK-n keresztül, mert ilyen vagy olyan okból hiányzik (nem macOS/iOS vagy ezeknek a rendszereknek egy régi verziója), akkor szükség van egy saját nyilvános portálra, különben nincs más lehetőség. Mivel a WWDR portálon regisztrálnia kell, és meg kell erősítenie, hogy Ön a domain tulajdonosa, és csak arra csatolhat az Apple szempontjából elfogadható átirányításokat:

Hogyan győztük le a Parallels-nél a Bejelentkezés az Apple-lel

Mi a teendő, ha el akarja fogni az átirányítást egy alkalmazásban? Ezt a problémát rendkívül egyszerűen megoldottuk: portálunkon elkészítettük az alkalmazásaink számára elfogadható átirányítások listáját, amelyeket a SIWA jogosultsági oldal megjelenítése előtt rendelnek meg. És egyszerűen átirányítjuk a portálról az alkalmazásra az Apple-től kapott adatokkal. Egyszerű és dühös.

Problémák az e-mailekkel

Nézzük meg, hogyan oldottuk meg a felhasználó e-mailjével kapcsolatos problémákat. Először is, nincs REST API, amely lehetővé teszi ezen információk lekérését a háttérből - csak az ügyfél kapja meg ezeket az adatokat, és továbbíthatja azokat az engedélyezési kóddal együtt.

Másodszor, a felhasználó nevével és e-mail-címével kapcsolatos információk csak egyszer kerülnek továbbításra, a felhasználó legelső bejelentkezéskor az alkalmazásba az Apple-n keresztül, ahol a felhasználó kiválasztja a személyes adatai megosztásának lehetőségeit.

Önmagukban ezek a problémák nem közvetlenül kritikusak, ha a közösségi profillal való kapcsolat sikeresen létrejött a portálon - a felhasználói azonosító megegyezik, és a Csapatazonosítóhoz kapcsolódik - pl. ez ugyanaz a csapat összes SIWA-integrált alkalmazása esetén. De ha a bejelentkezés az Apple-n keresztül történt, és az úton továbbhaladva hiba történt, és nem jött létre a kapcsolat a portálon, akkor az egyetlen lehetőség az, hogy elküldi a felhasználót az appleid.apple.com webhelyre, megszakítja a kapcsolatot az alkalmazással és próbáld újra. Valójában a probléma megoldható a megfelelő KB cikk megírásával és linkelésével.

A következő kellemetlenebb probléma azzal kapcsolatos, hogy az Apple új koncepcióval rukkolt elő a proxy e-maillel. Esetünkben, ha a felhasználó már járt a licencportálon valódi szappanjával, és az Apple-n keresztüli első bejelentkezéskor az e-mail elrejtésének lehetőségét választja, akkor ezzel a proxy e-mail-címmel új fiók kerül regisztrálásra. mail, amely nyilvánvalóan nem tartalmaz semmilyen licencet, ami zsákutcába hozza a végfelhasználót.

A probléma megoldása meglehetősen egyszerű: mert. Ha a felhasználói azonosító megegyezik a SIWA-ban, és nem függ a kiválasztott opcióktól/alkalmazásoktól, amelyekbe a bejelentkezés történik, akkor egyszerűen egy speciális szkriptet használunk, amely lehetővé teszi, hogy átkapcsolja ezt a kapcsolatot az Apple-ről egy másik fiókra a felhasználó valódi fiókjával. szappannal, és ezáltal „visszaállíthatja a vásárlásait” Ezt az eljárást követően a felhasználó elkezd hozzáférni egy másik fiókhoz a portálon a SIWA-n keresztül, és minden megfelelően működik számára.

A webes portálon keresztül történő bejelentkezéskor nincs alkalmazás ikon

Egy másik probléma megoldása érdekében az Apple képviselőihez fordultunk tisztázásért és tudásunk megosztásáért:

https://forums.developer.apple.com/thread/123054
Hogyan győztük le a Parallels-nél a Bejelentkezés az Apple-lel

Azok. jelentése a következő: a SIWA csoport élén m.b. Csak a macOS/iOS alkalmazás kerül kiszállításra, amelybe már hozzá vannak adva a portálok szükséges szolgáltatásazonosítói. Ennek megfelelően annak érdekében, hogy a fő alkalmazás ikonja megjelenjen. az App Store-ban közzétett verziók az Apple által ellenőrzött adathordozókkal. Az ikon onnan kerül átvételre.

Ennek megfelelően, ha csak egy portálod van, és nincsenek alkalmazások az App Store-ból, akkor nem lesz gyönyörű ikonod, de megúszhatod az alkalmazás nevét - ha a fő alkalmazásnak nincs adathordozója, akkor ez az információ a leírás szolgáltatásazonosítójából átvéve:
Hogyan győztük le a Parallels-nél a Bejelentkezés az Apple-lel
Hogyan győztük le a Parallels-nél a Bejelentkezés az Apple-lel

Egy SIWA-csoport elemeinek száma 5-re korlátozódik

Jelenleg nincs megoldás erre a problémára, kivéve sok csoport használatát, ha hiányzik 6 azonosító: 1 fejalkalmazás és 5 függő, akkor amikor megpróbálja regisztrálni a következőt, ezt az üzenetet fogja látni:

Hogyan győztük le a Parallels-nél a Bejelentkezés az Apple-lel

Csoportokat hoztunk létre a licencportálunkhoz és minden olyan alkalmazáshoz, amelyek kölcsönhatásba lépnek ezzel a portállal. Ami a slot korlátozásokat illeti, már nyitottunk egy radart az Apple-lel, és várjuk válaszukat.

Hasznos Linkek

Leghasznosabb link, véleményem szerint, ami szerint lényegében mindent megtettem. Félig hasznos dokkoló az Apple-től itt.

Élvezd! Kérdéseket, gondolatokat, ötleteket és javaslatokat várunk kommentben.

Forrás: will.com

Hozzászólás