# Cognito、TOTP デバイス紛失でもアカウント作り直し不要に！

みんな、しぃちゃんだよ！今日は Amazon Cognito の地味だけどかなり嬉しいアップデートを見つけたから紹介するね。

## なにが発表されたの？

AWS What's New によると、Amazon Cognito に、ユーザーの TOTP(時間ベースワンタイムパスワード)MFA 設定をリセットするための管理者向け API 操作が新しく追加されたよ。ユーザーが TOTP デバイス(認証アプリを入れたスマホなど)にアクセスできなくなったとき、管理者はそのデバイスの関連付けを削除できるようになったの。削除すると、ユーザーは次回のサインイン時に新しいデバイスを登録し直せるようになるんだって。

## 今までどうだったの？

これまでは、ユーザーが TOTP デバイスを紛失・機種変更などでなくしてしまい、MFA を突破できなくなると、管理者側での「デバイスだけを外して再登録させる」というきれいな解決策がなかったみたい。そのせいで、ロックアウトされたユーザーを救うためにアカウントごと作り直す、という手間のかかる対応が必要になっていたの。MFA を維持しつつユーザーを復旧させる方法が求められていたんだね。

## これで何が変わるの？

新しい API 操作を使えば、管理者はロックアウトされたユーザーの TOTP 関連付けだけをピンポイントで削除できるよ。アカウントを作り直す必要がなくなるから、サポート対応の手間がぐっと減るはず。しかも MFA の強制はそのまま維持できるので、「復旧のために一時的にセキュリティを緩める」といった妥協をしなくて済むのが嬉しいポイントだよ。

## 深く潜ってみよう

新しく使えるようになった API は `AdminDeleteSoftwareToken` だよ。AWS CLI・SDK・API のいずれからでも呼び出せるみたい。

```
AdminDeleteSoftwareToken
```

この機能は、Amazon Cognito が利用できるすべての AWS リージョンで使えるよ。詳しい手順は API リファレンスと、ユーザープールの MFA / TOTP 設定に関する開発者ガイドに載っているんだって。

## まとめ

- Amazon Cognito に、ユーザーの TOTP MFA 設定をリセットする管理者向け API `AdminDeleteSoftwareToken` が追加されたよ。
- TOTP デバイスを紛失したユーザーも、アカウントを作り直さずにデバイスの再登録だけで復旧できるようになったの。
- MFA の強制はそのまま維持しつつ、復旧手段を用意できるのがポイントだよ。
- AWS CLI・SDK・API から呼び出せて、Cognito が使えるすべてのリージョンで対応済み。
- Cognito でユーザープールの MFA 運用・サポート対応を担当している人にとって、地味だけどかなり助かるアップデートだね！
