Sut wnaethon ni orchfygu Sign In with Apple yn Parallels

Sut wnaethon ni orchfygu Sign In with Apple yn Parallels

Rwy'n credu bod llawer o bobl eisoes wedi clywed Sign In with Apple (SIWA yn fyr) ar ôl WWDC 2019. Yn yr erthygl hon byddaf yn dweud wrthych pa beryglon penodol y bu'n rhaid i mi eu hwynebu wrth integreiddio'r peth hwn i'n porth trwyddedu. Nid yw'r erthygl hon mewn gwirionedd ar gyfer y rhai sydd newydd benderfynu deall SIWA (ar eu cyfer rwyf wedi darparu nifer o ddolenni addysgol ar ddiwedd y testun). Yn y deunydd hwn, yn fwyaf tebygol, bydd llawer yn dod o hyd i atebion i gwestiynau a allai godi wrth integreiddio'r gwasanaeth Apple newydd.

Nid yw Apple yn caniatáu ailgyfeiriadau arferol

A dweud y gwir, dwi dal ddim yn gweld ateb i'r cwestiwn hwn ar fforymau datblygwyr. Y pwynt yw hyn: os ydych am ddefnyddio API SIWA JS, h.y. peidiwch â gweithio trwy'r SDK brodorol oherwydd diffyg un am ryw reswm neu'i gilydd (nid macOS / iOS neu hen fersiwn o'r systemau hyn), yna mae angen eich porth cyhoeddus eich hun arnoch chi, fel arall nid oes unrhyw ffordd arall. Oherwydd ar borth WWDR mae angen i chi gofrestru a chadarnhau mai chi yw perchennog eich parth, a dim ond arno y gallwch chi atodi ailgyfeiriadau sy'n dderbyniol o safbwynt Apple:

Sut wnaethon ni orchfygu Sign In with Apple yn Parallels

Beth ddylech chi ei wneud os ydych am ryng-gipio ailgyfeiriad mewn cais? Fe wnaethom ddatrys y broblem hon yn hynod o syml: fe wnaethom greu ar ein porth restr o ailgyfeiriadau derbyniol ar gyfer ein ceisiadau, y maent yn eu harchebu cyn arddangos tudalen awdurdodi SIWA. Ac rydym yn syml yn ailgyfeirio o'r porth i'r cais gyda'r data a dderbyniwyd gan Apple. Syml a blin.

Problemau gydag e-bost

Gadewch i ni edrych ar sut y gwnaethom ddatrys problemau gydag e-bost y defnyddiwr. Yn gyntaf, nid oes unrhyw API REST sy'n eich galluogi i gael y wybodaeth hon o'r backend - dim ond y cleient sy'n derbyn y data hwn ac yn gallu ei drosglwyddo ynghyd â'r cod awdurdodi.

Yn ail, dim ond unwaith y trosglwyddir gwybodaeth am enw ac e-bost y defnyddiwr, i fewngofnod cyntaf y defnyddiwr i'r rhaglen trwy Apple, lle mae'r defnyddiwr yn dewis opsiynau ar gyfer rhannu ei ddata personol.

Ynddyn nhw eu hunain, nid yw'r problemau hyn yn uniongyrchol hanfodol os cafodd y cysylltiad â'r proffil cymdeithasol ei greu'n llwyddiannus ar y porth - mae'r ID defnyddiwr yr un peth ac mae'n gysylltiedig â'r ID Tîm - h.y. mae'r un peth ar gyfer holl gymwysiadau integredig SIWA eich tîm. Ond os gwnaed y mewngofnodi trwy Apple, ac ymhellach ar hyd y llwybr digwyddodd gwall ac na chrëwyd y cysylltiad ar y porth, yna'r unig opsiwn yw anfon y defnyddiwr i appleid.apple.com, torri'r cysylltiad â'r cais a ceisio eto. Mewn gwirionedd, gellir datrys y broblem trwy ysgrifennu'r erthygl KB briodol a chysylltu ag ef.

