imperva / imperva/imperva-sdk-python

docs example (on changing severity on 'Anti Google Hacking - 2' policy does not work from API

オープン
#44 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

主要言語
Python
スター
14
フォーク
10
PR マージ指標
30日以内にマージされた PR はありません

説明

This is the DOCs example:

`
MX Web Service Custom Policy Class

pol = mx.get_web_service_custom_policy("Anti Google Hacking - 2")
pol.Severity
u'high'
pol.Severity = 'medium'
pol.ApplyTo
[]
ws
<imperva_sdk 'WebService' Object - 'web service name'>
pol.ApplyTo = [ws]
pol.ApplyTo
[<imperva_sdk 'WebService' Object - 'web service name'>]

Create user defined copy of policy

pol_dict = dict(pol)
pol_dict['Name'] = 'user defined - %s' % pol_dict['Name']
mx.create_web_service_custom_policy(**pol_dict)
<imperva_sdk 'WebServiceCustomPolicy' Object - 'user defined - Anti Google Hacking - 2'>
`

In reality, one gets:

`

pol = mx.get_web_service_custom_policy("Anti Google Hacking - 2")

pol
Out[388]: <imperva_sdk 'WebServiceCustomPolicy' Object - 'Anti Google Hacking - 2'>

pol.Severity
Out[389]: 'high'

pol.Severity = 'medium'
Traceback (most recent call last):

File "", line 1, in
pol.Severity = 'medium'

File "/anaconda3/lib/python3.7/site-packages/imperva_sdk-0.2.0-py3.7.egg/imperva_sdk/WebServiceCustomPolicy.py", line 154, in Severity
self._connection._update_web_service_custom_policy(Name=self._Name, Parameter='severity', Value=Severity)

File "/anaconda3/lib/python3.7/site-packages/imperva_sdk-0.2.0-py3.7.egg/imperva_sdk/MxConnection.py", line 934, in _update_web_service_custom_policy
return WebServiceCustomPolicy._update_web_service_custom_policy(connection=self, Name=Name, Parameter=Parameter, Value=Value)

File "/anaconda3/lib/python3.7/site-packages/imperva_sdk-0.2.0-py3.7.egg/imperva_sdk/WebServiceCustomPolicy.py", line 337, in _update_web_service_custom_policy
connection._mx_api('PUT', '/conf/webServiceCustomPolicies/%s' % Name, data=json.dumps(body))

File "/anaconda3/lib/python3.7/site-packages/imperva_sdk-0.2.0-py3.7.egg/imperva_sdk/MxConnection.py", line 257, in _mx_api
raise MxException("MX returned errors - %s" % str(error_message))

MxException: MX returned errors - [{'description': 'This is a predefined ADC item that cannot be changed', 'error-code': 'IMP-10146'}]

`

Executed on latest release as of now.

コントリビューションガイド

コントリビューションガイドを開く

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

調査の方向性

文書化された custom-policy の例を imperva_sdk/WebServiceCustomPolicy.py と照合して確認し、特に Severity setter と update メソッド、および API リクエストが行われる MxConnection.py を確認してください。報告された API の動作に対して predefined-policy の更新を再現し、そのうえでドキュメントと SDK の動作のどちらに一貫性がないのかを判断し、修正後の例または処理を検証してください。

索引モデルが issue の本文から書いたものです。

評価

技術スタック
python
領域
api, documentation
issue の種類
バグ
難易度
3/5
見積もり時間
1〜2日
活発さ
停滞
明瞭さ
おおむね明確
初心者へのやさしさ
42/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。