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
Credential Managerを使ってパスワードを入力する
Search
verno3632
February 17, 2023
0
540
Credential Managerを使ってパスワードを入力する
shibuya.apk #40
verno3632
February 17, 2023
Tweet
Share
More Decks by verno3632
See All by verno3632
2022年のポリシー変更を振り返る
verno3632
0
140
今のうちからできる_Android_14準備
verno3632
0
750
Kotlin化をやりきる / Done Kotlinize
verno3632
0
3.5k
Featured
See All Featured
GraphQLの誤解/rethinking-graphql
sonatard
50
9.2k
Reflections from 52 weeks, 52 projects
jeffersonlam
345
19k
Facilitating Awesome Meetings
lara
42
5.6k
Teambox: Starting and Learning
jrom
128
8.4k
Building a Scalable Design System with Sketch
lauravandoore
456
32k
How GitHub (no longer) Works
holman
304
140k
Docker and Python
trallard
34
2.7k
Fireside Chat
paigeccino
21
2.6k
Six Lessons from altMBA
skipperchong
21
3k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
125
32k
Making Projects Easy
brettharned
108
5.5k
Adopting Sorbet at Scale
ufuk
68
8.6k
Transcript
Credential Managerを使って パスワードを入力する shibuya.apk #40 pixiv Inc. verno3632 2023.2.17
2 自己紹介 • ピクシブ株式会社 / pixiv verno3632
3 Android 14 DP1出ましたね
参照: https://android-developers.googleblog.com/2023/02/first-developer-preview-android14.html 4
5 Credential Manager とは なんぞや🤔
6 Credential Managerとは • ユーザーの認証情報にアクセスするためのAPI • Android 14からAPI追加 • androidx.credentials:credentials:1.0.0-alpha02
がリリース済み • パスワード・パスキー・フェデレーション認証に対応
7 パスワード入力に使ってみる
8 Credential Managerをパスワード入力に使う • いわゆるパスワードマネージャーにアクセスし、パスワードの保存・取得ができ る • 関連クラスとしてCredentialManager、CredentialProviderが存在
9 CredentialManager • ユーザーの認証フローを管理するクラス • ユーザーはUIフローからパスワードの登録や取得を利用できる • CredentialProviderに実際の処理を委譲
10 CredentialProvider • パスワードの登録・取得処理を実際に行う • 自体はinterfaceで、OEMが実装してライブラリとして公開し利用される • Android 13以下ではこのライブラリは開発者が依存関係に組み込む ◦
複数のCredentialProviderが存在するとCredential Managerがエラー • Android 14ではフレームワークに登録、ユーザーが選択出来る ◦ コードを見るとまだ実装は存在しない
11 依存関係
12 パスワードを保存する
13 パスワードを読み込む
パスワード入力と言えば 14
15 自動入力フレームワーク • 別のアプリのビューに対して自動で入力するア プリ ◦ パスワードマネージャーなど • ユーザーはOS設定から選択できる •
フレームワークに自動入力してもらうためにはア プリ側にautofillHintsを設定する
autofillHints: AndroidView 16
autofillHints: Compose 17
18 比較 CredentialManager 自動入力フレームワーク 対応バージョン Android 4.4以上 Android 8以上 パスワードマネージャー
Android13以下だと開発者が 指定したもののみ ユーザーが好きなものを設定で きる 機能 認証情報のみ 認証情報に加えてクレカ情報や 住所、電話番号等
Credential Managerは パスワード入力には不要かも? 19
passkeyに必要 20
21 passkey • 最新のChrome / Safariなどでも対応されて いるパスワードレス認証
22 まとめ • CredentialManagerによりパスワードレス認証方式のパスキーに対応できる • CredentialManagerでパスワード入力機能を実装することが可能 • パスワード入力には自動入力フレームワークを使うほうがいいかも