YubiKey USB 接続での FIDO 利用
YubiKey USB接続でのFIDO利用方法は、以下のリンクにまとめられているものがありました。
Microsoft 系だと FIDO2 認証を使うことになります。
YubiKey 自体は 2022 年末に Cloudflare が実施したキャンペーンで入手したものを使います。
今回のキャンペーンは、すべてのCloudflareのお客様がご利用いただけます。Cloudflareをご利用のお客様は、Cloudflareダッシュボードで直接このYubicoセキュリティーキーのキャンペーンを利用することができます。
Yubicoは今回、1個あたり10ドルという「インターネット特別料金」でセキュリティーキーを提供しています。キーはYubicoにより、直接お客様の元に発送されます。
キーの設定とIDプロバイダーおよびCloudflareのZero Trustサービスとの統合に関しては、CloudflareとYubicoの開発者向けドキュメントおよびサポートグループが、ガイドを提供します。
Azure AD に YubiKey による FIDO 認証を設定する
デフォルトだと FIDO2 security key
が無効になっているため、以下の手順で有効化します。
最近画面が新しくなった模様。
ユーザーアカウント側でセキュリティキーを登録する
ユーザーアカウントに YubiKey をセキュリティキーとして登録します。
↑ ここでサインインを求められるので、サインインを行います。
以下、Chrome ブラウザでかつ YubiKey 5C NFC を USB 接続した状態で進めています。
PIN の入力を求められます。
以上でユーザーアカウントに YubiKey をセキュリティキーとして登録完了できました。
Cloudflare Access を使って FIDO2 認証を強制する
以下の App Launcher を使います。
<your-team-name>.cloudflareaccess.com
は App Launcher の Cloudflare Access ポリシーによって保護されていますので、設定します。
Settings > Authentication > App Launcher > Manage > Rules から以下のように設定します。
確認
https://<your-team-name>.cloudflareaccess.com
にアクセスし、Azure AD でログインします。
ログイン後は、画面右上のユーザ名 > Account から認証情報を確認できます。
また、以下の URL からも JSON データを確認できます。
https://<your-team-name>.cloudflareaccess.com/cdn-cgi/access/get-identity
{
"id": "xxx",
"name": "xxx",
"email": "xxx@example.com",
"amr": [
"fido",
"mfa"
],
"groups": [
{
"id": "xxx",
"name": "Mark 8 Project Team"
},
{
"id": "xxx",
"name": "Retail"
},
{
"id": "xxx",
"name": "MSFT"
},
{
"id": "xxx",
"name": "Sample Team Site"
},
{
"id": "xxx",
"name": "Global Administrator"
},
{
"id": "xxx",
"name": "U.S. Sales"
},
{
"id": "xxx",
"name": "Digital Initiative Public Relations"
},
{
"id": "xxx",
"name": "Sales and Marketing"
}
],
"idp": {
"id": "xxx",
"type": "azureAD"
},
"geo": {
"country": "JP"
},
"user_uuid": "xxx",
"devicePosture": {
"xxx": {
"type": "warp",
"rule_name": "Warp",
"success": false
},
"xxx": {
"type": "gateway",
"rule_name": "Gateway",
"success": false
}
},
"account_id": "xxx",
"iat": 1683980281,
"ip": "xxx",
"auth_status": "NONE",
"common_name": "",
"is_warp": false,
"is_gateway": false,
"version": 0,
"device_sessions": {}
}
パスワードなし + YubiKey を使った場合
ログインが成功し fido
属性が確認できます。
パスワード + YubiKey を使った場合
ログインが成功し fido
属性が確認できます。
パスワード + TOTP を使った場合
Cloudflare Access ポリシー違反のため、以下のような画面とログが確認できます。