ロゴテキスト ロゴ

    AlfredでAWSの2段階認証のコードを発行する

    AlfredでAWSの2段階認証のコードを発行する

    Alfredをv5に上げるとここで紹介しているワークフローが動作しなくなりました…😭


    issueが上がっているものの1ヶ月経過しても特段動きがないので、今後使えるようになるかちょっと分からないですね。。

    https://github.com/moul/alfred-workflow-gauth/issues/35





    AWSやGitHubなど、2段階認証がログイン時に一般的になっています。




    2段階認証は

    Google Authenticatorのようなスマホアプリで確認するのが一般的かと思いますが、

    それを便利にするためにMacのターミナルで確認出来るようにする方法を以前記載しました!



    上記の設定を行うとターミナルで設定したコマンドを実行する事で、

    2段階認証のコードを把握する事が出来るようになります。

    awsopt='oathtool --totp --base32 <シークレットキー> | pbcopy && pbpaste && echo "ワンタイムパスワードがコピーされました"'

    $ awsopt
    012345
    ワンタイムパスワードがコピーされました





    この方法とは別に、

    Macユーザが良く利用するランチャーアプリ 「Alfred」でも簡単に2段階認証を確認するためのWorkflowがありました!


    alfredでも2段階認証を行えるWorkflow

    moul/alfred-workflow-gauth: TOTP - Google Authenticator Workflow for Alfred2 (Two-Factor authentication)




    導入したところ非常に便利だったためご紹介します!


    ちなみにこんな感じ。

    1. Alredで内容の選択
    2. クリップボードにコピー
    3. ペースト(ブラウザを開いていた場合すぐに入力される!!)

    ペーストまでされるのがかなり便利 です!





    Alred Workflow: Google Authenticator 導入・設定

    中身的には名前の通りGoogle AuthenticatorのアプリをAlfredで実現するためのWorkflowと思われます。

    Workflowの導入

    GitHubのREADMEに「Download」というリンクがあるためそちらを利用します。


    リンク先は以下

    https://github.com/moul/alfred-workflow-gauth/raw/master/Google%20Authenticator.alfredworkflow




    DLしたらクリック → AlfredでimportするとAlfredに反映されます

    alfredにDLしたgauthのWorkflowを読み込むか効かれる


    gauth Workflowの設定

    ホームディレクトリに .gauthという隠しファイルを作る事で設定出来ます!



    READMEには参考として以下のように書かれてます。

    [google - bob@gmail.com]
    secret=xxxxxxxxxxxxxxxxxx
    
    [evernote - robert]
    secret=yyyyyyyyyyyyyyyyyy

    []の中に名前、続けてsecret=の後にsecret keyの値を入れる、という形ですね。




    私が今回設定したかったのがAWSなのでこのように書いてみました。

    $ vim ~/.gauth
    [aws]
    secret=<シークレットキーの値>


    <シークレットキーの値>の部分はawsの場合、IAMの「仮想MFAデバイスの設定」から取得出来ます。

    仮想MFAデバイスの設定よりシークレットキーの情報を取得する

    詳しくは以前のターミナルで2段階認証を実装する記事に記載してます





    これで実行すると


    クリップボードにコピー、更にブラウザを直前まで開いていた場合ペーストまでしてくれます!!


    超優秀 ✨

    プロフィールの背景画像 プロフィール画像
    Yuki Takara
    都内でフリーランスのエンジニアをやってます。フロントとアプリ開発メインに幅広くやってます。