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
Automatic Strong Password and Security Code Aut...
Search
fromkk
June 13, 2018
Programming
0
3.3k
Automatic Strong Password and Security Code AutoFill(204)
WWDC After Party 2018 at Ebisu(WWDC After Party 2018 at Ebisu)で発表してきた内容です。
fromkk
June 13, 2018
Tweet
Share
More Decks by fromkk
See All by fromkk
note社の全員野球で品質向上活動について / note_qa_challenge #iOS_test_teatime
fromkk
3
1.8k
1年分のデータが見たいと言われてやったこと/yearly_data_with_note
fromkk
0
960
note iOSチームの自動化 ver.2021/automation_with_iOS_team_on_note_ver2021
fromkk
0
2k
Bitrise体験会説明資料/bitrise_explore
fromkk
1
1.1k
noteのiOSアプリで実装したアクセシビリティの全て #iosdc #a /a11y_with_iOS_App_on_note
fromkk
2
3.8k
dSYMのアップロードで SPMを活用する/use_spm_with_upload_dsyms
fromkk
1
2.9k
Bitriseのリモートアクセス機能 #bitrise_meetup/remote_access_of_bitrise
fromkk
1
580
note社でのMagic Pod活用事例 #af_iosdc/magicpod_with_note
fromkk
2
11k
iOSには無いmacOS独自機能をCatalystで実装する #iosdc #d/make_macos_apps_with_catalyst
fromkk
9
2.1k
Other Decks in Programming
See All in Programming
Enterprise Web App. Development (2): Version Control Tool Training Ver. 5.1
knakagawa
1
120
Using AI Tools Around Software Development
inouehi
0
1.3k
Railsアプリケーションと パフォーマンスチューニング ー 秒間5万リクエストの モバイルオーダーシステムを支える事例 ー Rubyセミナー 大阪
falcon8823
4
880
Select API from Kotlin Coroutine
jmatsu
1
190
AWS CDKの推しポイント 〜CloudFormationと比較してみた〜
akihisaikeda
3
300
Bytecode Manipulation 으로 생산성 높이기
bigstark
2
370
データの民主化を支える、透明性のあるデータ利活用への挑戦 2025-06-25 Database Engineering Meetup#7
y_ken
0
300
VS Code Update for GitHub Copilot
74th
1
240
deno-redisの紹介とJSRパッケージの運用について (toranoana.deno #21)
uki00a
0
140
Julia という言語について (FP in Julia « SIDE: F ») for 関数型まつり2025
antimon2
3
970
Rubyでやりたい駆動開発 / Ruby driven development
chobishiba
1
140
What Spring Developers Should Know About Jakarta EE
ivargrimstad
0
170
Featured
See All Featured
It's Worth the Effort
3n
184
28k
Practical Orchestrator
shlominoach
188
11k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
657
60k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
53
2.8k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
331
22k
Statistics for Hackers
jakevdp
799
220k
The Pragmatic Product Professional
lauravandoore
35
6.7k
Into the Great Unknown - MozCon
thekraken
39
1.9k
Unsuck your backbone
ammeep
671
58k
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
絶賛エンジニア募集中!
ご清聴ありがとうございました!