NexmoがVerify SDK for iOS、Android、JavaScriptを発表した。Nexmoによると、携帯電話番号ベースのセキュアなユーザ登録及び認証を可能にするものだという。
Nexmo Verify SDKはNexmo Verify APIをベースとしており、電話番号をユニークなデバイス識別子に紐付け、様々なメリットをもたらすという。
- 自動ログアウトとPINチャレンジによるセキュリティ改善
- 容易なインテグレーション: 2要素認証を含め、認証を実現するのに数行のコードしか必要としない。
- バックエンド不要: Verify SDKがデバイス及びプラットフォーム横断のユーザ管理サポートを提供するので、開発者は自分のユーザデータベースを使う必要がない。
- UIレディ: 電話番号の収集、PINコードチャレンジの表示など、すべての認証ワークフローを処理する、カスタマイズ可能なUIフレームワークが提供される。
- プッシュ通知によるユーザの再検証をサポート
- Nexmo Verify APIによるキャリアおよび国横断のグローバルな認証。
iOS上では、次のようにして開発者は単純な認証を処理することになる。
NexmoClient.start(applicationId: "abcde", sharedSecretKey: "12345")
VerifyClient.getVerifiedUser(countryCode: "GB", phoneNumber: "07000000000",
onVerifyInProgress: {
// 認証プロセス開始時に呼び出される
},
onUserVerified: {
// ユーザが認証できた時に呼び出される
},
onError: { (error: VerifyError) in
// 認証中にエラーが発生した時に呼び出される。例えば、ユーザが間違ったピンを入力した時。
// 詳細については、VerifyErrorクラスを調べる
}
)
// ユーザによって入力されたPINコードを提供する
VerifyClient.checkPinCode("1234")
Verify SDKは認証されていないユーザにPINチャレンジを送る。PIN認証後、ユーザのステータスは30日間保持され、ユーザ認証情報は即座に利用可能になる。
この基本的なワークフロー以外にも、Verify SDKはより高度なユースケースをサポートしている。例えば、ユーザステータスの検索、認証のキャンセル、ログアウトなど。
Nexmoは柔軟な従量課金モデルを提供しており、開発者は認証成功に対して対価を支払う。