{"id":38651,"date":"2019-10-31T22:25:04","date_gmt":"2019-10-31T19:25:04","guid":{"rendered":"https:\/\/prohoster.info\/blog\/kak-my-v-parallels-pokoryali-sign-in-with-apple\/"},"modified":"2019-10-31T22:25:04","modified_gmt":"2019-10-31T19:25:04","slug":"kak-my-v-parallels-pokoryali-sign-in-with-apple","status":"publish","type":"post","link":"https:\/\/prohoster.info\/ro\/blog\/news\/kak-my-v-parallels-pokoryali-sign-in-with-apple","title":{"rendered":"Cum am cucerit noi \u00een Parallels Sign In with Apple","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"Cum am cucerit noi \u00een Parallels Sign In with Apple\" src=\"\/wp-content\/uploads\/2019\/10\/3cb54b15c81d639f145c104431c583e5.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nCred c\u0103 pentru mul\u021bi dintre noi, dup\u0103 WWDC 2019, Sign In with Apple (pe scurt SIWA) este deja cunoscut. \u00cen acest material voi povesti despre obstacolele specifice cu care ne-am confruntat \u00een integrarea acestei func\u021bionalit\u0103\u021bi \u00een portalul nostru de licen\u021biere. Aceast\u0103 articol nu este \u00een totalitate pentru cei care tocmai au decis s\u0103 se familiarizeze cu SIWA (pentru ace\u0219tia am oferit o serie de linkuri informative la sf\u00e2r\u0219itul textului). \u00cen aceast\u0103 lucrare, cu siguran\u021b\u0103 mul\u021bi vor g\u0103si r\u0103spunsuri la \u00eentreb\u0103rile care pot ap\u0103rea \u00een timpul integr\u0103rii noului serviciu Apple.<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h3>Apple nu permite redirec\u021bion\u0103ri personalizate<\/h3>\n<p>\nDe fapt, nu v\u0103d un r\u0103spuns la aceast\u0103 \u00eentrebare pe forumurile pentru dezvoltatori. Esen\u021ba este urm\u0103toarea: dac\u0103 dori\u021bi s\u0103 folosi\u021bi SIWA JS API, adic\u0103 s\u0103 nu lucra\u021bi prin SDK-ul nativ din diverse motive (nu macOS\/iOS sau o versiune veche a acestor sisteme), atunci ave\u021bi nevoie de propriul portal public, altfel nu se poate. Pentru c\u0103 trebuie s\u0103 \u00eenregistra\u021bi \u0219i s\u0103 confirma\u021bi pe portalul WWDR c\u0103 sunte\u021bi proprietar al domeniului dvs. \u0219i doar pe acesta pot fi configurate redirec\u021bion\u0103rile permise din perspectiva Apple:<\/p>\n<p><img decoding=\"async\" alt=\"Cum am cucerit noi \u00een Parallels Sign In with Apple\" src=\"\/wp-content\/uploads\/2019\/10\/31060bbdfe0b2cf55505a42cdf8aa6fc.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nCe s\u0103 facem dac\u0103 dorim s\u0103 intercept\u0103m redirec\u021bionarea \u00een aplica\u021bie? Noi am rezolvat aceast\u0103 problem\u0103 extrem de simplu: am creat pe portalul nostru o list\u0103 de redirec\u021bion\u0103ri permise pentru aplica\u021biile noastre, care sunt solicitate \u00eenainte de a ar\u0103ta pagina de autentificare SIWA. \u0218i pur \u0219i simplu facem o redirec\u021bionare de la portal la aplica\u021bie cu datele primite de la Apple. Simplu \u0219i la obiect.<\/p>\n<h3>Probleme cu e-mailul<\/h3>\n<p>\nS\u0103 analiz\u0103m cum am rezolvat problemele legate de e-mailul utilizatorului. \u00cen primul r\u00e2nd, nu exist\u0103 niciun REST API care s\u0103 permit\u0103 ob\u021binerea acestor informa\u021bii din backend - doar clientul prime\u0219te aceste date \u0219i poate s\u0103 le transmit\u0103 \u00eempreun\u0103 cu codul de autorizare. <\/p>\n<p>\u00cen al doilea r\u00e2nd, informa\u021biile despre nume \u0219i e-mailul utilizatorului sunt transmise doar o singur\u0103 dat\u0103, la prima autentificare a utilizatorului \u00een aplica\u021bie prin Apple, unde utilizatorul selecteaz\u0103 op\u021biunile de partajare a datelor sale personale. <\/p>\n<p>Aceste probleme, de sine st\u0103t\u0103toare, nu sunt neap\u0103rat critice, dac\u0103 conexiunea cu profilul social a fost stabilit\u0103 cu succes pe portal \u2014 identificatorul utilizatorului este acela\u0219i \u0219i este legat de Team ID \u2014 adic\u0103, este acela\u0219i pentru toate aplica\u021biile echipei dvs., integrate cu SIWA. \u00cens\u0103, dac\u0103 s-a efectuat logarea prin Apple \u0219i ulterior a ap\u0103rut o eroare, iar conexiunea pe portal nu a fost creat\u0103, atunci singura op\u021biune este s\u0103 trimite\u021bi utilizatorul pe appleid.apple.com, s\u0103 \u00eentrerup\u0103 conexiunea cu aplica\u021bia \u0219i s\u0103 \u00eencerce din nou. Practic, problema se rezolv\u0103 prin redactarea unui articol KB corespunz\u0103tor \u0219i linkarea c\u0103tre acesta.<\/p>\n<p>Urm\u0103toarea problem\u0103 mai nepl\u0103cut\u0103 este c\u0103 Apple a creat un nou concept de proxy e-mail. \u00cen cazul nostru, dac\u0103 utilizatorul a fost deja pe portalul de licen\u021biere cu adev\u0103ratul s\u0103u e-mail \u0219i la prima logare prin Apple alege op\u021biunea de a ascunde e-mailul, se \u00eenregistreaz\u0103 un nou cont cu acest proxy e-mail, care evident nu con\u021bine licen\u021be, ceea ce pune utilizatorul final \u00eentr-o situa\u021bie dificil\u0103. <\/p>\n<p>Solu\u021bia acestei probleme este destul de simpl\u0103: deoarece identificatorul utilizatorului r\u0103m\u00e2ne acela\u0219i \u00een SIWA \u0219i nu depinde de op\u021biunile\/aplica\u021bia selectat\u0103 pentru autentificare, putem pur \u0219i simplu, prin intermediul unui script special, s\u0103 permitem comutarea acestei leg\u0103turi cu Apple c\u0103tre un alt cont cu adev\u0103ratul e-mail al utilizatorului \u0219i astfel s\u0103 \u201erecuper\u0103m achizi\u021biile\u201d. Dup\u0103 aceast\u0103 procedur\u0103, utilizatorul \u00eencepe s\u0103 acceseze, prin SIWA, un alt cont pe portal \u0219i totul func\u021bioneaz\u0103 corect.<\/p>\n<h3>La autentificarea prin portalul web, nu exist\u0103 pictograma aplica\u021biei.<\/h3>\n<p>\nPentru a rezolva o alt\u0103 problem\u0103, am cerut clarific\u0103ri de la reprezentan\u021bii Apple \u0219i \u00eemp\u0103rt\u0103\u0219im cuno\u0219tin\u021bele ob\u021binute:<\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/forums.developer.apple.com\/thread\/123054\">https:\/\/forums.developer.apple.com\/thread\/123054<\/a><\/noindex><br \/>\n<img decoding=\"async\" alt=\"Cum am cucerit noi \u00een Parallels Sign In with Apple\" src=\"\/wp-content\/uploads\/2019\/10\/125b992274c00bba938e06f4c0f2860c.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nDeci, ideea este urm\u0103toarea: la baza grupului SIWA poate fi pus doar o aplica\u021bie macOS\/iOS, \u00een care se adaug\u0103 ID-urile de serviciu necesare ale portalelor. Prin urmare, pentru ca pictograma aplica\u021biei principale s\u0103 fie afi\u0219at\u0103, trebuie s\u0103 existe versiuni publicate \u00een App Store cu media, care s\u0103 fi fost aprobate de Apple. Pictograma va fi preluat\u0103 de acolo. <\/p>\n<p>A\u0219adar, dac\u0103 ave\u021bi doar portalul \u0219i nu exist\u0103 aplica\u021bii \u00een App Store, nu va exista o pictogram\u0103 frumoas\u0103, dar cu numele aplica\u021biei ne putem descurca \u2014 \u00een absen\u021ba media la aplica\u021bia principal\u0103, aceast\u0103 informa\u021bie este preluat\u0103 din Descrierea ID-ului de serviciu:<br \/>\n<img decoding=\"async\" alt=\"Cum am cucerit noi \u00een Parallels Sign In with Apple\" src=\"\/wp-content\/uploads\/2019\/10\/e762820861b0f6611cde7b64ad02e316.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<img decoding=\"async\" alt=\"Cum am cucerit noi \u00een Parallels Sign In with Apple\" src=\"\/wp-content\/uploads\/2019\/10\/aa2f68e7898013c33f7cc3d42b7d3788.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<\/p>\n<h3>Num\u0103rul de elemente din grupul SIWA este limitat la 5.<\/h3>\n<p>\n\u00cen prezent, nu exist\u0103 o solu\u021bie pentru aceast\u0103 problem\u0103, \u00een afar\u0103 de a folosi mai multe grupuri; dac\u0103 v\u0103 lipsesc 6 identificatori: 1 principal \u0219i 5 dependen\u021bi, atunci, c\u00e2nd \u00eencerca\u021bi s\u0103 \u00eenregistra\u021bi urm\u0103torul, ve\u021bi vedea un astfel de mesaj:<\/p>\n<p><img decoding=\"async\" alt=\"Cum am cucerit noi \u00een Parallels Sign In with Apple\" src=\"\/wp-content\/uploads\/2019\/10\/852962ce93d4fafb85827af1128aea38.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nAm creat grupuri pentru portalul nostru de licen\u021be \u0219i pentru fiecare dintre aplica\u021biile care opereaz\u0103 cu acest portal. \u00cen leg\u0103tur\u0103 cu restric\u021bia sloturilor, am deschis deja un radar la Apple \u0219i a\u0219tept\u0103m r\u0103spunsul lor.<\/p>\n<h3>Linkuri utile<\/h3>\n<p>\nCel mai util <noindex><a rel=\"nofollow\" href=\"https:\/\/developer.okta.com\/blog\/2019\/06\/04\/what-the-heck-is-sign-in-with-apple\">link<\/a><\/noindex>, din punctul meu de vedere, pe care m-am bazat \u00een esen\u021b\u0103. Documenta\u021bie semi-util\u0103 de la Apple <noindex><a rel=\"nofollow\" href=\"https:\/\/developer.apple.com\/sign-in-with-apple\/get-started\">aici<\/a><\/noindex>.<\/p>\n<p>Distrac\u021bie pl\u0103cut\u0103! \u00centreb\u0103rile, g\u00e2ndurile, ideile \u0219i propunerile sunt binevenite \u00een comentarii.<br \/>\n<br \/>Sursa: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/parallels\/blog\/469499\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0414\u0443\u043c\u0430\u044e \u0443 \u043c\u043d\u043e\u0433\u0438\u0445 \u0443\u0436\u0435 \u043f\u043e\u0441\u043b\u0435 WWDC 2019 \u043d\u0430 \u0441\u043b\u0443\u0445\u0443 Sign In with Apple (\u043a\u0440\u0430\u0442\u043a\u043e SIWA). \u0412 \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u0435 \u044f \u0440\u0430\u0441\u0441\u043a\u0430\u0436\u0443 \u0441 \u043a\u0430\u043a\u0438\u043c\u0438 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u043e \u043f\u043e\u0434\u0432\u043e\u0434\u043d\u044b\u043c\u0438 \u043a\u0430\u043c\u043d\u044f\u043c\u0438 \u043f\u0440\u0438\u0448\u043b\u043e\u0441\u044c \u0441\u0442\u043e\u043b\u043a\u043d\u0443\u0442\u044c\u0441\u044f \u043f\u0440\u0438 \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u0438 \u044d\u0442\u043e\u0439 \u0448\u0442\u0443\u043a\u0435\u043d\u0446\u0438\u0438 \u0432 \u043d\u0430\u0448 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u043e\u043d\u043d\u044b\u0439 \u043f\u043e\u0440\u0442\u0430\u043b. \u0414\u0430\u043d\u043d\u0430\u044f \u0441\u0442\u0430\u0442\u044c\u044f \u043d\u0435 \u0441\u043e\u0432\u0441\u0435\u043c \u0434\u043b\u044f \u0442\u0435\u0445, \u043a\u0442\u043e \u0442\u043e\u043b\u044c\u043a\u043e \u0440\u0435\u0448\u0438\u043b \u0440\u0430\u0437\u043e\u0431\u0440\u0430\u0442\u044c\u0441\u044f \u0441 SIWA (\u0434\u043b\u044f \u043d\u0438\u0445 \u044f \u0434\u0430\u043b \u0440\u044f\u0434 \u043e\u0437\u043d\u0430\u043a\u043e\u043c\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u0441\u0441\u044b\u043b\u043e\u0447\u0435\u043a \u0432 \u043a\u043e\u043d\u0446\u0435 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":28993,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-38651","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.2.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0414\u0443\u043c\u0430\u044e \u0443 \u043c\u043d\u043e\u0433\u0438\u0445 \u0443\u0436\u0435 \u043f\u043e\u0441\u043b\u0435 WWDC 2019 \u043d\u0430 \u0441\u043b\u0443\u0445\u0443.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/ro\/blog\/news\/kak-my-v-parallels-pokoryali-sign-in-with-apple\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"ro_RO\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u041a\u0430\u043a \u043c\u044b \u0432 Parallels \u043f\u043e\u043a\u043e\u0440\u044f\u043b\u0438 Sign In with Apple | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0414\u0443\u043c\u0430\u044e \u0443 \u043c\u043d\u043e\u0433\u0438\u0445 \u0443\u0436\u0435 \u043f\u043e\u0441\u043b\u0435 WWDC 2019 \u043d\u0430 \u0441\u043b\u0443\u0445\u0443.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/ro\/blog\/news\/kak-my-v-parallels-pokoryali-sign-in-with-apple\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T19:25:04+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T19:25:04+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47 Cum am cucerit noi \u00een Parallels Sign In with Apple | ProHoster","description":"Cred c\u0103 mul\u021bi au auzit deja despre WWDC 2019.","canonical_url":"https:\/\/prohoster.info\/ro\/blog\/news\/kak-my-v-parallels-pokoryali-sign-in-with-apple","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"ro_RO","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u041a\u0430\u043a \u043c\u044b \u0432 Parallels \u043f\u043e\u043a\u043e\u0440\u044f\u043b\u0438 Sign In with Apple | ProHoster","og:description":"\u0414\u0443\u043c\u0430\u044e \u0443 \u043c\u043d\u043e\u0433\u0438\u0445 \u0443\u0436\u0435 \u043f\u043e\u0441\u043b\u0435 WWDC 2019 \u043d\u0430 \u0441\u043b\u0443\u0445\u0443.","og:url":"https:\/\/prohoster.info\/ro\/blog\/news\/kak-my-v-parallels-pokoryali-sign-in-with-apple","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T19:25:04+00:00","article:modified_time":"2019-10-31T19:25:04+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"38651","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-23 22:55:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 01:05:22","updated":"2026-01-23 22:55:19","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts\/38651","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/comments?post=38651"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts\/38651\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/media\/28993"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/media?parent=38651"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/categories?post=38651"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/tags?post=38651"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}