Datadogをセキュアーに使うために


できるなら、セキュアーに使えるSaaSを選びたいと考えている人も多いと思います。今回のポストでは、イベントのデモなどでは絶対に説明しない、セキュリティーが気になる人向けのtipsを書こうと思います。

Login関連

Login関連で、セキュリティーに貢献できることをまとめてみます。

Google アカウントのログイン機能を使って2段認証

私は、Googleアカウントを登録しています。日常的に多岐に渡るgoogleサービスにお世話になっていて、Chrome BrowserにはGoogleアカウントが設定されている状態です。これで、Datadogのへのアクセスにパスワードを入力する必要がなくなると同時に、MFAにも対応することができます。

GoogleのMFAに関しては、このドキュメントを参照してください。

このGoogleアカウントは、Sginupの時から使うことが可能です。
Signupへのリンク: https://app.datadoghq.com/signup

分かりにくいですが、中央下のSign up with Googleを選択すると、パスワードの設定を求められずにトライアルの登録ができます。

必要項目の入力が終わると、青いSign upをクリックすれば、トライアルを開始することができます。

既存ユーザーは、通常はパスワードとの併用ですが、Googleアカウントでしかloginできなくなるモードもあります。必要な人は、support@datadogcomに取り合わせてください。

SAML

自社内のADやonelogin等のSaaS型の認証サービスを使っているケースも多々あるでしょう。そのような場合でも対応することができます。

ユーザーの顔のアイコンが表示されている所にマウスを宛て、表示されるメニューよりConfigure SAMLを選択し、表示された画面に従って認証に必要な項目を設定してください。

SAML設定ページへのダイレクトリンク: https://app.datadoghq.com/saml/saml_setup

設定前の画面ですが、以下がリンク先のページになります。

詳細な設定方法は次のドキュメントを参照してください。英語ですが最新の情報に更新されています。
- Datadog docs: https://docs.datadoghq.com/guides/saml/
- Blog post: https://www.datadoghq.com/blog/single-sign-on-available-datadog-using-saml/

AWS Integration関連

Datadogの敏腕営業の服部君が、日本のお客様向けに公開していAWS Integrationを見るのが最も良いと思います。要は、ロールデリゲーションを使うことと、デリゲーションするIAMロールの権限範囲を、むやみに広げない方針をとることだと思います。

AWSインテグレーションでのIAMロールの設定ガイド: https://drive.google.com/file/d/0B5hBItbCG2wiODJuaWdXWmRvd3c/view

API keyとdd-agent関連

API keyとdd-agent関連で、セキュリティーに貢献できることをまとめてみます。

API key

Datadogアカウントの管理者以外の一般ユーザーのダッシュボードで、API keyを表示するためのタブを非表示にするオプションがあります。現状、UIからは設定することができません。[email protected](日本語可)まで連絡をください。

dd-agent

1)バックエンドサーバーの固定

FireWallの内側でdd-agentを使っていると、dd-agentがdataを送信するDatadog側のエンドポイントが、dd-agentのバーション毎に違っているのに気がついたと思います。FireWallを寛容に設定していれば特に問題は無いと思います。大企業とかで、そんな寛容な設定なんて許されなんですっていうケースもあると思います。そういう場合に向けたDataを受信するためにエンドポイントが存在しています。

そのエンドポイントを使うには、datadog.confで以下のように設定してdd-agentを再起動してください。
https://github.com/DataDog/dd-agent/blob/master/datadog.conf.example#L4

dd_url: https://unversioned.agent.datadoghq.com

これで、Dataの送信先が、unversioned.agent.datadoghq.comに固定されます。

2)dd-agentをProxyととして使う方法

dd-agentのdataは、各種のproxyを経由してDatadogのバックエンドへ送信することことができます。その内の一つにには、dd-agentそれ自体も含まれています。dd-agentを既にインストールしたサーバーが中立的な場所に存在するなら、そのdd-agentを経由するが簡単な方法です。

Proxy設定に関するdoc: https://github.com/DataDog/dd-agent/wiki/Proxy-Configuration

Dashboardとグラフ関連

dashboard関連で、セキュリティーに貢献できることをまとめてみます。

ScreenBoardの閲覧IP制限

DatadogのScreenBoardは、その公開用URLをDatadogのアカウントを持っていない仲間と共有し、ダッシュボードを共有する機能を持っています。公開用のURLは、長〜いハッシュで生成されているにの関わらず、IPアドレスで閲覧の制限をしたいと思うこともあると思います。必要な人は、[email protected]へ連絡してください。機能を使うための設定が終わると、閲覧を許可するIPアドレスを登録するページにアクセスするためのタブが表示されるようになります。

管理者のみにScreenBoardの公開権限を与える

アカウントの管理者ではない人が、誤ってScreenBoardを公開するのを回避するために、管理者のみにScreenBoardの公開権限を設定することも可能です。こちらもUIからは設定できませんので、必要な人は、[email protected]へ連絡してください。

dashboardの変更の"制限と通知"

Timeboard & Screenboardの両方に、変更の”制限と通知"の設定をUIからすることができます。これを設定するとdashboardを作成した本人とアカウント管理者のみがdashboardの変更をすることとができ、それ以外の権限を有しないユーザーは、閲覧のみが可能になります。

右上の歯車マークより、PermissionsNotificationsを選択します。

ポップアップメッセージで、青い質問文の前の四角にチェックマークを入れ、OKをクリックします。

Monitor関連(アラート設定関連)

monitor関連で、セキュリティーに貢献できることをまとめてみます。

monitorの変更の”制限と通知”

monitor設定の変更の”制限と通知"をmonitorの編集画面からすることができます。monitor設定時にこれらの項目を設定しておくと、他の管理者ではないユーザーによってminitorが変更されることを防ぐことができるます。

設定は、notifyのみかrestricのみの、排他設定になります。

まとめ

広い範囲で捕らえたセキュリティーということで、Datadogを使を使う際のTipsをまとめてみました。dashboardとmonitorの設定変更に関しては、定番設定として有効でよいような項目じゃないのかとも思っております。

今回紹介した項目で、ちょっとでも安心してDatadogが利用してもらえると嬉しいです。