Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Automatic Strong Password and Security Code Aut...
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
fromkk
June 13, 2018
Programming
3.7k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Automatic Strong Password and Security Code AutoFill(204)
WWDC After Party 2018 at Ebisu(WWDC After Party 2018 at Ebisu)で発表してきた内容です。
fromkk
June 13, 2018
More Decks by fromkk
See All by fromkk
note社の全員野球で品質向上活動について / note_qa_challenge #iOS_test_teatime
fromkk
3
2.1k
1年分のデータが見たいと言われてやったこと/yearly_data_with_note
fromkk
0
1k
note iOSチームの自動化 ver.2021/automation_with_iOS_team_on_note_ver2021
fromkk
0
2.1k
Bitrise体験会説明資料/bitrise_explore
fromkk
1
1.2k
noteのiOSアプリで実装したアクセシビリティの全て #iosdc #a /a11y_with_iOS_App_on_note
fromkk
2
5.2k
dSYMのアップロードで SPMを活用する/use_spm_with_upload_dsyms
fromkk
1
3.2k
Bitriseのリモートアクセス機能 #bitrise_meetup/remote_access_of_bitrise
fromkk
1
700
note社でのMagic Pod活用事例 #af_iosdc/magicpod_with_note
fromkk
2
12k
iOSには無いmacOS独自機能をCatalystで実装する #iosdc #d/make_macos_apps_with_catalyst
fromkk
9
2.3k
Other Decks in Programming
See All in Programming
AIの中の人になってみる
htkym
0
170
一参加者から『中の人』へ 〜全通PHPerがブースに立って学んだ、カンファレンスを100倍楽しむコツ〜
wp_daisuke
0
130
Gmail/Google DriveをトリガーにAIエージェントを動かそう! / Run AI agents with Gmail/Google Drive as triggers!
har1101
3
480
市販E-Readerを乗っ取れ 〜Embedded Swiftで電子ペーパーガジェットを制御する〜
trickart
0
130
LL言語やWebフレームワークのPostgreSQL対応 〜DBの機能がユーザーに届くまで〜
kentaroutakeda
0
140
Hello, Hiroshima Geospatial Data! — Exploring DoboX with Python
ra0kley
0
180
Swift愛好会100回記念 第1回を振り返る
jollyjoester
0
120
DroidKaigi 2026 「個人開発という実験場: Android エンジニアが手にする4つの自由」
slashnephy
0
220
数年滞っていたダークモード対応をおよそ2週間で完了させる
chigichan24
0
690
XHTMLが残したもの
yosuke_furukawa
PRO
2
470
Oxlintはいいぞ(続)
yug1224
1
560
typoなんかねぇよ
raspython3
0
680
Featured
See All Featured
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
1
380
Crafting Experiences
bethany
1
310
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
56k
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
2
680
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.9k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
3k
How Software Deployment tools have changed in the past 20 years
geshan
1
34k
The Cost Of JavaScript in 2023
addyosmani
55
10k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.5k
WCS-LA-2024
lcolladotor
0
820
Mobile First: as difficult as doing things right
swwweet
225
10k
Transcript
Automatic Strong Password and Security Code AutoFill(204) WWDC After party
2018 at Ebisu
Profile struct Profile { let name = "Kazuya Ueoka" let
twitter = "@fromkk" let github = "fromkk" let qiita = "fromkk" let company = "Timers Inc." } •
2017年のWWDCの復習 • Introducing Password AutoFill for Apps(206) • Webとアプリで共通のログイン情報を保持 •
Keychainを利⽤ • Appleが直接アクセスする事は無いらしい
利⽤⽅法 App IDのAssociated Domainsを有効にする
利⽤⽅法 apple-app-site-associationを有効なドメインの配下に設置する { "webcredentials": { "apps": ["XXX0123YYY.com.example.MyApps"] } }
利⽤⽅法 • プロジェクトのCapabilityからAssociated Domainsにウェブサーバーのドメインを記述する • MyProject.entitlementにドメインが記述される
UITextFieldを設定 //Ϣʔβʔ໊ userNameTextField.textContentType = .username //ύεϫʔυ passwordTextField.textContentType = .password passwordTextField.isSecureTextEntry
= true
iOS 12でのアップデート •強⼒(Strong)なパスワードの⾃動⽣成 •SMSで受け取った認証コードの⾃動補完
Strong Passwordの⾃動⼊⼒ //ύεϫʔυ - passwordTextField.textContentType = .password + passwordTextField.textContentType =
.newPassword
パスワードルール • 初期値で20⽂字のアルファベット(⼤⽂字/⼩⽂字)・数字、ハイフン が含まれる⽂字列が⽣成される • ⽂字列で指定する • バリデーション⽤のウェブページが⽤意されている https://developer.apple.com/password-rules/ let
ruleDescriptitor = "allowd: upper, lower, digit; required: [$];" passwordTextField.passwordRules = UITextInputPasswordRules(descriptor: rulesDescriptor)
SMSで受け取った認証コードの⾃動補完 codeTextField.textContentType = .oneTimeCode iPhoneで受け取ったコードをiMessage経由でmacでも利⽤可能
その他 •WKWebViewもパスワード⾃動⼊⼒をサポート •新規登録/ログインの実⾏が完了したタイミングでユー ザー名・パスワードがKeychainに保存される(ダイアロ グが表⽰される) •ユーザー名・パスワード管理画⾯もアップデート
Demo
まとめ • Keychainを利⽤してユーザー名・パスワードを記録して、アプリでもウェ ブでも利⽤出来る • Face ID/Touch IDなどの⽣体認証で保護されているので安⼼ • 新規登録時には強⼒なパスワードが⽣成出来る
• 2段階認証などのSMSで送信されるコードも⾃動⼊⼒ • 今後新規登録・ログインが必要なアプリには実装が推奨されている https://developer.apple.com/design/human-interface- guidelines/ios/user-interaction/authentication/
PR
None
絶賛エンジニア募集中!
ご清聴ありがとうございました!