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

iOSDC Japan 2017「iOSデバイス3,500台を管理する、 東急ハンズのデバイス手法とは」

Yusuke Kuroiwa
September 17, 2017

iOSDC Japan 2017「iOSデバイス3,500台を管理する、 東急ハンズのデバイス手法とは」

iOSDC Japan 2017
2017/09/17 14:20~
iOSデバイス3,500台を管理する、 東急ハンズのデバイス手法とは

# Demo 動画

https://www.youtube.com/watch?v=KNSxw1LS7cE&feature=youtu.be

# Keyword

## Services

MDM: Mobile Device Management
DEP: Device Enrollment Program
VPP: Volume Purchase Program
AC2: Apple Configurator 2

## Tips

- 自爆アップデート(Harakiri-Updater)
- Wi-Fi接続をホワイトリスト設定 Tips

# Rerefernces

MDM Protocol
https://developer.apple.com/library/content/documentation/Miscellaneous/Reference/MobileDeviceManagementProtocolRef/3-MDM_Protocol/MDM_Protocol.html

Configuration Profile Reference
https://developer.apple.com/library/content/featuredarticles/iPhoneConfigurationProfileRef/Introduction/Introduction.html

Yusuke Kuroiwa

September 17, 2017
Tweet

More Decks by Yusuke Kuroiwa

Other Decks in Technology

