Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Appleにおけるプライバシーの全容を把握する
Search
akatsuki174
September 01, 2023
Technology
0
6k
Appleにおけるプライバシーの全容を把握する
2023/09/01(金) iOSDC Japan 2023 day0
akatsuki174
September 01, 2023
Tweet
Share
More Decks by akatsuki174
See All by akatsuki174
逆向きUIの世界 〜iOSアプリのRTL言語対応〜
akatsuki174
1
510
逆向きUIの世界〜AndroidアプリのRTL言語対応〜
akatsuki174
1
800
私が変えてきたこと、変えなかったこと
akatsuki174
2
980
最近読んでいる本-読書シェア会vol.1
akatsuki174
2
250
SwiftUI、UIKitでキャプチャを撮ろう!
akatsuki174
1
130
近年のAppleにおける位置情報とプライバシー
akatsuki174
3
500
オフライン勉強会ぼっち対策
akatsuki174
1
690
Xcode 15の新機能
akatsuki174
0
2.9k
AndroidにもSelect Photosがやってきた
akatsuki174
0
1.4k
Other Decks in Technology
See All in Technology
生成AIと余白 〜開発スピードが向上した今、何に向き合う?〜
kakehashi
PRO
0
160
ブロックテーマ、WordPress でウェブサイトをつくるということ / 2026.02.07 Gifu WordPress Meetup
torounit
0
200
GitHub Copilot CLI を使いやすくしよう
tsubakimoto_s
0
110
22nd ACRi Webinar - NTT Kawahara-san's slide
nao_sumikawa
0
110
【Ubie】AIを活用した広告アセット「爆速」生成事例 | AI_Ops_Community_Vol.2
yoshiki_0316
1
120
OpenShiftでllm-dを動かそう!
jpishikawa
0
140
ClickHouseはどのように大規模データを活用したAIエージェントを全社展開しているのか
mikimatsumoto
0
270
コンテナセキュリティの最新事情 ~ 2026年版 ~
kyohmizu
6
2.3k
OWASP Top 10:2025 リリースと 少しの日本語化にまつわる裏話
okdt
PRO
3
850
コミュニティが変えるキャリアの地平線:コロナ禍新卒入社のエンジニアがAWSコミュニティで見つけた成長の羅針盤
kentosuzuki
0
130
20260208_第66回 コンピュータビジョン勉強会
keiichiito1978
0
200
制約が導く迷わない設計 〜 信頼性と運用性を両立するマイナンバー管理システムの実践 〜
bwkw
3
1.1k
Featured
See All Featured
Music & Morning Musume
bryan
47
7.1k
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.1k
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
1
750
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
200
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
120
For a Future-Friendly Web
brad_frost
182
10k
The World Runs on Bad Software
bkeepers
PRO
72
12k
We Are The Robots
honzajavorek
0
170
Evolving SEO for Evolving Search Engines
ryanjones
0
130
Game over? The fight for quality and originality in the time of robots
wayneb77
1
120
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
53
Side Projects
sachag
455
43k
Transcript
Appleʹ͓͚Δ ϓϥΠόγʔͷ શ༰ΛѲ͢Δ iOSDC Japan 2023 day0 @akatsuki174
ࣗݾհ
• ˏakatsuki174 • גࣜձࣾΏΊΈॴଐ • Android/iOS/FlutterΤϯδχΞ • 1ࣇͷ • 9݄Լ०ʹୈೋࢠग़࢈༧ఆͷɹɹ
ͨΊɺࣄલऩʹͯࢀՃ
ࠓͷ
None
͓ॻ͖ • ϓϥΠόγʔશମͷ • ϓϥΠόγʔํɺతจࣈྻɺ৹ࠪΨΠυϥΠϯɺɹ Human Interface Guidelines etc… •
ݸʑͷݖݶͷ • ҐஔใɺτϥοΩϯάɺࣸਅ/ಈըɺ࿈བྷઌ etc…
None
• ൣғΛiOSͷຊମʹߜͬͯ·͢ • watchOSͳͲͷଞͷϓϥοτϑΥʔϜɺApp Clips, Widgetɹ ͳͲର֎Ͱ͢ • ࣌ؒͷ্ؔ…͢·Μ… •
۩ମతͳ࣮ํ๏ΘΓͱ͞Βͬͱྲྀ͠·͢ ҙॻ͖
Apple͕ߟ͑Δ ϓϥΠόγʔͱ
• ϓϥΠόγʔجຊతͳਓݖ • Ϣʔβ͔Βͷ৴པΛҡ࣋͢Δ্Ͱॏཁ ϓϥΠόγʔʹର͢Δߟ͑ IUUQTXXXBQQMFDPNKQQSJWBDZ
• ຖϓϥΠόγʔɺηΩϡϦςΟʹؔ͢Δಈը͕ग़͍ͯΔ • WWDC23 5ຊ • WWDC22 13ຊ • WWDC21
18ຊ • WWDC20 14ຊ etc… ϓϥΠόγʔͱWWDC IUUQTEFWFMPQFSBQQMFDPNWJEFPTQSJWBDZTFDVSJUZ
• σʔλͷ࠷খԽ • ΦϯσόΠεॲཧ • ಁ໌ੑͱཧ • ػີอ࣋ ϓϥΠόγʔอޢ4ݪଇ
• ඞཁͳ࣌ʹɺඞཁͳ͚ͩσʔλΛऔಘ͢Δ • ྫɿ • ҐஔใΛʮҰ͚ͩڐՄʯ • ҐஔใͷػೳΛར༻͢Δ·ͰɺϢʔβʹڐΛٻΊͳ͍ σʔλͷ࠷খԽ
• ػີσʔλΛͰ͖Δ͚ͩϩʔΧϧͰॲཧ͢Δ • ΦϑϥΠϯͰ͑Δɺ௨৴͕ͳ͍ߴͳͲͷϝϦοτ͋Δ • ྫɿ • SiriͷԻೝࣝϞσϧ • Create
MLʹΑΔػցֶश ΦϯσόΠεॲཧ
• σʔλͷ༻ํ๏ڞ༗ઌΛ໌֬ʹ͢Δ • ࣗͷҙࢥͰσʔλΛཧ͢Δ • ྫɿ • Sign in with
Apple • AppϓϥΠόγʔϨϙʔτʢޙड़ʣ • ϓϥΠόγʔϥϕϧʢޙड़ʣ ಁ໌ੑͱཧ
• ҆શʹอɺཧ͢Δ • ྫɿ • ੜମೝূ ػີอ࣋ʢηΩϡϦςΟʣ
• ࣍ͷΑ͏ͳใʹΞΫηε͍ͨ͠ͱ͖ɺγεςϜΞϥʔτΛɹ ग़ͯ͠ڐՄΛಘΔඞཁ͕͋Δ • ҐஔใɺϔϧεέΞɺͦͷଞݸਓΛಛఆͰ͖Δใ • ΧϝϥϚΠΫͳͲͷσόΠεͷػೳ • BluetoothσόΠεͳͲͷอޢ͞ΕͨϦιʔε •
σόΠεͷࠂࣝผࢠ ඞཁͳͱ͖ʹڐՄΛಘΔ
ৄ͘͠…
ৄ͘͠…
purpose strings ʢతจࣈྻʣͷॻ͖ํ
• ڐՄͷϦΫΤετΛ͢ΔγεςϜΞϥʔτʹදࣔ͞ΕΔจࣈྻ • Info.plistͰઃఆ͢Δ తจࣈྻͱ
• σʔλͷ༻్͕۩ମతʹઆ໌͞Ε͍ͯΔ͔ • σʔλͷ༻ํ๏ͷྫ͕ࣔ͞Ε͍ͯΔ͔ తจࣈྻͷApp Store৹ࠪ؍
App Tracking TransparencyΞϥʔτྫ ༻్❌ ༻ํ๏❌ τϥοΩϯάΛڐՄ͠ ͳ͍߹ͷ͜ͱʹ͍ͭ ͯݴٴ͍ͯ͠Δ👌 IUUQTEFWFMPQFSBQQMFDPNWJEFPTQMBZUFDIUBMLT ༻్⭕
༻ํ๏⭕
ΧϝϥΞϥʔτྫ IUUQTEFWFMPQFSBQQMFDPNWJEFPTQMBZUFDIUBMLT ͗͢Δ ؆ܿ👌
ৄ͘͠…
Ґஔใ
ϦΫΤετྫ ༻தͷΈڐՄ ৗʹڐՄ
γεςϜΞϥʔτྫ IUUQTEFWFMPQFSBQQMFDPNWJEFPTQMBZXXED ༻தͷΈڐՄ ৗʹڐՄ
• ͬ͘͟Γݴ͏ͱҎԼͷύλʔϯ͕ଘࡏ͢Δ • ະઃఆ • ʮৗʹڐՄʯ • ʮҰ࣌తʹڐՄʯ • ʮ༻தͷΈڐՄʯ
• ʮڐՄ͠ͳ͍ʯ ڐՄঢ়ଶ
ڐՄεςʔλεભҠਤ IUUQTEFWFMPQFSBQQMFDPNWJEFPTQMBZXXED
• ࠷খݶͷҐஔใఏڙͰࡁΉΑ͏ɺʮਖ਼֬ͳҐஔใʯΛΦϑʹ ͢Δػೳ • ΞϓϦଆͰΦϓτΞτ͢Δ͜ͱͰ͖ͳ͍ • iOS 14͔Βొ ਖ਼֬ͳҐஔใ
γεςϜΞϥʔτྫ
• UIKitCLLocationButtonɺSwiftUILocationButton • ʮඞཁͳͱ͖ʹҰ͚ͩҐஔใͷΞΫηεཁٻΛ͢Δʯ͕؆୯ ʹ࣮ݱͰ͖Δ • ͜ͷϘλϯࣗମʹҐஔใऔಘػೳͳ͍ • iOS 15Ҏ্Ͱ༻Մೳ
LocationButton
None
γεςϜΞϥʔτྫ
ৄ͘͠…
App Tracking Transparency
IUUQTEFWFMPQFSBQQMFDPNKQBQQTUPSFVTFSQSJWBDZBOEEBUBVTF γεςϜΞϥʔτྫ
• ࣍ͷ͜ͱΛ͢Δ࣌ϢʔβͷڐՄΛٻΊɺ AppTrackingTransparencyϑϨʔϜϫʔΫΛ༻͠ͳ͚ΕͳΒ ͳ͍ • IDFAʹΞΫηε͢Δ • ϢʔβΛτϥοΩϯά͢Δ • iOS
14.5Ҏ߱ରԠඞਢ App Tracking TransparencyʢATTʣͱ
• Identi fi er for Advertisersʢࠂࣝผࢠʣ • ݸʑͷσόΠεʹׂΓͯΒΕΔҰҙͷࣝผࢠ • ࠂओɺࠂωοτϫʔΫIDFAΛͬͯใΛऩू͠ɺࠂ
λʔήςΟϯάͳͲʹ׆༻͢Δ • iOS 14.5͔ΒσϑΥϧτͰऔΕͳ͘ͳͬͨ IDFAͱ
• ΞϓϦͰऩूͨ͠ಛఆͷΤϯυϢʔβ·ͨσόΠεʹؔ͢Δ σʔλΛ • αʔυύʔςΟͷσʔλͱඥ͚Δߦҝ • σʔλϒϩʔΧʔʹ͢ߦҝ τϥοΩϯάͱ
ϦΫΤετྫ
؆ܿʹ·ͱ·ͬͯΔࢿྉ IUUQTTQFBLFSEFDLDPNLPPPPPUBLFNJOJEGBBUUTLBEOFUXPSL
IUUQT[FOOEFWTFSJNBBSUJDMFTCEEBB
ࣸਅ/ಈը
γεςϜΞϥʔτྫ IUUQTEFWFMPQFSBQQMFDPNWJEFPTQMBZXXED ࣸਅΛબʜ
• iOS 14͔ΒPHAuthorizationStatusʹ.limited͕૿͑ͨ • Ϣʔβ͕બͨࣸ͠ਅ͔͠ΞϓϦ͔ΒΞΫηεͰ͖ͳ͍ঢ়ଶΛ࡞ Δ͜ͱ͕Ͱ͖Δ ʮࣸਅΛબ…ʯ
ϦΫΤετྫ ಡΈॻ͖ ॻ͖ࠐΈͷΈ ॻ͖ࠐΈͷΈ ಡΈॻ͖
• ࣸਅಈըϐοΧʔΛදࣔͰ͖Δ • Photo LibraryʹΞΫηε͠ͳ͍ͷͰɺγεςϜΞϥʔτΛɹ ग़͢ඞཁ͕ͳ͍ • ࣸਅಈըΛѻ͏ͳΒ͜ͷํ๏͕ਪ͞ΕΔ • iOS
14͔Β͑Δ PHPickerViewController
IUUQTEFWFMPQFSBQQMFDPNWJEFPTQMBZXXED
• PHPickerViewControllerSwiftUI͔Β͑ͳ͔ͬͨ • iOS 16͔ΒPhotosPickerΛSwiftUI͔Β͑Δ • ͪΖΜγεςϜΞϥʔτඞཁͳ͠ PhotosPicker
PhotosPicker༻ྫ
ৄ͘͠…
࿈བྷઌ
γεςϜΞϥʔτྫ
ϦΫΤετྫ
• ࿈བྷઌͷϐοΧʔΛදࣔͰ͖Δ • ϢʔβͷڐՄΛಘΔඞཁͳ͍ CNContactPickerViewController
None
CNContactPickerViewController༻ྫ
AppϓϥΠόγʔϨϙʔτ
• ΞϓϦ͕ͲΜͳσʔλʹΞΫηε͍ͯ͠Δ͔͕Θ͔ΔϨϙʔτ • ઃఆΞϓϦ͔Β֬ೝͰ͖Δ • σϑΥϧτͰOFF • JSONϑΝΠϧͱͯ͠ΤΫεϙʔτͰ͖Δ • iOS
15Ҏ߱ʹࡌ AppϓϥΠόγʔϨϙʔτͱ
None
None
Privacy Nutrition Labels ʢϓϥΠόγʔϥϕϧʣ
• Ϣʔβ͕ΞϓϦΛμϯϩʔυ͢ΔલʹΞϓϦͷϓϥΠόγʔɹ ํΛΔͨΊͷͷ • αʔυύʔςΟSDKͷ༰өͤ͞Δඞཁ͕͋Δ • App StoreͰݟΔ͜ͱ͕Ͱ͖Δ • WWDC20Ͱൃද͞Εͨ
• 2021ͷय़͔ΒରԠඞਢ ϓϥΠόγʔϥϕϧͱ
ϓϥΠόγʔϥϕϧྫ IUUQTXXXBQQMFDPNKQQSJWBDZMBCFMT
ϓϥΠόγʔϥϕϧྫ IUUQTXXXBQQMFDPNKQQSJWBDZMBCFMT
ৄ͘͠…
࣮ࡍͷରԠͪ͜Β IUUQTTQFBLFSEFDLDPNGSPNBUPNJPTEDKBQBO
Privacy Manifests
• αʔυύʔςΟSDK͕ͲΜͳϓϥΠόγʔใΛऩू͍ͯ͠Δͷ ͔ΛΞϓϦ։ൃऀ͕Δͷେม ϓϥΠόγʔϥϕϧରԠେม
• WWDC23Ͱൃද͞Εͨ • SDK͕ऩू͢ΔσʔλλΠϓɺͲͷΑ͏ʹ༻͞ΕΔ͔ͳͲ͕ એݴ͞Ε͍ͯΔ • αʔυύʔςΟSDK։ൃऀPrivacyInfo.xcprivacyͱ͍͏໊લͷ ϑΝΠϧΛ࡞͢Δ Privacy Manifests͕ొ
• ϓϩδΣΫτͷશͯͷPrivacy ManifestsΛूͨ͠Ϩϙʔτ • Xcode 15ͰɺApp Store͚ϏϧυΛ͢Δ࣌ʹग़ྗͰ͖Δ • ͜ΕΛݩʹϓϥΠόγʔϥϕϧΛهड़͢Δͱྑ͍ Privacy
report
Privacy report IUUQTEFWFMPQFSBQQMFDPNWJEFPTQMBZXXED
• ར༻͢Δͷʹʮཧ༝͕ඞཁͳAPIʯ • ༻͢Δ߹ɺͦͷཧ༝ΛPrivacy Manifests্Ͱ1ͭҎ্બ ͢Δඞཁ͕͋Δ Required Reason API
• 2023ळҎ߱ɺબ͍ͯ͠ͳ͚Ε։ൃऀʹ௨͕ߦ͘ • 2024य़Ҏ߱ɺ৽ن/طଘ྆ํͷΞϓϦʹબ͕͚ٛΒΕΔ Required Reason
• File timestamp APIs • System boot time APIs •
Disk space APIs • Active keyboard APIs • User defaults APIs Required Reason APIϦετ IUUQTEFWFMPQFSBQQMFDPNEPDVNFOUBUJPOCVOEMFSFTPVSDFT QSJWBDZ@NBOJGFTU@ fi MFTEFTDSJCJOH@VTF@PG@SFRVJSFE@SFBTPO@BQJ
ৄ͘͠…ʁ IUUQTGPSUFFKQJPTEDKBQBOQSPQPTBMECCFCCEFBECD
ৄ͘͠…
ϓϥΠόγʔΫΠζ
• ৹ࠪΨΠυϥΠϯɺHuman Interface GuidelinesΛݩʹΫΠζΛ ࡞ • ࣍ͷ֤ઃਖ਼͍͠Ͱ͠ΐ͏͔ʁ ϓϥΠόγʔͷཧղΛਂΊΑ͏
τϥοΩϯάͷڐՄΛಘΔͨΊʹγεςϜΞϥʔτΛग़͢߹ɺɹ τϥοΩϯάΛڐՄͯ͠΄͍͠ཧ༝Λઆ໌͢Δը໘ΛલʹڬΜͰ ྑ͍ ⭕ or ❌ Q1.
લʹը໘ΛڬΜͰOKɻ Human Interface GuidelinesͰʮϓϨΞϥʔτɹ ը໘ɺΠϯυɺϏϡʔʯʹͯɺͦͷද͕ࣔຬͨ ͖͢ཁ݅Λ͍ࣔͯ͠Δɻ ͨͩ͠ɺʮΩϟϯηϧʯͳͲͷճආϘλϯΛදࣔɹ ͢ΔͷNGɻ A1. ⭕
IUUQTEFWFMPQFSBQQMFDPNKQEFTJHOIVNBOJOUFSGBDFHVJEFMJOFTQSJWBDZ1SF BMFSUTDSFFOTXJOEPXTPSWJFXT
࣍ͷέʔετϥοΩϯάʹ֘͢Δ ⭕ or ❌ ʮࣗͷΞϓϦͰऩूͨ͠ใͱαʔυύʔςΟͷσʔλͷඥ ͚͕ϢʔβͷσόΠε্ͰͷΈߦΘΕɺϢʔβσόΠεΛಛఆͰ ͖ΔΑ͏ͳํ๏ͰσόΠεͷ֎෦ʹૹ৴͞ΕΔ͜ͱ͕ͳ͍ʯ Q2.
σόΠεͷ֎෦ʹૹ৴͞Εͯͳ͍ͷͰτϥοΩϯάʹ֘͠ͳ͍ɻ AppTrackingTransparencyϑϨʔϜϫʔΫΛͬͯϢʔβ͔ΒڐՄ ΛಘΔඞཁͳ͍ɻ A2. ❌ IUUQTEFWFMPQFSBQQMFDPNKQBQQTUPSFVTFSQSJWBDZBOEEBUBVTF
LocationButtonΛλοϓͯ͠Ґஔใͷ༻ΛڐՄ͠·ͨ͠ɻ ͜ͷ߹ɺ࣍ճىಈ࣌ʹλοϓͯ͠࠶γεςϜΞϥʔτ͕ɹ ग़ͯ͘Δ͜ͱͳ͍ ⭕ or ❌ Q3.
࠶γεςϜΞϥʔτ͕ग़ͯ͘Δ͜ͱͳ͍ɻ Ϣʔβ͕ΞϓϦΛΩϧ͢ΔͱڐՄແޮʹͳΔ͕ɺ࣍ʹ LocationButtonΛλοϓͨ͠ͱ͖ʹ·ͨڐՄ͕༗ޮʹͳΔɻ A3. ⭕ IUUQTEFWFMPQFSBQQMFDPNKQEFTJHOIVNBOJOUFSGBDFHVJEFMJOFT QSJWBDZ-PDBUJPOCVUUPO
ݱࡏ͕Θ͔Βͳ͍ͱҙຯ͕ͳ͍ΞϓϦͳͷͰɺҐஔใͷڐ ͕ಘΒΕͳ͔ͬͨΒͦͷػೳ͑ͳ͍Α͏ʹͨ͠ ⭕ or ❌ Q4.
ڐՄ͕ಘΒΕͳͯ͘ػೳΛར༻Ͱ͖ΔΑ͏ͳସखஈΛߟ͑Δ ͖ɻ ྫ͑༣ศ൪߸ΛखಈͰೖྗ͓͓ͤͯ͞ΑͦͷҐஔΛѲ͢Δɹ ͜ͱͰସͰ͖ͳ͍͔ͳͲΛݕ౼͢Δɻ A4. ❌ IUUQTEFWFMPQFSBQQMFDPNKQBQQTUPSFSFWJFXHVJEFMJOFTQSJWBDZ
ECαʔϏεͷΞϓϦΛ։ൃ͍ͯ͠·͢ɻੜΫʔϙϯΛɹ ͍ͨ͠ͷͰɺϢʔβͷੜཝΛඞਢ߲ʹͨ͠ɻ⭕ or ❌ Q5.
ੜཝΛඞਢʹ͢Δ͖Ͱͳ͍ɻ ECΞϓϦͷओཁػೳγϣοϐϯάͰ͋Γɺੜ͕Θ͔Βͳ͘ ͯར༻Ͱ͖ΔͣɻΑͬͯɺҙ߲ʹ͢Δͷ͕ྑ͍ɻ A5. ❌ IUUQTEFWFMPQFSBQQMFDPNWJEFPTQMBZUFDIUBMLT
͍͍తจࣈྻ͕ࢥ͍ු͔ͳ͔ͬͨͷͰɺతจࣈྻΛઃఆɹ ͤͣʹ৹ࠪఏग़ͨ͠ɻ⭕ or ❌ Q6.
తจࣈྻඞͣઃఆ͢Δɻ ઃఆͤͣʹ৹ࠪఏग़ͯ͠ɺϦδΣΫτ͞Εͯ͠·ͬͨྫ͋Δɻɹ ͦͦઃఆ͠ͳ͍ͱΫϥογϡͯ͠͠·͏߹͋Δɻ A6. ❌
·ͱΊ
• ϓϥΠόγʔΛૄ͔ʹ͠ͳ͍Α͏ʹ͠Α͏ • ϓϥΠόγʔ4ݪଇΛक͍ͬͯΔ͔ࣗ͠Α͏ • దͳతจࣈྻΛઃఆ͠Α͏ ΞϓϦΛ࡞Δͱ͖
એ
• डΛ௨ա͙ͯ͢͠ͷॴʹ͋Γ·͢ • ΫΠζ/Ξϯέʔτʹճ͢ΔͱΠΠίτ͕͋ΔͷͰͥͻૣΊʹ ΏΊΈεϙϯαʔϒʔεʹ͓ӽ͍ͩ͘͠͞ • ΤϯδχΞืूͯ͠ΔͷͰڵຯ͋ΔํͥͻͲ͏ͧ ΏΊΈεϙϯαʔϒʔεΛग़ͯ͠·͢
͓ΘΓ