# 2fa create user

モード
  特権EXECモード
カテゴリー
  運用・管理 / 2要素認証

## 構文

コマンド構文

`# 2fa create user NAME {random-secret|secret SECRET} [hotp] [qr {ansi|utf8|link}]`

## コマンド説明

TOTP/HOTP方式の2要素認証ユーザーを登録する。
該当ユーザーのシークレットキー（ワンタイムパスワードの元となるデータ）はランダムに生成するか、別途生成したものを入力するかを選択可能。
登録時にはそれぞれ1回だけ使用可能なバックアップコードが5つ生成される。バックアップコードは2fa reset scratch-codesコマンドで作り直すことが可能。
なお、TOTPを利用するユーザーについては、登録専用のWebページでユーザー自身が利用登録をすることもできる。詳しくは解説編を参照。

## パラメーター

`NAME`
  2要素認証ユーザー名
`random-secret`
  シークレットキーをランダムに生成する
`secret SECRET`
  生成済みのシークレットキーを指定する。`SECRET` は BASE32 形式（使用可能文字は半角 A～Z と 2～7 の32種類）の文字列として指定する。シークレットキーの最小長 128 ビットを満たすため、`SECRET` は26文字以上にする必要がある
`hotp`
  ワンタイムパスワードの生成方式としてカウンターベースのHOTP（HMAC-based One-Time Password）を使う場合に指定する。本オプションを指定しない場合は時間ベースのTOTP（Time-based One-Time Password）を使用する
`qr {ansi|utf8|link}`
  生成または入力したユーザーのシークレットキーをQRコードで表示させたいときに指定する。表示モードを下記から選択すること。なお、QRコードは後からshow 2fa userコマンドで表示させることもできる
  `ansi`
    ANSIエスケープシーケンスを利用してQRコードを端末画面に表示。表示サイズが大きいため端末画面（ウィンドウ）を大きめにする必要がある
  `utf8`
    UTF-8の記号文字を利用してQRコードを端末画面に表示。ansiよりも表示サイズが小さい
  `link`
    QRコードを表示するWebサイトへのリンク（URL）を端末画面に表示する。同URLにアクセスするとGoogle社のサーバーにシークレットキーが送信されることに注意

## 使用例

2要素認証ユーザー「userA」を登録する。シークレットキーはランダムに生成する。

    awplus# 2fa create user userA random-secret
    Two-Factor Authentication information for user:

    Username:        userA
    Secret:          735RXATXRBTMICCBJAD4FAV7OU
    Mode:            TOTP
    OTP URL:         otpauth://totp/userA@my-vpn?secret=735RXATXRBTMICCBJAD4FAV7OU&issuer=my-company
    Scratch codes:
      29161407
      25390983
      26665627
      40772664
      87146389

2要素認証ユーザー「userB」を登録する。シークレットキーは別途生成したものを入力する。

    awplus# 2fa create user userB secret AAAAABBBBBCCCCCDDDDDEEEEEE
    Two-Factor Authentication information for user:

    Username:        userB
    Secret:          AAAAABBBBBCCCCCDDDDDEEEEEE
    Mode:            TOTP
    OTP URL:         otpauth://totp/userB@my-vpn?secret=AAAAABBBBBCCCCCDDDDDEEEEEE&issuer=my-company
    Scratch codes:
      98899032
      77301366
      63550417
      90035691
      48327998

## 注意・補足事項

AMF機能を有効にしていない環境でも、2FAユーザー情報のバックアップ（エクスポート）は2fa export user-dataコマンドで、復元（インポート）は2fa import user-data sourceコマンドで行える。詳しくは、解説編を参照。
また保管した2FAユーザー情報を消失した場合は、本コマンドで新規設定を行う。

## 関連コマンド