まだプログラマーですが何か?

プログラマーネタ中心。たまに作成したウェブサービス関連の話も https://twitter.com/dotnsf

タグ:verify

Github の認証をスマホアプリを使った2段階認証にするための手順を紹介します。対応したスマホアプリはいくつか存在しますが、このブログエントリでは IBM Security Verify アプリを使った設定手順を紹介します。

なお Github の2段階認証を有効にするには、ここで紹介する手順を実行する前に、Github の認証方法をベーシック認証ではなくパーソナルアクセストークン認証に切り替えておく必要があります。そちらの手順については以前のブログエントリを参照してください:
Github のベーシック認証が利用できなくなる前にパーソナルアクセストークンに対応する


【Github の2段階認証対応】
今回は IBM Security Verify アプリを使った Github の2段階認証対応手順を紹介します。まず iPhone や Android スマホでストアアプリを起動し、"IBM Security Verify" を検索して該当アプリをインストールします(無料です):
2021031307


そして起動します。下図は初回起動直後の画面です。この時点ではまだどのサービスとも連携できていないので、「アカウントの接続」ボタンが表示されます。このボタンをタップします:
IMG_3073


「コンピュータの QR コードをスキャンしてください」というメッセージが表示されます。この後 Github と連携するための QR コード読み取りを行います。スマホアプリ側はいったんこの状態にしたまま続けて Github 側の作業を行います:
IMG_3074


別の PC などで Github にログインし、"Settings" メニューから "Account security" を選択し、2段階認証を有効にするため、画面内の "Enable two-factor authentication" ボタンをタップします:
2021031301


次の画面で "Set up using an app" ボタンを選択します:
2021031302


すると以下のようなリカバリーコードが表示されます。リカバリーコードはアカウントにアクセスできなくなった場合に、再びアクセスできるようにするためのコードです。"Download" ボタンを押して内容を保存してから、"Next" ボタンをクリックして先に進みます:
2021031303


すると以下のように QR コードが表示されます。改めて先程起動したままだったスマホの IBM Security Verify アプリの画面から「QR コードのスキャン」を選択し、起動したカメラでこの QR コードを撮影します:
2021031304

するとアプリ側は「完了しました」と表示されます。"OK" をクリックします:
IMG_3075


Github との接続が完了した様子がわかります。この "Github" 部分をタップします:
IMG_3076


すると以下のような画面が表示されます。モザイクになっている箇所にはアクセスコードと呼ばれる6桁の数字が表示されており、約30秒ごとに異なる値に変更されます:
IMG_3077


この数字が変更になる前に Github 画面内の QR コード下部に6桁の数字を入力して、"Enable" ボタンをクリックします(作業途中で数字が切り替わってしまった場合、その6桁の数字は無効です。改めて有効な数字を入力して、切り替わる前に "Enable" ボタンを押してください):
2021031305


これで IBM Security Verify アプリを使った Github の2段階認証が有効になりました:
2021031306


うまく設定できているか、動作確認をしてみます。この状態で PC の Github からサインアウトし、再びサインインします:
2021031401


するとパスワード入力後に2段階認証のコード入力画面に切り替わります:
2021031402


スマホにインストールした IBM Security Verify アプリを起動して、先程と同様に Github アカウントを選択すると6桁の認証コードが表示されています:
2021031404


入力期限が切れる前にこの6桁の数字を正しく入力して "Verify" ボタンをクリックするとログインできます:
2021031403






 

Github の認証ルールが変わったらしく、最終的には 2021 年 8 月 13 日からベーシック認証を用いた利用ができなくなるようです:
Token authentication requirements for Git operations


普段から Github は頻繁に使っていて、しかも現在はベーシック認証中心に使っていました。突然利用できなくなると困るので、早めの対策を取っておきました。その手順を紹介します。 また合わせて Github の2段階認証を利用すべく、IBM Security Verify アプリを使った2段階認証対応手順を紹介します。

【Github のパーソナルアクセストークン認証】
Github のベーシック認証の利用ができなくなる前にパーソナルアクセストークンと呼ばれるトークンを使った認証に切り替える必要があります。まずはその手順を紹介します。

Github ページにログインし、画面右上のアイコンをクリックして "Settings" を選択します:
2021031301


プロフィールページが表示されるので、画面左のサイドメニューから "Developer settings" を選択します:
2021031302


開発者向け設定ページが表示されます。ここでも画面左のサイドメニューから "Personal access tokens" を選択します:
2021031303


設定済みのパーソナルアクセストークン一覧画面が表示されます。新しいパーソナルアクセストークンを作成するために "Generate new token" を選択します:
2021031304


新たに作成するパーソナルアクセストークンの説明(名前)を Note に入力し、スコープは全てにチェックを入れます:
2021031305


最後に "Generate token" ボタンをクリックしてパーソナルアクセストークンを作成します:
2021031306


新しいパーソナルアクセストークンが生成されました。このトークン文字列はこの作成直後のタイミングのみ表示されます(別のページに推移したら2度と表示できません)。このタイミングでコピーするなどして値を保存しておくことを推奨します:
2021031307


これでパーソナルアクセストークンを生成することができました。これ以降で git push するなど認証が必要になった場合は、ID としてユーザー名、パスワードとして(これまでのログインパスワードではなく)パーソナルアクセストークン文字列を指定して認証することができるようになります。また 2021 年 8 月 13 日以降は(ベーシック認証が利用できなくなるため)このパーソナルアクセストークン文字列を使った認証のみがサポートされるようになります:
2021031308


【Github の2段階認証】
記事を分けて紹介することにしました。こちらを参照ください:
IBM Security Verify アプリを使って Github の2段階認証を設定する


このページのトップヘ