Mae'r broblem fwy annymunol nesaf yn gysylltiedig â'r ffaith bod Apple wedi creu cysyniad newydd gydag e-bost dirprwy. Yn ein hachos ni, os yw'r defnyddiwr eisoes wedi bod i'r porth trwyddedu gyda'i sebon go iawn ac, wrth fewngofnodi am y tro cyntaf trwy Apple, yn dewis yr opsiwn i guddio'r e-bost, mae cyfrif newydd wedi'i gofrestru gyda'r dirprwy e-bost hwn. post, nad yw'n amlwg yn cynnwys unrhyw drwyddedau, sy'n rhoi'r defnyddiwr terfynol yn y pen draw.

Mae'r ateb i'r broblem hon yn eithaf syml: oherwydd. Os yw'r ID defnyddiwr yr un peth yn SIWA ac nad yw'n dibynnu ar yr opsiynau / cymhwysiad a ddewiswyd y mae'r mewngofnodi wedi'i wneud iddo, yna rydym yn syml yn defnyddio sgript arbennig i'ch galluogi i newid y cysylltiad hwn o Apple i gyfrif arall gyda chyfrif go iawn y defnyddiwr sebon a thrwy hynny "adfer eich pryniannau" " Ar ôl y weithdrefn hon, mae'r defnyddiwr yn dechrau cyrchu cyfrif arall ar y porth trwy SIWA ac mae popeth yn gweithio'n iawn iddo.

Nid oes eicon cais wrth Arwyddo i mewn trwy'r porth gwe

I ddatrys problem arall, fe wnaethom droi at gynrychiolwyr Apple i gael eglurhad a rhannu ein gwybodaeth:

https://forums.developer.apple.com/thread/123054
Sut wnaethon ni orchfygu Sign In with Apple yn Parallels

Y rhai. mae'r ystyr fel a ganlyn: ar ben y grŵp SIWA m.b. Dim ond y cymhwysiad macOS / iOS sy'n cael ei gyflwyno, ac mae'r IDau gwasanaeth angenrheidiol o'r pyrth eisoes wedi'u hychwanegu ato. Yn unol â hynny, er mwyn i eicon y prif gais gael ei ddangos. fersiynau a gyhoeddwyd yn yr App Store gyda chyfryngau sydd wedi'u gwirio gan Apple. Bydd yr eicon yn cael ei gymryd oddi yno.

Yn unol â hynny, os mai dim ond porth sydd gennych a dim cymwysiadau o'r App Store, yna ni fydd gennych eicon hardd, ond gallwch ddianc rhag enw'r cais - os nad oes gan y prif raglen gyfryngau, mae'r wybodaeth hon yn wedi'i gymryd o ID y gwasanaeth Disgrifiad:
Sut wnaethon ni orchfygu Sign In with Apple yn Parallels
Sut wnaethon ni orchfygu Sign In with Apple yn Parallels

Mae nifer yr elfennau mewn grŵp SIWA wedi’i gyfyngu i 5

Nid oes ateb i'r broblem hon ar hyn o bryd ac eithrio i ddefnyddio llawer o grwpiau, os ydych yn colli 6 dynodwr: 1 cais pen a 5 rhai dibynnol, yna pan fyddwch yn ceisio cofrestru yr un nesaf byddwch yn gweld y neges hon:

Sut wnaethon ni orchfygu Sign In with Apple yn Parallels

Rydym wedi creu grwpiau ar gyfer ein porth trwydded ac ar gyfer pob un o'r cymwysiadau sy'n rhyngweithio â'r porth hwn. O ran cyfyngiadau slot, rydym eisoes wedi agor radar gydag Apple ac yn aros am eu hymateb.

Dolenni defnyddiol

Mwyaf defnyddiol dolen, yn fy marn i, yn ôl y gwnes i bopeth yn y bôn. Doc lled-ddefnyddiol gan Apple yma.

Mwynhewch! Croesewir cwestiynau, meddyliau, syniadau ac awgrymiadau yn y sylwadau.

Ffynhonnell: hab.com

Ychwanegu sylw