Transcript

  1. iOSσόΠε3,500୆Λ؅ཧ͢Δɺ
    ౦ٸϋϯζͷσόΠεख๏ͱ͸
    2017೥9݄17೔ (iOSDC Japan 2017)

    Yusuke Kuroiwa

    View Slide

  2. Who?
    • Yusuke Kuroiwa

    • ͖ΜͪΌΜɻ

    • ϋϯζϥϘגࣜձࣾ

    • iOS Engineer

    • iPad POS Appઃܭɾ։ൃɾಋೖɾઃஔɾӡ༻

    • iOS Device Management ← Twitter: @wa_kinchan

    GitHub: @wakinchan

    View Slide

  3. ࡢ೥ͷiOSDCͰͷొஃ
    ౦ٸϋϯζͷPOS͔ΒֶΜͩɺۀ຿
    iOSΞϓϦͷ޲͖߹͍ํ
    Silent Push௨஌ͰΞϓϦࡴ͢Ϛϯ

    View Slide

  4. ౦ٸϋϯζͷ

    iOS Devices

    View Slide

  5. iTouch
    ౦ٸϋϯζͷPDA

    View Slide

  6. ౦ٸϋϯζͷiPod touch
    • iPod touch 5, 6th: 3,000୆ (ॱ࣍iPhone SEʹஔ͖׵͑༧ఆ)

    • ಺੡ΞϓϦͷػೳ: ঎඼ൃ஫ɺࡏݿ֬ೝɺ঎඼ݕࡧɺ౳

    • AppStoreͷ20Ҏ্ͷΞϓϦΛΠϯετʔϧ

    View Slide

  7. HandsPOS
    ౦ٸϋϯζͷPOS

    View Slide

  8. ౦ٸϋϯζͷiPad
    • iPad Air 2, iPad 5th: 800ຕ 㱺 ల։ޙ: 1,600ຕ
    • ಺੡ΞϓϦͷػೳ: iPad POS

    View Slide

  9. ΩοςΟϯάͬͯେม

    View Slide

  10. View Slide

  11. View Slide

  12. ΩοςΟϯάΛ
    ೗Կʹ؆ུԽ͢Δ͔

    View Slide

  13. ΩοςΟϯάͷෛՙΛܰݮͤ͞ΔαʔϏε
    • MDM/MAM: σόΠε؅ཧ(֤छMDMίϚϯυૹ৴)ɺΞϓϦ഑෍ɾ؅ཧ

    • DEP: Α͏ͦ͜ը໘ͷઃఆͷ࡟ݮɺMDMڧ੍ࢀՃ

    • VPP: ΞϓϦϥΠηϯεҰׅߪೖɺMDMʹ͔Β഑෍Մೳ

    • AC2: ߏ੒ϓϩϑΝΠϧ(.mobileconfig)ͷ࡞੒

    View Slide

  14. MDM
    (Mobile Device Management)
    • σόΠε؅ཧ͕Մೳʂ

    • ֤छ৘ใऔಘ (OS Version, Model, Serial Number, Device Disk
    Capacity, …)

    • ߏ੒ϓϩϑΝΠϧ (.mobileconfig) ͷ഑෍

    • Provisioning Profileͷ഑෍

    • iOSΞοϓσʔτ, ฆࣦϞʔυ༗ޮ(Ґஔ৘ใऔಘ), ϦϞʔτϫΠϓ

    • γϟοτμ΢ϯ & Ϧϒʔτ

    View Slide

  15. MDM services
    • CLOMO

    • Meraki

    • Mobile Iron (ϞόΠϧΞΠΞϯ)

    • Apple Configurator 2 (Profile Manager)

    • …

    View Slide

  16. MDM Protocol
    • https://developer.apple.com/library/content/documentation/Miscellaneous/Reference/
    MobileDeviceManagementProtocolRef/3-MDM_Protocol/MDM_Protocol.html

    View Slide

  17. Provisioning Profile
    distribution
    • In-House appͷProvisioning Profile͸ظݶ͕1೥

    • ࣄނͷݩ (͜ΕͰΞϓϦͷΞοϓσʔτΛͤͣͱ΋ߋ৽͕Մೳ)

    • Provisioning Profile͚ͩMDMͰ഑෍Մೳ

    • ※ ద༻͢Δʹ͸୺຤࠶ىಈඞཁ

    View Slide

  18. MAM
    (Mobile Application Management)
    • ϞόΠϧΞϓϦͷ؅ཧ͕Մೳʂେ఍MDMͱ౷߹

    • ΞϓϦΠϯετʔϧ/࡟আɺΞϓϦҰཡऔಘɺVPPϥΠηϯ
    ε෇༩/ണୣ ౳

    • ؅ཧ഑෍ग़དྷΔίϯςϯπ

    • VPP Apps (AppStore Apps), In-House App

    • Book

    View Slide

  19. ౦ٸϋϯζͰར༻͍ͯ͠ΔMDM

    View Slide

  20. VPP
    (Volume Purchase Program )
    • AppStoreͰ഑෍͞Ε͍ͯΔΞϓϦ(ϥΠηϯε)ΛҰׅͰߪೖ͕Մೳ

    • ແঈ/༗ঈΞϓϦ྆ํߪೖՄೳ

    • ҰׅͰߪೖͨ͠ϥΠηϯεΛMDM͔Β؅ཧ഑෍͕Մೳ

    View Slide

  21. Device-based apps
    distribution
    • MDM͔ΒσόΠεʹରͯ͠VPPͷϥΠηϯεΛ෇༩Λग़དྷΔ

    • σόΠεʹରͯ͠෇༩Λߦ͏ͨΊɺApple ID͕ෆཁ

    • ͜ΕʹΑΓඇৗʹָʹAppStoreΞϓϦΛ؅ཧ഑෍ग़དྷΔ

    • ର: User-based apps͸iOS 9Ҏલ͸ओྲྀͰ͋ͬͨ(Apple IDඞਢ)

    View Slide

  22. DEP
    (Device Enrollment Program )
    • iOSσόΠεΛ։෧ͯ͠ىಈͨ͠ॠ͔ؒΒɺΑ͏ͦ͜ը໘ͷ
    ෆཁͳઃఆ߲໨͕࡟আ͞ΕɺΩοςΟϯάָ͕ʹͳΔ

    View Slide

  23. DEPػೳ
    • Α͏ͦ͜ը໘ͰɺMDM΁ͷࢀՃΛڧ੍͕Մೳɺ؂ࢹର৅Ϟʔυʹग़དྷΔ

    • ͦͷޙɺMDMͷػೳͰඞཁͳΞϓϦͷࣗಈΠϯετʔϧɺࣗಈϓϩϑΝ
    Πϧద༻͜ͱͰɺΩοςΟϯάͷ࡞ۀ୹ॖՄೳ

    View Slide

  24. DEPར༻৚݅
    • DEPΛར༻͢Δʹ͸DEPʹରԠͨ͠Apple௚Ӧൢചళ͔Βσ
    όΠεΛങ͏ඞཁ͕͋ΓɺങͬͨΒͦͷ୺຤ΛͲ͜ͷMDM
    ʹඥ෇͚Δ͔Λࣄલʹઃఆ͓ͯ͘͠ඞཁ͸͋Δ

    View Slide

  25. AC2 (Apple Configurator 2)
    • macOS application (Mac AppStoreʹ͋Δ)

    • ߏ੒ϓϩϑΝΠϧ(.mobileconfig)ͷ࡞੒ (xmlܗࣜ)

    • iOSଆͰը໘ૢ࡞ແ͠ʹɺઃఆͷྲྀ͠ࠐΈ͕Մೳ

    View Slide

  26. Configuration Profile
    Reference
    • https://developer.apple.com/library/content/featuredarticles/iPhoneConfigurationProfileRef/
    Introduction/Introduction.html

    View Slide

  27. ΩοςΟϯάͷෛՙΛܰݮͤ͞ΔαʔϏε
    • MDM/MAM: σόΠε؅ཧ(֤छMDMίϚϯυૹ৴)ɺΞϓϦ഑෍ɾ؅ཧ

    • DEP: Α͏ͦ͜ը໘ͷઃఆͷ࡟ݮɺMDMڧ੍ࢀՃ

    • VPP: ΞϓϦϥΠηϯεҰׅߪೖɺMDMʹ͔Β഑෍Մೳ

    • AC2: ߏ੒ϓϩϑΝΠϧ(.mobileconfig)ͷ࡞੒

    View Slide

  28. Tips!

    View Slide

  29. MDMͷΞϓϦͷΠϯετʔϧ௨஌
    ಧ͔ͳ͍໰୊
    Tips 1

    View Slide

  30. MDMͷΞϓϦͷΠϯετʔϧ௨஌
    ಧ͔ͳ͍໰୊
    • MDMͷΞϓϦͷΠϯετʔϧ௨஌͕୺຤ʹ౸ୡͤͣɺΞο
    ϓσʔτ͕ग़དྷͳ͍৔߹͕͋Δ

    • MDM͸ϓογϡ௨஌Λར༻ͯ͠୺຤ʹରͯ͠ॲཧΛߦ͏

    • Ξοϓσʔτग़དྷͳ͍ͱɺPOSϨδͱͯ͠͸க໋తͰ͋
    ΓɺΞοϓσʔτ࿙ΕʹΑΔళฮ΁ͷ࿈བྷɺి࿩͕େม

    View Slide

  31. View Slide

  32. ࣗ਎ͷΞϓϦ͔Β
    ࣗരΞοϓσʔτػೳΛ
    ࣮૷Ͱ͖ͳ͍͔

    View Slide

  33. SFSafariViewControllerͰɺ
    ΠϯετʔϧϦϯΫΛදࣔͯ͠
    ΠϯετʔϧϘλϯΛԡͯ͠΋Β͑Ε͹ɺ
    ࣗരͰΞοϓσʔτग़དྷΔΜ͡ΌͶ?

    View Slide

  34. SFSafariViewController
    Harakiri-Updater
    • ݁Ռ: ग़དྷͨ

    • UIWebView͸ग़དྷͳ͔ͬͨ(ݖݶ͕ͳ͍)

    • 3λοϓͰΞοϓσʔτՄೳʹ

    View Slide

  35. ΋ͬͱ؆୯ʹग़དྷͳ͍͔

    View Slide

  36. URL Scheme
    Harakiri-Updater
    • itms-service:// ͳURLεΩʔϜͰmanifest plistΛ௚઀։͘

    • iOS 11 GMҎ߱͸ࣗಈΞϓϦ͕ࢮͳͳ͍ͨΊɺ
    exit(EXIT_SUCCESS) ౳Ͱࣗര͢Δඞཁ͕͋Δ

    View Slide

  37. Demo

    View Slide

  38. ϫϯλοϓͰग़དྷͨ

    View Slide

  39. Wi-Fi઀ଓΛϗϫΠτϦετͰ
    ੍ݶ͢ΔઃఆʹؾΛ͚ͭΖ!!
    Tips 2

    View Slide

  40. Wi-FiϓϩϑΝΠϧ

    View Slide

  41. Wi-Fi઀ଓΛϗϫΠτϦετ੍ݶ
    • ϓϩϑΝΠϧʹΑͬͯΠϯετʔϧ͞Εͨ Wi-Fi ωοτ
    ϫʔΫͷΈ઀ଓ (؂ࢹର৅ͷΈ) iOS10.3Ҏ߱

    View Slide

  42. Wi-Fi઀ଓΛϗϫΠτϦετ੍ݶ
    1. AC2Ͱ࡞੒ͨ͠Wi-FiઃఆͷϓϩϑΝΠϧΛ୺຤ʹྲྀ͠ࠐΉ

    2. AC2Ͱ࡞੒ͨ͠Wi-Fi઀ଓϗϫΠτϦετ੍ݶઃఆͷϓϩ
    ϑΝΠϧΛ୺຤ʹྲྀ͠ࠐΉ

    3. Wi-FiઃఆͷϓϩϑΝΠϧͰࢦఆ͞ΕͨSSIDͷΈ͕ɺ઀ଓ
    ͕Մೳʹ

    View Slide

  43. Wi-FiϓϩϑΝΠϧ͕ͳ͍ͷʹ
    Wi-Fi੍ݶϗϫΠτϦετઃఆ͕ೖΔͱ…

    View Slide

  44. iTunesͰϦΧόϦ͢Δ·Ͱೋ౓ͱ
    ॳظԽ͕ग़དྷͳ͍
    ஍ཕײ͋ΔΑ..͜ͷػೳ

    View Slide

  45. ղܾํ๏
    • Wi-FiઃఆͱWi-Fi઀ଓϗϫΠτϦετ੍ݶ
    ઃఆΛҰॹͷϓϩϑΝΠϧʹ͢Δ

    View Slide

  46. ϋϯζϥϘ͸
    iOS x Swift
    όϦόϦ΍ͬͯ·͢
    Լͷϒʔεʹདྷ͍ͯͩ͘͞

    View Slide

  47. WE ARE HIRING!!
    HANDS LAB INC.

    View Slide