カスタム・ポリシーの作成
必要な権限があれば、独自のカスタム・ポリシーを作成したり削除したりできます。
And, Or, Not
) を含む複数の式で構成できます。各基本式は、事前定義された関数とそのパラメーター (必要な場合) から構成されます。パラメーター値は、ポリシーの作成時に設定することも、$
を使用して未定義のままにしておくこともできます。パラメーターを未定義にすると、ユーザーがポリシーをアプリケーションに関連付ける際に値の入力が求められます。注: ユーザー・インターフェースで使用するポリシーを作成する場合、すべてのパラメーターを定義する必要があります。そうしなければ、ポリシーをアプリケーションに関連付けることができません。
カスタム・ポリシーを作成する利点の 1 つは、パラメーターをポリシーにハードコーディングできることです。その結果、ユーザーは毎回パラメーターを定義しなくてもポリシーを使用することが可能になります。例えば、事前定義されたベースライン・ポリシーを使用して、開始日を指定した一連のカスタム・ポリシーを作成できます。事前定義された関数
ポリシーでは、以下の事前定義された関数を使用できます。
関数 | パラメーター | 説明 |
---|---|---|
StartDate |
以下のいずれかの形式で日付を指定します (時刻を含めることもできます)。
|
指定された日付 (および時刻) 以降に検出された問題を返します。 例:
|
MinSeverity |
以下の形式で重大度を指定します。
|
パラメーターに指定された重大度以上の問題を返します。 |
OwaspTop10_2017 |
N/A | OWASP でトップ 10 のセキュリティー・リスクとして定義されている問題を返します。 |
SansTop25 |
N/A | SANS Institute でトップ 25 の重大エラーとして定義されている問題を返します。 |
EUGdpr_2016 |
N/A | アプリケーションが GDPR に準拠しない原因となる問題を返します。 |
CWE |
CWE ID のリスト | 指定された CWE ID に対応する問題を返します。 |
PCI |
N/A | アプリケーションが PCI データ・セキュリティー基準に準拠しない原因となる問題を返します。 |
HIPAA |
N/A | アプリケーションが HIPAA に準拠しない原因となる問題を返します。 |
ユーザー・インターフェースを使用したカスタム・ポリシーの作成
カスタム・ポリシーを作成するには:
- ダッシュボードで「ポリシー」をクリックし、「カスタム・ポリシーの作成」をクリックします。
- ポリシーに名前を付け、JSON 式として定義します。注: インターフェースを使用してポリシーをアプリケーションに関連付ける予定の場合、ポリシーを関連付けるときにパラメーターを定義することはできないため、ポリシーの作成時にすべてのパラメーターを定義する必要があります。API を使用してポリシーをアプリケーションに関連付ける予定の場合は、パラメーターを未定義のままにして、関連付ける際に値を定義できます。
例 1: カスタム・ベースライン・ポリシー
{ "Function":"StartDate", "Parameters":[ "2017-12-31T13:50Z" ] }
Example 2: カスタム CWE ポリシー
{ "Function":"CWE", "Parameters":[ 89, 90 ] }
例 3: 複合カスタム・ポリシー
{ "Operation":"And", "Expressions":[ { "Function":"StartDate", "Parameters":[ "2018-04-24T10:30Z" ] }, { "Function":"MinSeverity", "Parameters":[ "Medium" ] } ] }
例 4: CWE 89 および 90 を除外するカスタム・ポリシー
{ "Operation": "Not", "Expressions": [ { "Function": "CWE", "Parameters": [ 89, 90 ] } ] }
例 5: CWE 89 および 90 を除外するカスタム OWASP Top 10 ポリシー
{ "Operation": "And", "Expressions": [ { "Operation": "Not", "Expressions": [ { "Function": "CWE", "Parameters": [ 89, 90 ] } ] }, { "Function": "OwaspTop10_2017" } ] }
- 完了したら、「閉じる」をクリックします。
REST API を使用したカスタム・ポリシーの作成
REST API では、式ツリーを使用してポリシーを定義します。式ツリーは、単一の基本式、あるいは論理演算 (And, Or, Not
) を含む複数の式で構成できます。各基本式は、事前定義された関数とそのパラメーター (必要な場合) から構成されます。パラメーター値は、ポリシーの作成時に設定することも、$
を使用して未定義のままにしておくこともできます。パラメーターを未定義にすると、ユーザーがポリシーをアプリケーションに関連付ける際に値の入力が求められます。
例 1: カスタム・ベースライン・ポリシー
{
"Name": "Baseline",
"Predefined": true,
"Expression": {
"Function": "StartDate",
"Parameters": [
"$DATE"
]
}
}
Example 2: カスタム CWE ポリシー
{
"Name": "CWE policy",
"Expression": {
"Function": "CWE",
"Parameters": [
89,
90
]
}
}
例 3: 複合カスタム・ポリシー
このカスタム・ポリシーの例では、関数 StartDate
と MinSeverity
が演算 And
で組み込まれており、指定された日付以降に検出され、指定された最小重大度の問題のみが含まれるようになっています。
{
"Name": "MyPolicy",
"Predefined": false,
"Expression": {
"Operation": "And",
"Expressions": [
{
"Function": "StartDate",
"Parameters": [
"2018-04-24T10:30Z"
]
},
{
"Function": "MinSeverity",
"Parameters": [
"$minseverity"
]
}
]
}
}