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.4k
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.9k
1年分のデータが見たいと言われてやったこと/yearly_data_with_note
fromkk
0
970
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
猫と暮らす Google Nest Cam生活🐈 / WebRTC with Google Nest Cam
yutailang0119
0
120
イベントストーミング図からコードへの変換手順 / Procedure for Converting Event Storming Diagrams to Code
nrslib
2
810
10 Costly Database Performance Mistakes (And How To Fix Them)
andyatkinson
0
330
なぜ「共通化」を考え、失敗を繰り返すのか
rinchoku
1
650
効率的な開発手段として VRTを活用する
ishkawa
0
140
LT 2025-06-30: プロダクトエンジニアの役割
yamamotok
0
760
『自分のデータだけ見せたい!』を叶える──Laravel × Casbin で複雑権限をスッキリ解きほぐす 25 分
akitotsukahara
2
640
#QiitaBash MCPのセキュリティ
ryosukedtomita
1
1.3k
脱Riverpod?fqueryで考える、TanStack Queryライクなアーキテクチャの可能性
ostk0069
0
130
Blazing Fast UI Development with Compose Hot Reload (droidcon New York 2025)
zsmb
1
290
0626 Findy Product Manager LT Night_高田スライド_speaker deck用
mana_takada
0
170
Azure AI Foundryではじめてのマルチエージェントワークフロー
seosoft
0
170
Featured
See All Featured
Large-scale JavaScript Application Architecture
addyosmani
512
110k
4 Signs Your Business is Dying
shpigford
184
22k
A Tale of Four Properties
chriscoyier
160
23k
Art, The Web, and Tiny UX
lynnandtonic
299
21k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Visualization
eitanlees
146
16k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.4k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3.3k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
32
2.4k
The Language of Interfaces
destraynor
158
25k
A better future with KSS
kneath
238
17k
Building an army of robots
kneath
306
45k
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
絶賛エンジニア募集中!
ご清聴ありがとうございました!