{"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\/pl\/blog\/news\/kak-my-v-parallels-pokoryali-sign-in-with-apple","title":{"rendered":"Jak w Parallels podbili\u015bmy Sign In with Apple","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"Jak w Parallels podbili\u015bmy Sign In with Apple\" src=\"\/wp-content\/uploads\/2019\/10\/3cb54b15c81d639f145c104431c583e5.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nMy\u015bl\u0119, \u017ce wielu ju\u017c po WWDC 2019 zna Sign In with Apple (w skr\u00f3cie SIWA). W tym materiale opisz\u0119, z jakimi konkretnymi problemami musieli\u015bmy si\u0119 zmierzy\u0107, integruj\u0105c t\u0119 funkcjonalno\u015b\u0107 z naszym portale licencyjnym. Ten artyku\u0142 nie jest ca\u0142kowicie dla tych, kt\u00f3rzy dopiero postanowili zapozna\u0107 si\u0119 z SIWA (dla nich na ko\u0144cu tekstu zamie\u015bci\u0142em kilka przydatnych link\u00f3w). W tym materiale, prawdopodobnie, wielu znajdzie odpowiedzi na pytania, kt\u00f3re mog\u0105 si\u0119 pojawi\u0107 podczas integracji nowej us\u0142ugi Apple.<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h3>Apple nie pozwala na niestandardowe przekierowania<\/h3>\n<p>\nW istocie, odpowiedzi na to pytanie wci\u0105\u017c nie widz\u0119 na forach deweloperskich. Chodzi o to, \u017ce je\u015bli b\u0119dziecie chcieli skorzysta\u0107 z SIWA JS API, tj. nie korzysta\u0107 z natywnego SDK z powodu braku takowego z r\u00f3\u017cnych przyczyn (nie macOS\/iOS lub stara wersja tych system\u00f3w), b\u0119dziecie potrzebowa\u0107 w\u0142asnego publicznego portalu, inaczej nie ma mowy. Poniewa\u017c na portalu WWDR nale\u017cy zarejestrowa\u0107 i potwierdzi\u0107, \u017ce jeste\u015bcie w\u0142a\u015bcicielem swojego domeny i tylko na ni\u0105 mo\u017cna przypi\u0105\u0107 akceptowalne z punktu widzenia Apple przekierowania:<\/p>\n<p><img decoding=\"async\" alt=\"Jak w Parallels podbili\u015bmy Sign In with Apple\" src=\"\/wp-content\/uploads\/2019\/10\/31060bbdfe0b2cf55505a42cdf8aa6fc.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nCo zrobi\u0107, je\u015bli chce si\u0119 przechwyci\u0107 przekierowanie w aplikacji? Rozwi\u0105zali\u015bmy ten problem bardzo prosto: stworzili\u015bmy na naszym portalu list\u0119 dozwolonych przekierowa\u0144 dla naszych aplikacji, kt\u00f3re s\u0105 zamawiane przed wy\u015bwietleniem strony autoryzacyjnej SIWA. Po prostu robimy przekierowanie z portalu do aplikacji z danymi uzyskanymi od Apple. Prosto i bez zb\u0119dnych komplikacji.<\/p>\n<h3>Problemy z e-mailami<\/h3>\n<p>\nPrzyjrzyjmy si\u0119, jak rozwi\u0105zali\u015bmy problemy z adresem e-mail u\u017cytkownika. Po pierwsze, nie ma \u017cadnego REST API, kt\u00f3re pozwala\u0142oby na uzyskanie tych informacji z backendu \u2014 tylko klient otrzymuje te dane i mo\u017ce je przes\u0142a\u0107 wraz z kodem autoryzacyjnym. <\/p>\n<p>Po drugie, informacje o imieniu i e-mailu u\u017cytkownika s\u0105 przekazywane tylko raz, podczas pierwszego logowania u\u017cytkownika do aplikacji przez Apple, gdzie u\u017cytkownik wybiera opcje udost\u0119pniania swoich danych osobowych. <\/p>\n<p>Te problemy same w sobie nie s\u0105 krytyczne, je\u015bli po\u0142\u0105czenie z profilem spo\u0142ecznym zosta\u0142o pomy\u015blnie utworzone na portalu \u2014 identyfikator u\u017cytkownika jest ten sam i przypisany do Team ID \u2014 tzn. jest jeden dla wszystkich aplikacji twojego zespo\u0142u zintegrowanych z SIWA. Jednak je\u015bli logowanie zosta\u0142o dokonane przez Apple, a nast\u0119pnie wyst\u0105pi\u0142 b\u0142\u0105d i po\u0142\u0105czenie na portalu nie zosta\u0142o utworzone, to jedyn\u0105 opcj\u0105 jest wys\u0142a\u0107 u\u017cytkownika na appleid.apple.com, zerwa\u0107 po\u0142\u0105czenie z aplikacj\u0105 i spr\u00f3bowa\u0107 ponownie. W\u0142a\u015bciwie problem mo\u017cna rozwi\u0105za\u0107, pisz\u0105c odpowiedni artyku\u0142 KB i linkuj\u0105c do niego.<\/p>\n<p>Nast\u0119pny, bardziej nieprzyjemny problem zwi\u0105zany jest z tym, \u017ce Apple wymy\u015bli\u0142o nowy koncept z proxy e-mail. W naszym przypadku, je\u015bli u\u017cytkownik ju\u017c by\u0142 na portalu licencyjnym ze swoim prawdziwym mailem i przy pierwszym logowaniu przez Apple wybiera opcj\u0119 ukrycia e-maila, rejestruje nowe konto z tym proxy e-mail, w kt\u00f3rym oczywi\u015bcie nie ma \u017cadnych licencji, co stawia u\u017cytkownika w impasie. <\/p>\n<p>Rozwi\u0105zanie tego problemu jest do\u015b\u0107 proste: poniewa\u017c identyfikator u\u017cytkownika jest ten sam w SIWA i nie zale\u017cy od wybranych opcji\/aplikacji, w kt\u00f3rej dokonuje si\u0119 logowania, pozwalamy specjalnym skryptem prze\u0142\u0105czy\u0107 to po\u0142\u0105czenie z Apple do innego konta z prawdziwym mailem u\u017cytkownika, a tym samym \"odzyska\u0107 swoje zakupy\". Po tej procedurze u\u017cytkownik zaczyna poprzez SIWA trafia\u0107 do innego konta na portalu i wszystko dzia\u0142a poprawnie.<\/p>\n<h3>Przy logowaniu przez portal internetowy nie ma ikonki aplikacji<\/h3>\n<p>\nAby rozwi\u0105za\u0107 inny problem, zwr\u00f3cili\u015bmy si\u0119 o wyja\u015bnienia do przedstawicieli Apple i dzielimy si\u0119 zdobytymi informacjami:<\/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=\"Jak w Parallels podbili\u015bmy Sign In with Apple\" src=\"\/wp-content\/uploads\/2019\/10\/125b992274c00bba938e06f4c0f2860c.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nW skr\u00f3cie chodzi o to, \u017ce na czo\u0142o grupy SIWA mo\u017cna umie\u015bci\u0107 tylko aplikacj\u0119 macOS\/iOS, do kt\u00f3rej dodawane s\u0105 potrzebne identyfikatory us\u0142ug portali. W zwi\u0105zku z tym, aby ikonka pojawi\u0142a si\u0119 w g\u0142\u00f3wnej aplikacji, wersje opublikowane w App Store musz\u0105 posiada\u0107 media, kt\u00f3re przesz\u0142y weryfikacj\u0119 w Apple. Ikonka zostanie stamt\u0105d pobrana. <\/p>\n<p>Odpowiednio, je\u015bli masz tylko portal i brak aplikacji z App Store, to \u0142adnej ikonki nie b\u0119dzie, ale mo\u017cna si\u0119 jako\u015b uratowa\u0107 ze nazw\u0105 aplikacji \u2014 przy braku medi\u00f3w w g\u0142\u00f3wnym aplikacji, te informacje pobierane s\u0105 z opisu identyfikatora us\u0142ugi:<br \/>\n<img decoding=\"async\" alt=\"Jak w Parallels podbili\u015bmy Sign In with Apple\" src=\"\/wp-content\/uploads\/2019\/10\/e762820861b0f6611cde7b64ad02e316.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<img decoding=\"async\" alt=\"Jak w Parallels podbili\u015bmy Sign In with Apple\" src=\"\/wp-content\/uploads\/2019\/10\/aa2f68e7898013c33f7cc3d42b7d3788.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<\/p>\n<h3>Liczba element\u00f3w w grupie SIWA jest ograniczona do 5<\/h3>\n<p>\nNa chwil\u0119 obecn\u0105 nie ma rozwi\u0105zania tego problemu, poza u\u017cywaniem wielu grup. Je\u015bli brakuje ci 6 identyfikator\u00f3w: 1 g\u0142\u00f3wnej aplikacji i 5 zale\u017cnych, podczas pr\u00f3by rejestracji nast\u0119pnego zobaczysz nast\u0119puj\u0105cy komunikat:<\/p>\n<p><img decoding=\"async\" alt=\"Jak w Parallels podbili\u015bmy Sign In with Apple\" src=\"\/wp-content\/uploads\/2019\/10\/852962ce93d4fafb85827af1128aea38.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nUtworzyli\u015bmy grupy dla naszego portalu licencyjnego oraz dla ka\u017cdej aplikacji, kt\u00f3ra korzysta z tego portalu. W sprawie ograniczenia slot\u00f3w z\u0142o\u017cyli\u015bmy raport do Apple i czekamy na ich odpowied\u017a.<\/p>\n<h3>Przydatne linki<\/h3>\n<p>\nNajbardziej przydatny <noindex><a rel=\"nofollow\" href=\"https:\/\/developer.okta.com\/blog\/2019\/06\/04\/what-the-heck-is-sign-in-with-apple\">link<\/a><\/noindex>, moim zdaniem, wed\u0142ug kt\u00f3rego wszystko realizowa\u0142em. P\u00f3\u0142przydatna dokumentacja od Apple <noindex><a rel=\"nofollow\" href=\"https:\/\/developer.apple.com\/sign-in-with-apple\/get-started\">tutaj<\/a><\/noindex>.<\/p>\n<p>Mi\u0142ej zabawy! Pytania, my\u015bli, pomys\u0142y i sugestie s\u0105 mile widziane w komentarzach.<br \/>\n<br \/>\u0179r\u00f3d\u0142o: <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.1.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\/pl\/blog\/news\/kak-my-v-parallels-pokoryali-sign-in-with-apple\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.1.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"pl_PL\" \/>\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\/pl\/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\udd47Jak w Parallels zdobywali\u015bmy Sign In with Apple | ProHoster","description":"My\u015bl\u0119, \u017ce wielu ju\u017c po WWDC 2019 ma to na ustach.","canonical_url":"https:\/\/prohoster.info\/pl\/blog\/news\/kak-my-v-parallels-pokoryali-sign-in-with-apple","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"pl_PL","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\/pl\/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\/pl\/wp-json\/wp\/v2\/posts\/38651","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/comments?post=38651"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/posts\/38651\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/media\/28993"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/media?parent=38651"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/categories?post=38651"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/tags?post=38651"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}