$30 off During Our Annual Pro Sale. View Details »

基礎から理解する!来年春までに対応すべきプライバシーの変更点 / Understanding the Fundamentals Privacy Changes to Address by Next Spring

kamimi
September 02, 2023

基礎から理解する!来年春までに対応すべきプライバシーの変更点 / Understanding the Fundamentals Privacy Changes to Address by Next Spring

iOSDC 2023 で発表したトークです。
https://fortee.jp/iosdc-japan-2023/proposal/d88b8692-7b99-4e2b-bdea-55d94b2c9952

WWDC23 に関するプライバシーについてまとめた記事はこちらです。あわせてご参照ください。
https://zenn.dev/kamimi01/articles/f8acb9cf2a8461

kamimi

September 02, 2023
Tweet

More Decks by kamimi

Other Decks in Programming

Transcript

  1. kamimiʛ͔ΈΈ @גࣜձࣾϠϓϦ
    དྷ೥य़·ͰʹରԠ͢΂͖

    ϓϥΠόγʔͷมߋ఺
    جૅ͔Βཧղ͢Δʂ
    iOSDC 2023
    τϥοΫD

    View Slide

  2. • גࣜձࣾϠϓϦ / iOS ΤϯδχΞ
    • OS όʔδϣϯΞοϓରԠɺϏϧυࣗಈԽͷվળ 👩💻

    • “ॻ͘” ͜ͱ͕εΩʢιʔείʔυ΋ࣗવจ΋ʣ📝

    • Swift OpenAPI Generator ʹ͍ͭͯύϯϑݪߘॻ͖·ͨ͠ʂ
    ˏ kamimiʛ͔ΈΈ
    ΈͯͶ👇

    View Slide

  3. ͳͥࠓ͜ͷτʔΫʁ👀

    View Slide

  4. WWDC 23 ͷൃද
    ࢀߟɿʰGet started with privacy manifestsʱʢApple Developerʣ

    View Slide

  5. WWDC 23 ͷൃද
    Privacy manifests ొ৔

    View Slide

  6. ΀Β͍͹͠ʔ·ʹ;͐͢ͱʁ🤔

    View Slide

  7. WWDC 23 ͷൃද
    Nutrition Labelʁ

    View Slide

  8. WWDC 23 ͷൃද
    Trackingʁ

    View Slide

  9. WWDC 23 ͷൃද
    ࠓ·ͰͷϓϥΠόγʔͷ஌͕ࣝ

    ͔ΒΜͰ͖ͦ͏ʢ͖·͢ʣ

    View Slide

  10. ΋͏Ұ౓ϓϥΠόγʔʹ͍ͭͯ
    ͔ɾͳɾΓ
    جૅ͔Β;Γ͔͑ͬͯΈΔ🔄

    View Slide

  11. ໨࣍
    1. ʲ෮शฤʳࠓ·Ͱͷ iOS ΞϓϦ։ൃʹ͓͚ΔϓϥΠόγʔͷ֓ཁͱରԠ

    1. ̐ͭͷப

    2. Transparency and control

    3. ϠϓϦͰͷࣄྫ

    2. ʲ༧शฤʳ͜Ε͔Βͷ iOS ΞϓϦ։ൃʹ͓͚ΔϓϥΠόγʔͷ֓ཁͱରԠ

    1. Privacy manifests

    2. ίʔυॺ໊

    3. ϠϓϦͰͷࣄྫ

    3. ·ͱΊ

    View Slide

  12. ͜ͷτʔΫͰ࿩͢͜ͱ🙆
    ✅ Apple ͕աڈʹൃද͖ͯͨ͠ iOS ΞϓϦ։ൃʹ͓͚ΔϓϥΠόγʔରԠ
    ✅ ϠϓϦʹ͓͚ΔରԠࣄྫ
    ✅ WWDC 23 Ҏ߱ʹൃද͞Εͨ৽͍͠ϓϥΠόγʔରԠ

    View Slide

  13. ͜ͷτʔΫͰ࿩͞ͳ͍͜ͱ🙇
    🚫 ϓϥΠόγʔରԠʹؔ͢ΔιʔείʔυΛަ࣮͑ͨ૷ํ๏
    🚫 WWDC 23 Ҏ߱ʹൃද͞ΕͨϓϥΠόγʔରԠʹؔ͢ΔϕετϓϥΫςΟε
    → ·ͩ໎͍ͬͯΔ͜ͱ΋ଟ͍Ͱ͢ɻ

    Ask the speaker ΍ ࠙਌ձ ͳͲͰ࿩͠·͠ΐ͏ʂ☺

    View Slide

  14. ࠓ·Ͱͷ iOS ΞϓϦ։ൃʹ͓͚Δ
    ϓϥΠόγʔͷ֓ཁͱରԠ
    ʲ෮शฤʳ

    View Slide

  15. ϓϥΠόγʔʹؔ͢Δ̐ͭͷபʢpillarsʣ
    1. On-device processing
    • σʔλΛαʔόʔʹૹ৴ͤͣɺϩʔΧϧͰॲཧ͢Δ

    2. Data minimization
    • ඞཁͳσʔλ͚ͩΛཁٻͯ͠࢖༻͢Δ

    3. Security protections
    • ϓϥΠόγʔอޢΛ͓͜ͳ͏

    4. Transparency and control
    • Ϣʔβʔ͕σʔλΛཧղ͠ɺ؅ཧͰ͖ΔΑ͏ʹ͢Δ

    View Slide

  16. ϓϥΠόγʔʹؔ͢Δ̐ͭͷபʢpillarsʣ
    1. On-device processing

    • σʔλΛαʔόʔʹૹ৴ͤͣɺϩʔΧϧͰॲཧ͢Δ

    2. Data minimization

    • ඞཁͳσʔλ͚ͩΛཁٻͯ͠࢖༻͢Δ

    3. Security protections

    • ϓϥΠόγʔอޢΛ͓͜ͳ͏

    4. Transparency and control
    • Ϣʔβʔ͕σʔλΛཧղ͠ɺ؅ཧͰ͖ΔΑ͏ʹ͢Δ

    View Slide

  17. Transparency and control
    • ΞϓϦͷಁ໌ੑ

    • App Privacy ΍ iOS 14.5 Ҏ߱ͷ App Tracking TransparencyʢҎԼ ATTʣ

    ͳͲ

    • WebͰͷಁ໌ੑ

    • Safari Ͱ͓͜ͳΘΕ͍ͯΔ Intelligent Tracking PreventionʢITPʣͳͲ

    View Slide

  18. Transparency and control
    • ΞϓϦͷಁ໌ੑ

    • App Privacy ΍ iOS 14.5 Ҏ߱ͷ App Tracking TransparencyʢҎԼ ATTʣ

    ͳͲ

    • WebͰͷಁ໌ੑ

    • Safari Ͱ͓͜ͳΘΕ͍ͯΔ Intelligent Tracking Prevention ͳͲ

    View Slide

  19. ΞϓϦʹ͓͚Δ Transparency and control
    • App Privacy ରԠ

    • ATT ରԠ

    View Slide

  20. App Privacy
    • ऩू͢Δσʔλͷछྨ

    • ࢖༻໨త

    • ಛఆͷݸਓ΍σόΠεͱඥ͔ͮ͘

    • ϢʔβʔΛτϥοΩϯά͢Δ͔

    View Slide

  21. ऩू͢Δσʔλͷछྨ
    • ΞϓϦ͔ΒͲͷΑ͏ͳσʔλ͕

    ऩू͞ΕΔ͔

    • ໿14छྨͷσʔλ

    • ࿈བྷઌ৘ใ

    • ݈߁΍ϑΟοτωε

    • ͳͲ

    View Slide

  22. ࢖༻͢Δ໨త
    • ͲͷΑ͏ͳ໨తͰ࢖༻͢Δ͔

    • αʔυύʔςΟ޿ࠂ

    • ։ൃऀͷ޿ࠂ·ͨ͸ϚʔέςΟϯά

    • ෼ੳ

    • ੡඼ͷύʔιφϥΠζ

    • ΞϓϦͷػೳ

    • ͦͷଞͷ໨త

    View Slide

  23. ಛఆͷݸਓ΍σόΠεͱඥ͔ͮ͘
    • ऩू͞ΕΔσʔλ͕Ϣʔβʔͷ

    ΞΠσϯςΟςΟͱඥ͍͍ͮͯΔ͔

    View Slide

  24. ϢʔβʔΛτϥοΩϯά͢Δ͔
    • ऩू͢Δσʔλ͕ϢʔβʔΛ

    τϥοΩϯά͢Δ͔

    View Slide

  25. App Tracking Transparency
    • ΞϓϦͰ Apple ͕ఆΊΔ "τϥοΩϯά" Λ

    ߦ͏৔߹ɺϢʔβʔ͔ΒڐՄΛ΋Β͏ඞཁ͕͋Δ

    View Slide

  26. App Tracking Transparency ͷτϥοΩϯά
    • τϥοΩϯάͱ͸
    ࢀߟɿʰUser privacy and data useʱʢApple Developerʣ
    τϥοΩϯάͱ͸ɺࣗ෼ͷΞϓϦͰऩूͨ͠Ϣʔβʔ΍

    σόΠεʹؔ͢ΔσʔλΛɺλʔήοτ޿ࠂ΍޿ࠂޮՌଌఆΛ
    ໨తͱͯ͠ɺଞࣾͷΞϓϦ΍WebαΠτɺ·ͨ͸ΦϑϥΠϯͷ
    ϓϩύςΟ͔Βऩू͞ΕͨϢʔβʔ΍σόΠεʹؔ͢Δσʔλ
    ʹඥ෇͚ΔߦҝΛࢦ͠·͢ɻ

    View Slide

  27. App Tracking Transparency ʹରԠ͠ͳ͍৔߹
    • ରԠ͠ͳ͍ or ڐՄͯ͠΋Β͑ͳ͍ͱɾɾɾ

    • IDFA ʢ޿ࠂࣝผࢠʣ͕औಘͰ͖ͳ͍

    View Slide

  28. App Tracking Transparency ʹରԠ͠ͳ͍৔߹
    • ରԠ͠ͳ͍ or ڐՄͯ͠΋Β͑ͳ͍ͱɾɾɾ

    • IDFA ʢ޿ࠂࣝผࢠʣ͕औಘͰ͖ͳ͍

    • IDFA ͕औಘͰ͖ͳ͍ͱɾɾɾ

    • ద੾ͳ޿ࠂ͕දࣔͰ͖ͳ͍͜ͱʹΑΓɺ

    જࡏϢʔβʔΛಀ͢ͳͲػձଛࣦʹͭͳ͕Γ͏Δ

    View Slide

  29. App Tracking Transparency ʹؔ͢Δ։ൃऀͷରԠ
    • ATT ରԠΛߦ͏ඞཁ͕͋Δ͔ͷ֬ೝ

    View Slide

  30. App Tracking Transparency ʹؔ͢Δ։ൃऀͷରԠ
    • ATT ରԠΛߦ͏ඞཁ͕͋Δ͔ͷ֬ೝ

    • ATT ϑϨʔϜϫʔΫΛ࢖࣮ͬͨ૷

    View Slide

  31. App Tracking Transparency ʹؔ͢Δ։ൃऀͷରԠ
    • ATT ରԠΛߦ͏ඞཁ͕͋Δ͔ͷ֬ೝ

    • ATT ϑϨʔϜϫʔΫΛ࢖࣮ͬͨ૷

    • ڐ୚཰ΛͳΔ΂্͛͘ΔͨΊͷ޻෉

    View Slide

  32. App Tracking Transparency ͷڐ୚཰Λ্͛ΔͨΊͷ޻෉
    • ڐ୚཰ɿ*໿41%ʢ2021೥࣌఺ʣ

    • ޻෉Ͱ͖Δ͜ͱ

    • ATT ϙοϓΞοϓͷจࣈྻɺ

    දࣔλΠϛϯά

    • ϓϨϙοϓΞοϓ

    • ϙετϙοϓΞοϓ
    *ࢀরɿʰ[ॳظௐࠪ] ATTͷΦϓτΠϯ཰͸શମͷ41%ͱ༧૝Λ͸Δ͔ʹ্ճΔʱʢ2021. AppsFlyerʣ

    View Slide

  33. ɹɹɹͰ͸Ͳ͏ରԠ͔ͨ͠ʁ👀

    View Slide

  34. ϠϓϦͷཪଆͷ͘͠Έ
    • ϞόΠϧΞϓϦͷϊʔίʔυϓϥοτϑΥʔϜʢݱࡏ໿800ΞϓϦʣ

    View Slide

  35. ϠϓϦͷཪଆͷ͘͠Έ
    • ΞϓϦ͝ͱʹػೳ͕ҟͳΔͨΊɺATT ରԠཁ൱΋ App Privacy ͷઃఆ΋

    ΞϓϦ͝ͱʹҟͳΔ
    ATT ରԠཁ൱ App Privacy
    ඞཁ
    ෆཁ
    ඞཁ
    • Ґஔ৘ใʢτϥοΩϯά͋Γʣ

    • σόΠεIDʢτϥοΩϯά͋Γʣ
    • ਍அʢτϥοΩϯάͳ͠ʣ
    • ࢖༻ঢ়گσʔλʢτϥοΩϯά͋Γʣ

    • ϢʔβʔIDʢτϥοΩϯά͋Γʣ

    View Slide

  36. ϠϓϦͷཪଆͷ͘͠Έ
    • αʔόʔ͔Β ATT ཁ൱ͷσʔλΛऔಘ͠ɺΞϓϦ͝ͱʹϏϧυ
    ATT ཁ൱

    View Slide

  37. ϠϓϦͷ App Privacy ରԠ
    • ։ൃσΟϨΫλʔ͕ΞϓϦ͝ͱʹϓϥΠόγʔσʔλͷௐࠪΛߦͬͯGoogle
    εϓϨουγʔτͰ؅ཧɻਃ੥νʔϜ͕ App Store Connect Ͱखೖྗɻ
    ։ൃσΟϨΫλʔ ਃ੥νʔϜ

    View Slide

  38. ϠϓϦʹ͓͚Δ޻෉
    • ΧελϚΠζੑͷߴ͍ϊʔίʔυϓϥοτϑΥʔϜʢػೳ਺40छྨҎ্ʣ

    ͳͷͰɺ

    • ΞϓϦ͝ͱͷઃఆ஋͕ଟ͍

    ʢϓϥΠόγʔσʔλͷѻ͍ɺATT ཁ൱ͳͲʣ

    View Slide

  39. ϠϓϦʹ͓͚Δ޻෉
    • ΧελϚΠζੑͷߴ͍ϊʔίʔυϓϥοτϑΥʔϜʢػೳ਺40छྨҎ্ʣ

    ͳͷͰɺ

    • ΞϓϦ͝ͱͷઃఆ஋͕ଟ͍

    ʢϓϥΠόγʔσʔλͷѻ͍ɺATT ཁ൱ͳͲʣ

    • ରԠΞϓϦ਺ʢݱࡏ໿800ΞϓϦʣ͕ଟ͍ͷͰɺ

    • ͋ΒΏΔ͜ͱʹਓख·ͨ͸ࣗಈԽ͕ٻΊΒΕΔ

    ʢϏϧυ΍ਃ੥ͳͲʣ

    View Slide

  40. Ҏ্ʲ෮शฤʳͰͨ͠ʂ

    View Slide

  41. ͱ͍͏͜ͱͰ
    ௕Β͓͘଴ͨͤ͠·ͨ͠ʂ🙇

    View Slide

  42. ͜Ε͔Βͷ iOS ΞϓϦ։ൃʹ͓͚Δ
    ϓϥΠόγʔͷ֓ཁͱରԠ
    ʲ༧शฤʳ

    View Slide

  43. WWDC 23 ͷൃද

    View Slide

  44. WWDC 23 ͷൃද
    Privacy manifests ొ৔

    View Slide

  45. WWDC 23 ͷൃද
    1. Privacy manifests

    2. ίʔυॺ໊

    View Slide

  46. Privacy manifests
    • PrivacyInfo.xcprivacy ͱ͍͏ plist

    ʢϑΝΠϧ໊มߋ͸NGʣ

    • ΞϓϦ΍ SDK Ͱѻ͏

    ϓϥΠόγʔσʔλΛఆٛ
    ࢀߟɿʰGet started with privacy manifestsʱʢApple Developerʣ

    View Slide

  47. Privacy manifests Ͱఆٛ͢Δ̏छྨͷ߲໨
    • ̏छྨͷఆٛ

    • ऩू͢Δσʔλ

    • Required Reason APIs

    • τϥοΩϯά
    ࢀߟɿʰGet started with privacy manifestsʱʢApple Developerʣ

    View Slide

  48. Privacy manifests Ͱఆٛ͢Δ߲໨̍ͭ໨ɿऩू͢Δσʔλ
    • ऩू͢Δσʔλ

    ʢApp Privacyͷೖྗ߲໨ͱಉ͡ʣ

    • ऩू͢Δσʔλͷछྨ

    • ࢖༻໨త

    • ಛఆͷݸਓ΍σόΠεͱඥ͔ͮ͘

    • ϢʔβʔΛτϥοΩϯά͢Δ͔

    View Slide

  49. Privacy manifests Ͱఆٛ͢Δ߲໨̍ͭ໨ɿऩू͢Δσʔλ
    • ऩू͢Δσʔλ

    ʢApp Privacyͷೖྗ߲໨ͱಉ͡ʣ

    • ऩू͢Δσʔλͷछྨ

    View Slide

  50. Privacy manifests Ͱఆٛ͢Δ߲໨̍ͭ໨ɿऩू͢Δσʔλ
    • ऩू͢Δσʔλ

    ʢApp Privacyͷೖྗ߲໨ͱಉ͡ʣ

    • ऩू͢Δσʔλͷछྨ

    • ࢖༻໨త

    View Slide

  51. Privacy manifests Ͱఆٛ͢Δ߲໨̍ͭ໨ɿऩू͢Δσʔλ
    • ऩू͢Δσʔλ

    ʢApp Privacyͷೖྗ߲໨ͱಉ͡ʣ

    • ऩू͢Δσʔλͷछྨ

    • ࢖༻໨త

    • ಛఆͷݸਓ΍σόΠεͱඥ͔ͮ͘

    View Slide

  52. Privacy manifests Ͱఆٛ͢Δ߲໨̍ͭ໨ɿऩू͢Δσʔλ
    • ऩू͢Δσʔλ

    ʢApp Privacyͷೖྗ߲໨ͱಉ͡ʣ

    • ऩू͢Δσʔλͷछྨ

    • ࢖༻໨త

    • ಛఆͷݸਓ΍σόΠεͱඥ͔ͮ͘

    • ϢʔβʔΛτϥοΩϯά͢Δ͔

    View Slide

  53. Privacy manifests Ͱఆٛ͢Δ߲໨̎ͭ໨ɿRequired Reason APIs
    • Required Reason APIs

    • ໨తɿϑΟϯΨʔϓϦϯτରࡦ

    • ఆٛ͢Δ߲໨

    1. ࢖༻͢Δ API ͷछྨ

    2. ࢖༻໨త

    View Slide

  54. Required Reason APIs ʹ֘౰͢Δ API
    • API ͷछྨʢϑΟϯΨʔϓϦϯτʹͳΓ͏Δσʔλ΁ͷΞΫηεʣ

    • ϑΝΠϧλΠϜελϯϓ

    • γεςϜىಈ࣌ؒ

    • σΟεΫ༰ྔ
    • ΞΫςΟϒͳΩʔϘʔυ

    • UserDefaults

    View Slide

  55. Required Reason APIs ʹ֘౰͢Δ API
    • API ͷछྨ

    • υΩϡϝϯτʹ API ͝ͱͷ

    ৄࡉ͕هࡌ͞Ε͍ͯΔ
    ࢀߟɿʰDescribing use of required reason APIʱ

    View Slide

  56. UserDefaultsʁ👁

    View Slide

  57. Required Reason APIs ʹ͸ UserDefaults ΋ؚ·ΕΔ
    • UserDefaults ΋ର৅

    • ଟ͘ͷΞϓϦͰ

    Privacy manifests ͷ४උ͕

    ඞཁʹͳΔ
    ࢀߟɿʰDescribing use of required reason APIʱ

    View Slide

  58. UserDefaults ͰϑΟϯΨʔϓϦϯτʹ࢖༻͞Ε͏Δσʔλ͕औಘͰ͖Δ
    • UserDefaults ͰϑΟϯΨʔϓϦϯτʹ

    ࢖༻͞Ε͏Δσʔλ͕औಘՄೳ

    • ͨͱ͑͹ AppleKeyboards ΩʔΛ࢖༻

    ͨ͠ΩʔϘʔυ৘ใͷऔಘ
    ࢀߟɿʰHow to retrieve the list of all installed keyboards in Swift?ʱʢstack over
    fl
    owʣ

    ʰDevice Identi
    fi
    ers and Fingerprinting on iOSʱʢNSHipsterʣ
    UserDefaults.standard.object(


    forKey: "AppleKeyboards"


    )
    Optional(<__NSArrayM 0x280f34b40>(


    en_JP@hw=Automatic;sw=QWERTY,


    ja_JP-Kana@sw=Kana;hw=Automatic,


    en_US@sw=QWERTY;hw=Automatic,


    emoji@sw=Emoji,


    zh_Hant-Pinyin@sw=Pinyin-
    Traditional;hw=Automatic


    )


    )
    ιʔείʔυ
    ࣮ࡍʹऔಘͰ͖Δ஋ʢkamimi ϓϥΠϕʔτ୺຤ʣ

    View Slide

  59. ࣅͨ API Ͱ͋Δ activeInputModes ΋ಉ͘͡ର৅
    • AppleKeyboards Ͱऔಘ͢Δσʔλͱ

    ࣅͨ API Ͱ͋Δ activeInputModes ΋ 

    Required Reason APIs ʹ֘౰
    ࢀߟɿʰactiveInputModesʱʢApple Developerʣ
    ࢖༻͢Δ৔߹͸ PrivacyInfo.xcprivacyʢPrivacy manifestʣ

    ʹఆٛ͢ΔΑ͏ʹͱهࡌ͋Γ

    View Slide

  60. API ͝ͱʹ࢖༻໨తΛఆٛ͢Δ
    • ࢖༻໨త

    • API ʹΑͬͯબ୒Ͱ͖Δબ୒ࢶ

    ͕ҟͳΔ
    ίί

    View Slide

  61. Required Reason APIs ͷ۩ମతͳఆٛํ๏
    • ͨͱ͑͹ UserDefaults ͷ৔߹

    • API Type ʹʮUserDefaultsʯ

    Λઃఆ
    ʮUserDefaultsʯΛઃఆ

    View Slide

  62. Required Reason APIs ͷ۩ମతͳఆٛํ๏
    • ͨͱ͑͹ UserDefaults ͷ৔߹

    • API Reasons ʹʮCA92.1ʯ

    Λઃఆ
    ʮCA92.1: Access info from same app, per documentationʯΛઃఆ

    View Slide

  63. Privacy manifests Ͱఆٛ͢Δ߲໨̏ͭ໨ɿτϥοΩϯά
    • τϥοΩϯά

    • ఆٛ͢Δ߲໨

    1. τϥοΩϯάͷ༗ແ

    2. τϥοΩϯάΛߦ͍ͬͯΔΤϯυϙΠϯτͷυϝΠϯ

    ʢInstruments Ͱ֬ೝՄೳʣ
    ίί

    View Slide

  64. ऩू͢ΔσʔλΛϨϙʔτͱͯ͠ PDF ग़ྗͰ͖Δ
    • Privacy Report

    • ऩू͢ΔσʔλʢNutrition Labelʣ

    Λ PDF ग़ྗͰ͖Δ

    • App Privacy ͷೖྗิॿͱͯ͠

    ࢖༻Ͱ͖Δ

    View Slide

  65. SDK ͝ͱʹϓϥΠόγʔσʔλͷѻ͍͕ग़ྗ͞ΕΔ
    • Privacy Report

    • Ͳͷ SDK ʹ

    ؚ·Ε͍ͯΔσʔλͳͷ͔΋

    ग़ྗ͞ΕΔ
    ExampleAdvertising.framework ʹ

    ؚ·Ε͍ͯΔ Privacy manifest
    ExampleSharing.framework ʹ

    ؚ·Ε͍ͯΔ Privacy manifest

    View Slide

  66. ୭͕ Privacy manifests ʹରԠ͢΂͖͔ʁ
    • ϓϥΠόγʔσʔλΛѻ͏ΞϓϦ΍SDK

    • SDK ͸ Privacy Impacting SDKs ʹ֘౰͢Δ৔߹͸ඞਢ

    ʢͦͷυΩϡϝϯτ͸ 2023/8/21 ࣌఺Ͱ͸ະެ։ 😇ʣ

    • ⚠ ΞϓϦʹؚ·ΕΔ SDK ͕ѻ͏ϓϥΠόγʔσʔλͷఆٛΛɺ

    ΞϓϦଆͰ͓͜ͳ͏ඞཁ͸ͳ͍

    • SDK ଆ͸ SDK ଆಠࣗͷ Privacy manifests Λ࣋ͭͨΊ

    View Slide

  67. ίʔυॺ໊
    • ίʔυॺ໊ͱ͸

    • όΠφϦͱϝλσʔλʢ΍ιʔείʔυʣ

    Λ։ൃऀͷࣝผ৘ใͱ҉߸తʹϦϯΫ

    ͢Δ࢓૊Έ
    ࢀߟɿʰVerify app dependencies with digital signaturesʱʢApple Developerʣ

    View Slide

  68. ίʔυॺ໊ͷ໨తͱ Xcode Ͱͷݕূ
    • Xcode ্ͰݕূՄೳʹͳΔʢ15.0Ҏ߱ʣ

    ʢXcode ӈͷΠϯεϖΫλʣ

    • ΞϓϦ։ൃऀ͸ɺ҆શͳSDKͰ͋Δ͜ͱ

    ͕Θ্͔ͬͨͰ SDKΛ࢖༻Ͱ͖Δ

    • Privacy Impacting SDKs ͸ରԠඞਢ
    ࢀߟɿʰVerify app dependencies with digital signaturesʱʢApple Developerʣ

    View Slide

  69. Privacy manifests ͱίʔυॺ໊͸͍ͭ·ͰʹରԠ͢΂͖͔ʁ
    • 2024೥य़ࠒ·ͰͷରԠ͕ඞཁ 🌸

    • ϦδΣΫτର৅ʹͳΓ͏Δ

    View Slide

  70. ϠϓϦͰ͸Ͳ͏ରԠ͢Δ༧ఆ͔ʁ👀

    View Slide

  71. ϠϓϦͰରԠ͢Δࡍͷݕ౼߲໨
    Privacy manifests ͸ඞཁ͔ʁ
    ऩू͢Δσʔλͷఆٛ͸ඞཁ͔ʁ
    Required Reason APIs ͷఆٛ͸ඞཁ͔ʁ
    τϥοΩϯάͷఆٛ͸ඞཁ͔ʁ
    ίʔυॺ໊Λ͢΂͖͔ʁ

    View Slide

  72. ̍ͭͣͭ֬ೝ͍ͯ͘͠💪

    View Slide

  73. ϠϓϦͰରԠ͢Δࡍͷݕ౼߲໨ɿPrivacy manifests ͷඞཁ༗ແ
    ɹɹऩू͢Δσʔλͷఆٛ͸ඞཁ͔ʁ
    • ✅ YESɿϓϥΠόγʔσʔλΛѻ͍ͬͯΔͨΊ

    • ରԠɿΞϓϦ͝ͱʹ manifests ʹऩू͢ΔσʔλΛఆٛ͠ɺϏϧυ͢Δ

    ʢΞϓϦ਺͕ଟ͘ख࡞ۀ͸ݫ͍ͨ͠ΊɺϏϧυࣗಈԽʹ૊ΈࠐΉ͜ͱΛ
    ݕ౼தʣ

    View Slide

  74. ϠϓϦͰରԠ͢Δࡍͷݕ౼߲໨ɿPrivacy manifests ͷඞཁ༗ແ
    ɹɹRequired Reason APIs ͷఆٛ͸ඞཁ͔ʁ
    • ✅ YESɿUserDefaults ͳͲ֘౰͢Δ API Λ࢖༻͍ͯ͠ΔͨΊ

    • ରԠɿ࢖༻͢Δ API Λఆٛ͠ɺͦΕͧΕͷ࢖༻໨తΛ֬ೝɾఆٛ͢Δ

    View Slide

  75. ϠϓϦͰରԠ͢Δࡍͷݕ౼߲໨ɿPrivacy manifests ͷඞཁ༗ແ
    ɹɹτϥοΩϯάͷఆٛ͸ඞཁ͔ʁ
    • 🤔 ݕ౼தʢ͕͓ͩͦΒ͘YESʣɿτϥοΩϯά༻API ʹ֘౰ͦ͠͏ͳ

    ػೳ͕ଘࡏ͢Δ

    • ରԠɿτϥοΩϯάʹ࢖༻͞Ε͍ͯΔΤϯυϙΠϯτΛௐࠪ͢Δ

    View Slide

  76. ϠϓϦͰରԠ͢Δࡍͷݕ౼߲໨ɿίʔυॺ໊ͷඞཁ༗ແ
    ɹɹίʔυॺ໊Λ͢΂͖͔ʁ
    • 🙅 ϠϓϦͷΞϓϦ͸NOɿ͕֤ͩछ SDK ͷରԠ֬ೝɾඞཁʹԠͯ͡

    ΞϓϦͷΞοϓσʔτͳͲ͕ඞཁ

    View Slide

  77. ϠϓϦͰରԠ͢Δࡍͷݕ౼߲໨ʢ࠶ܝʣ
    Privacy manifests ͸ඞཁ͔ʁ
    ऩू͢Δσʔλͷఆٛ͸ඞཁ͔ʁ
    Required Reason APIs ͷఆٛ͸ඞཁ͔ʁ
    τϥοΩϯάͷఆٛ͸ඞཁ͔ʁ
    ίʔυॺ໊Λ͢΂͖͔ʁ

    View Slide

  78. ϠϓϦͰରԠ͢Δࡍͷݕ౼߲໨ɿ·ͱΊ
    Privacy manifests ͸ඞཁ͔ʁ
    ऩू͢Δσʔλͷఆٛ͸ඞཁ͔ʁ
    Required Reason APIs ͷఆٛ͸ඞཁ͔ʁ
    τϥοΩϯάͷఆٛ͸ඞཁ͔ʁ
    ίʔυॺ໊Λ͢΂͖͔ʁ
    ✅ YES
    ✅ YES
    ✅ YES
    🤔 ݕ౼த

    ʢ͕͓ͩͦΒ͘YESʣ
    🙅 ϠϓϦͷΞϓϦ͸NO

    ʢ͕֤ͩछ SDK ͷରԠ֬ೝɾඞཁʹ
    Ԡͯ͡ΞοϓσʔτରԠ͕ඞཁʣ

    View Slide

  79. ͨͩ͠·ͩෆ໌఺ɾվળཁ๬΋͋Γɾɾɾ
    • ͨͩ͠·ͩෆ໌఺΋ɾɾɾ🤔

    • Q: Ͳͷ SDK ͕ Privacy Impacting SDKs ʹ֘౰͢Δͷ͔ʁ

    • → Apple ͕υΩϡϝϯτΛެ։͢Δ·Ͱ଴ͪ

    • Q: Ͳͷ୯ҐͰ Privacy manifests Λอ࣋͢΂͖ͳͷ͔ʁ

    • վળͯ͠΄͍͜͠ͱ΋ɾɾɾ🙏

    • Q: Privacy manifests ΛݩʹɺApp Store Connect ͷ App Privacy ΛࣗಈͰೖྗ
    ͯ͘͠Εͳ͍ͷ͔ʁ

    View Slide

  80. Ұ୴·ͱΊΔ🙏

    View Slide

  81. ରԠࣄ߲ ΞϓϦ։ൃऀ SDK ։ൃऀ
    ऩू͢Δσʔλͷఆٛ
    ˚

    ʢApple ͕ఆΊΔ

    ϓϥΠόγʔσʔλΛѻ͏৔߹ʣ
    ˚

    ʢApple ͕ఆΊΔ

    ϓϥΠόγʔσʔλΛѻ͏৔߹ʣ
    Required Reason API ͷఆٛ
    ˚

    ʢRequired Reason API Λ

    ࢖༻͢Δ৔߹ʣ
    ˚

    ʢRequired Reason API Λ

    ࢖༻͢Δ৔߹ʣ
    τϥοΩϯάυϝΠϯͷఆٛ
    ˚

    ʢτϥοΩϯάΛߦ͏৔߹ʣ
    ˚

    ʢτϥοΩϯάΛߦ͏৔߹ʣ
    ίʔυॺ໊
    X

    ʢΞϓϦͰ࢖༻͍ͯ͠Δ SDK ʹ

    Ԡͯ͡ରԠ͕ඞཁʣ
    ˚

    ʢPrivacy-Impacting SDKs ʹ

    ֘౰͢Δ৔߹ʣ
    དྷ೥य़·ͰͷϓϥΠόγʔରԠ·ͱΊ
    ɿඞཁɹɹɹɿ৔߹ʹΑͬͯඞཁɹɹXɿෆཁ

    View Slide

  82. ຊτʔΫͷ·ͱΊ
    • Apple ʹΑΔϓϥΠόγʔपΓͷن੍͸೥ʑڧ·͍ͬͯΔ

    • ظݶ͕ܾ·͍ͬͯΔɺ͔ͭεςʔΫϗϧμʔ͕ଟ͘ͳΓ͕ͪͳͷͰɺૣΊૣΊͷରԠΛ

    • Transparency and control पΓͷҎԼͷରԠ͕ɺདྷ೥य़·Ͱʹඞཁ

    • Privacy manifestsʢΞϓϦ/ SDK ։ൃऀʣ

    • ίʔυॺ໊ʢSDK ։ൃऀʣ

    • ࠓ೥΋ATTͷ࣌΄ͲͰ͸ͳ͍ͱ͸͍͑ɺӨڹ͸େ͖ͦ͏

    View Slide

  83. Zenn هࣄॻ͖·ͨ͠ʂʢࠓޙ΋ߋ৽༧ఆʣ
    ΈͯͶ👇

    View Slide

  84. akatsuki ͞Μ΋ϓϥΠόγʔͷτʔΫΛ͞Ε·͢ʂ

    View Slide

  85. View Slide

  86. Swift OpenAPI Generator ʹ͍ͭͯύϯϑϨοτݪߘΛॻ͖·ͨ͠ʂ
    ΈͯͶ👇

    View Slide

  87. Ҏ্ɺ

    ͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ🤲

    View Slide