Add Optional Two-Factor Authentication (2FA) for User Accounts
まだ誰も着手していません。
評価
- 難易度
- 5/5
- 見積もり時間
- 1週間以上
- 初心者へのやさしさ
- 35/100
- issue の種類
- 機能追加
- 明瞭さ
- おおむね明確
- 活発さ
- 停滞
- 技術スタック
- ruby
調査の方向性
まず、issue に記載されている既存のアカウント設定、認証フロー、ユーザーテーブルを見つけます。rotp と rqrcode がこれらのエントリーポイントにどのように組み込めるかを確認し、オプトインの 2FA、TOTP ログイン、安全なシークレット、バックアップコードによるリカバリーが、記載された受け入れ基準を満たしていることを検証します。
索引モデルが issue の本文から書いたものです。
説明
To improve account security, we should add optional two-factor authentication (2FA) for users. This will allow users to enable 2FA via TOTP (e.g., Google Authenticator, Authy) in their account settings, but not require it for all users.
Requirements:
- Users can enable or disable 2FA from their account settings.
- When enabled, users must scan a QR code with an authenticator app to set up 2FA.
- On login, if 2FA is enabled, users must enter a valid TOTP code after password authentication.
- Users should be able to generate and view backup codes for account recovery.
- Store TOTP secrets and backup codes securely.
- UI/UX for enabling/disabling 2FA, entering codes, and managing backup codes.
Technical Notes:
- Use the rotp gem for TOTP generation/validation.
- Use the rqrcode gem to generate QR codes.
- Add otp_secret and otp_backup_codes columns to the users table.
- Update authentication flow to require TOTP code if 2FA is enabled.
Acceptance Criteria:
- Users can opt in/out of 2FA.
- 2FA is enforced only for users who have enabled it.
- Backup codes are available and can be regenerated.
- All sensitive data is handled securely.
- 主要言語
- Ruby
- スター
- 16
- フォーク
- 11
- PR マージ指標
- 30日以内にマージされた PR はありません
環境構築
- Dockerfile または Docker Compose ファイルあり
- プルリクエストのテンプレートあり
- コントリビューションガイドを読む
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
rubyforgood/skillrx のほかの issue
-
難易度 4/5 3〜5日 初心者へのやさしさ 25/100
rubyforgood/skillrx#736 ·
-
Discrepancies between SkillRx and Azure再び着手できるかも @dcollie2 が 66 日前に担当しましたが、オープン中のプルリクエストはありません。 オープン
rubyforgood/skillrx#734 · 担当者 2 名 ·
-
Requirements Incomplete
難易度 4/5 3〜5日 初心者へのやさしさ 66/100
rubyforgood/skillrx#700 ·
-
Topics UI Tweaks対応中かも @LucassF5 が 130 日前に担当しました。 オープンenhancement good first issue User Interface
rubyforgood/skillrx#699 · コメント 2 件 · 担当者 1 名 ·
-
bug User Interface
難易度 2/5 1〜3時間 初心者へのやさしさ 55/100
rubyforgood/skillrx#606 ·
rubyforgood/skillrx の issue をすべて見る
似ている issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 77/100
メンテナーはふだん 1 日以内に返信
-
L: javascript
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
dependabot/dependabot-core#16744 ·
メンテナーはふだん 1 日以内に返信
-
area:core-lib P2 size:S
難易度 2/5 1〜3時間 初心者へのやさしさ 77/100
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 65/100
メンテナーはふだん 1 日以内に返信