メインコンテンツまでスキップ

Redisにパスワードを設定する

ご質問​

社内のセキュリティの要件で、Redisにパスワードを設定したいです。
現在のTimeTracker では対応していますか?

ご回答​

TimeTracker の標準機能では Redisのパスワード設定に対応しておりません。
しかし、コンフィグファイルを変更することで実現できます。
以下にご紹介する方法は弊社にて動作を確認しておりますので、各ユーザー様で設定頂くことで実現できます。
なお、手順の最後に注意事項も記載しておりますので、こちらもご確認をお願い致します。

実施手順​

  1. 以下のリンク先の手順1,2を実施して、設定を変更するアプリケーションを停止する

    TimeTracker のサーバーを停止/起動する方法

  2. Redisのインストールフォルダにある「redis.windows-service.conf」をテキストエディタで開く

    ※テキストエディタは管理者モードで起動してください。

  3. 開いたファイルの中から「# requirepass <パスワード平文>」の1行を探し、以下のように変更する。

    変更前

    # requirepass <パスワード平文>

    変更後

    requirepass <パスワード平文>

    • 行頭の「#」と「(半角スペース)」を削除する
    • <パスワード平文>の個所は設定するパスワードをそのまま入力する。
      パスワードに入力可能な文字列の情報は 「Redisの公式サイト」 をご参照ください。

    変更後、保存してテキストエディタを閉じてください。

  4. Windowsのサービス一覧からRedisを開始する。

    ここで、3の設定が成功していることを確認するため、以下の処理を実施してください。
    《確認内容》
    Redisのインストールフォルダ内にあるredis-cli.exeを起動して、以下のコマンドを入力する。

    • 入力するコマンド:Keys *
    • 期待する結果:認証が必要な旨のエラーメッセージが表示される。

    上記で「期待する結果」が得られた場合、設定が成功していることになりますので、
    5以降の操作を実施してください。
    失敗している場合は「Redisの公式サイト」を参照して設定内容のご確認をお願い致します。

  5. Redisのインストールフォルダ内にあるredis-cli.exeを起動して、以下のコマンドを順に実行する。

    1. 実行コマンド:auth <パスワード平文>
      • 「<パスワード平文>」は手順3で設定したパスワードの文字列です。
        →エラーが出力されずに終了します。
    2. 実行コマンド:Keys *
      →見出しとデータの一覧が表示されればOKです。
  6. TimeTrackerの設定ファイルをテキストエディタで開く。

    • 設定ファイルは TimeTreacker NX のバージョンにより異なります。
      • V6 以前:Web.config
      • V7 以降:appsettings.json
    • テキストエディタは管理者モードで起動してください。
    • TimeTarcker NXの設定ファイルの格納場所は「こちら」のページをご覧ください。
  7. 設定ファイルの以下を変更する。

    V5.5 以前の場合

    • 変更前:<add key="RedisOptions" value="xxx" />
    • 変更後:<add key="RedisOptions" value="xxx,password=[パスワード]" />

    V6 の場合

    • 変更前:<add key="RedisOptions.GlobalCache" value="xxx" />
      <add key="RedisOptions.Hangfire" value="xxx" />
      <add key="RedisOptions.BackgroundJob" value="xxx" />
    • 変更後:<add key="RedisOptions.GlobalCache" value="xxx,password=[パスワード]" />
      <add key="RedisOptions.Hangfire" value="xxx,password=[パスワード]" />
      <add key="RedisOptions.BackgroundJob" value="xxx,password=[パスワード]" />

    V7 以降の場合

    • 変更前:"Options": "SyncTimeout=xxx",
    • 変更後:"Options": "password=[パスワード],SyncTimeout=xxx",
    • 既存の文字列の前に、パスワードの設定と「,」を付記してください。複数箇所あります。
    • 「パスワード」は手順3で設定したパスワードの文字列です。

    保存してテキストエディタを閉じてください。

  8. Internet Information Servicesを開始する。

    TimeTrackerにログインして実績を入力して問題がないことを確認する。
    入力した実績が以下の内容に反映されていれば問題ありません。

    • プロジェクト画面のワークアイテムの実績工数
    • リソース負荷画面の該当ユーザーの実績工数

    なお、反映には時間がかかる可能性もあります。
    反映されない場合は少し時間を空けてからご確認ください。

注意事項​

本設定を行うことで、Redis ⇔ TimeTrackerでアクセスするたびに認証処理を行うようになります。
これによりサーバーPCの処理負荷が増えますので、TimeTracker のレスポンスなどに影響が生じる可能性がございます。
処理が遅いと感じられた時はCPU/メモリの使用量をご確認頂き、必要に応じてサーバーPCのスペック増強をご検討ください。

今回編集するファイル(※)は、TimeTracker バージョンアップ時に上書きされる可能性がございます。
バージョンアップ前にバックアップを取って頂き、バージョンアップ後に該当個所を再度変更してください。
(変更しないとTimeTracer NXが動作しない可能性がございます。)

※以下の2ファイルになります。
今後のサポートの方針にも影響するため、変更されるユーザー様は弊社サポート宛てにご一報をお願い致します。

  • redis.windows-service.conf
  • TimeTrackerの設定ファイル(Web.config または appsettings.json)