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

Intro WWDC ’18 Session: Automatic Strong Passwords and Security Code AutoFill

Intro WWDC ’18 Session: Automatic Strong Passwords and Security Code AutoFill

Intro WWDC ’18 Session:
Automatic Strong Passwords and Security Code AutoFill

Kishikawa Katsumi

June 22, 2018
Tweet

More Decks by Kishikawa Katsumi

Other Decks in Programming

Transcript

  1. Intro WWDC ’18 Session:
    Automatic Strong Passwords and
    Security Code AutoFill
    Kishikawa Katsumi

    View Slide

  2. Automatic Strong Passwords

    View Slide

  3. View Slide

  4. Security Code AutoFill

    View Slide

  5. View Slide

  6. Review: Password Autofill (iOS 11)

    View Slide

  7. Associated Domains

    View Slide

  8. View Slide

  9. View Slide

  10. if #available(iOS 11.0, *) {
    emailField.textContentType = .username
    passwordField.textContentType = .password
    }

    View Slide

  11. View Slide

  12. View Slide

  13. View Slide

  14. View Slide

  15. Try: Automatic Strong Passwords

    View Slide

  16. View Slide

  17. View Slide

  18. View Slide

  19. View Slide

  20. View Slide

  21. View Slide

  22. View Slide

  23. https://developer.apple.com/password-rules/

    View Slide

  24. View Slide

  25. View Slide

  26. ݱ࣌఺Ͱ͜ͷ߲໨͸ɺ·
    ͩଘࡏ͠ͳ͍Α͏Ͱ͢ɻ

    View Slide

  27. passwordField.passwordRules =
    UITextInputPasswordRules(descriptor:
    “allowed: digit; minlength: 1; maxlength: 4;")

    View Slide

  28. View Slide

  29. ύεϫʔυΛอଘ͢Δʹ͸
    Password Saving
    Compatibility checklist
    Tag fields with content types
    Remove login fields from view hierarchy
    Clear login fields only after removing from hierarchy
    Check that AutoFill saved to the correct domain
    May no longer need SecAddSharedWebCredential()

    View Slide

  30. ύεϫʔυΛอଘ͢Δʹ͸
    • ࣗಈͰอଘ͞ΕΔͱݴͬͯΔͬΆ͍Μ͚ͩͲɺ؍࡯ͨ͠
    ݶΓͰ͸ɺը໘ΛҠಈͯ͠΋ɺϏϡʔ͔ΒςΩετϑΟʔ
    ϧυΛ࡟আͯ͠΋อଘ͞ΕΔ༷ࢠ͸ͳ͔ͬͨɻΑ͘Θ͔Β
    ͳ͍ɻ

    View Slide

  31. Try: Security Code AutoFill

    View Slide

  32. View Slide

  33. View Slide

  34. View Slide

  35. View Slide

  36. NOTE: ؔ܎ͳ͍SMSʹ΋൓Ԡ͠·͢ɻ

    View Slide

  37. View Slide

  38. View Slide

  39. View Slide

  40. Failure cases

    View Slide

  41. Failure cases
    InstagramͷSMS͸
    ӳޠͷ΋ͷͩͱਖ਼͘͠ิ׬͞ΕΔ͕ɺ
    ೔ຊޠͷ΋ͷ͸ิ׬͞Εͳ͔ͬͨɻ
    ηογϣϯͰ΋ݴٴ͞Ε͍ͯΔ͕ɺ
    ͏·͘ಈ͔ͳ͍ύλʔϯ͕͋ͬͨΒ
    όάϨϙʔτ͠·͠ΐ͏ɻ
    ॻ͍ͨ௨Γɺ೚ҙͷSMSͰಈ࡞͢ΔͷͰ
    ύλʔϯͷݕূ͸ҙ֎ͱ؆୯Ͱ͢ɻ
    ͨͩ͠ɺσόΠεͷݴޠઃఆͳͲͰ
    ݁Ռ͕มΘͬͯΔΑ͏ʹ΋ݟ͑ΔͷͰɺ
    ͦͷลΓ͸ཁௐࠪɻ

    View Slide

  42. Summary
    • Web (Safari) Ͱ࢖ΘΕ͍ͯͨύεϫʔυͷࣗಈੜ੒ʢ& อଘʣ΍iCloud KeychainʹΑΔ
    ࣗಈิ׬ΛΞϓϦͰ΋࢖͑ΔΑ͏ʹ͢Δ࢓૊ΈʢiOS 11Ͱ΋෦෼తʹ࣮ݱͰ͖͍ͯͨʣ

    • Ϣʔβʔ͕σεΫτοϓͰSafariΛ࢖͍ͬͯͳͯ͘΋ɺiPhoneͰMobile SafariΛ࢖ͬͯ
    ͍ΔՄೳੑ͸ߴ͍ͷͰɺiPhoneͷWebͰ̍౓Ͱ΋ϩάΠϯ͍ͯ͠Ε͹ิ׬͸༗ޮʹͳΔ
    Մೳੑ͕ߴ͍

    • ରԠͷίετ͸খ͍͞ͷͰɺରԠ͓ͯ͘͠ͱ཭୤Λ๷͛Δ͸ͣ

    • ࣮ࡍͷڍಈ͸Α͘؍࡯ɾςετ͢Δඞཁ͋Γɻ͓͔͠ͳڍಈΛݟ͚ͭͨΒใࠂΛɻ

    • 2 Factor Authͷิ׬͸ศར͕ͩɺSMSʹΑΔίʔυૹ৴͸໰୊΋ࢦఠ͞Ε͍ͯΔͷͰɺ
    ϓϩδΣΫτʹΑͬͯݕ౼ͷ༨஍͕େ͍ʹ͋Δɻ

    • ΧελϜͨ͠ύεϫʔυϧʔϧͷςετͷखஈ͕ͳͦ͞͏ʁ

    View Slide

  43. Resources
    • [204] Automatic Strong Passwords and Security Code
    AutoFill

    • [721] Implementing AutoFill Credential Provider
    Extensions

    • Password Rules Validation Tool

    https://developer.apple.com/password-rules/

    View Slide