SlideShare a Scribd company logo
1 of 28
Download to read offline
APIの概要	
各APIの説明と実行例	
2016.03.23	
SecureAssist	Enterprise	Portal	
APIガイド	
Version	3.0対応版
目次	
2	
*	本資料について	
*	SecureAssist	Enterprise	Portal	API概要	
	APIについて	
	API通信の流れ	
*	SecureAssist	Enterprise	Portal	各API説明	
	認証	
	プロジェクトのレポートの取得	
	プロジェクトの一覧の取得	
	アクティブな開発者の数の取得	
	スキャンされたプロジェクトの数の取得	
	プロジェクト内で見つかった問題の数を取得
	よく指摘される問題の一覧を取得	
	よく参照されるガイダンスの一覧を取得	
	
*	お問い合わせ
本資料について	
本資料では、SecureAssist	Enterprise	PortalのAPIに関わる、	
以下の範囲を取り扱います。	
–  APIの概要	
–  各APIの説明と実行例	
	
	
Enterprise	Portalおよび各IDE向けのPlug-in/Add-inの導入については、	
製品ダウンロードページ( hAps://secureassist.jp/downloads/ )の	
各製品の導入ガイドをご参照ください。	
3
SecureAssist	Enterprise	Portal	
API概要	
4
SecureAssist	Enterprise	Portal	API概要	
APIについて	
5	
SecureAssist	Enterprise	Portalは、外部のアプリケーションからアクセスしてEnterprise	Portalの	
レポート機能を利用するためのAPIを提供しています。	
	
提供しているAPIは次の通りです。	
	
機能	 リソースのURL例	
認証	 POST	{host}/api/auth	
プロジェクトのレポートの取得	 POST	{host}/api/report/project/{report	type	id}		
プロジェクトの一覧の取得	 GET	{host}/api/projects	
アクティブな開発者数の取得	 POST	{host}/api/report/acKveDevs/v1		
スキャンされたプロジェクトの数の取得	 POST	{host}/api/report/projects/v1	
プロジェクト内で見つかった問題の数の取得	 POST	{host}/api/report/v1/defects		
よく指摘される問題の一覧の取得	 POST	{host}/api/report/v1/defects/topn	
よく参照されるガイダンスの一覧の取得	 POST	{host}/api/report/v1/mostviewedrules	
Enterprise	PortalのAPIによる通信は、HTTPSを使用している場合のみ安全です。	
HTTPによる通信は安全でないことにご留意くだささい。
SecureAssist	Enterprise	Portal	API概要	
API通信の流れ	
6	
始めに、認証(auth)APIを呼び出してAuth-Tokenを取得します。	
この認証APIの呼び出しの際は、Enterprise	Portalのユーザー名とパスワードをパラメーターとして用います。	
	
以降は認証APIが返したAuth-Tokenを用いて、その他の各種データ取得APIを利用します。	
Enterprise	Portal	
認証(auth)	
Username,	Password	
Auth-Token	
Auth-Token,	その他パラメーター	
Auth-Token,	その他パラメーター	
データ	
データ	
データ取得API	
データ取得API	
認証	
取得	
取得
SecureAssist	Enterprise	Portal	
各API説明	
7
SecureAssist	Enterprise	Portal	各API説明	
認証(1)	
8	
各種データ取得APIを利用するのに必要なAuth-Tokenを取得するためのAPIです。	
Field	name	 Value	
X-Requested-By	 true	
X-Username	 Enterprise	Portalのユーザー名	
X-Password	 平文のパスワード	
Request	Header	
Field	name	 Value	
Content-Length	 0	
Date	 {Kmestampe}	(Auth-Tokenの有効期限)	
X-Auth-Token	 Auth-Tokenの文字列	
Response	Header	
Resource	URL	Example	:	POST	{host}/api/auth
SecureAssist	Enterprise	Portal	各API説明	
認証(2)	
9	
認証APIの実行例を紹介します。	
$ curl -X POST --header "X-Requested-By: true" --header "X-Username: username" --header "X-Password: PaSsWoRd"
-k https://example.com:8080/CSA_Server/api/auth --head
Resource	URL	Example	:	POST	{host}/api/auth	
HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
X-Auth-Token: u9dJQhQQl+cCaCSf uLn/R9CMeIUKLpuXQJei/fx0upE=
Content-Length: 0
Date: Tue, 01 Dec 2015 11:36:16 GMT
curlでのリクエスト実行例(表示の便宜上、行を途中で折り返しています)	
レスポンス例
SecureAssist	Enterprise	Portal	各API説明	
プロジェクトのレポートの取得(1)	
10	
指定したプロジェクトのレポートを取得するためのAPIです。	
Field	name	 Value	
X-Requested-By	 true	
Content-Type	 applicaKon/json	
X-Auth-Token	 Auth-Tokenの文字列	
Request	Header	
Field	name	 Value	
Content-Type	 text/csv	
Content-Length	 {content	length}	
Content-DisposiKon	 aAachment;	filename={file	name}.csv	
Date	 {Kmestamp}	
Response	Header	
Resource	URL	Example	:	POST	{host}/api/report/project/{report	type	id}*	
Response	BodyはCSVとなります。	
Request	Body	(JSON)	
Name	 Value	 補足	
startDate	 YYYY-MM-DD	 開始日(省略可能)	
endDate	 YYYY-MM-DD	 終了日(省略可能)	
projectName	 {プロジェクト名}	
*	{report	type	id}については次ページで説明します
SecureAssist	Enterprise	Portal	各API説明	
プロジェクトのレポートの取得(2)	
11	
Resource	URL	Example	:	POST	{host}/api/report/project/{report	type	id}	
{report	type	id}	 説明	
PorcolioSummaryReport	 プロジェクトごとの、見つかった問題の数、スキャンしたファイルの数、コードの行数のリストを取得します。	
ProjectReport	 スキャンされたすべてのファイルについて、見つかった問題の数、スキャンしたファイルの数、コードの行数、	
最後にスキャンを実行した開発者のリストを取得します。	
ProjectDefectReport	 プロジェクトごとの、見つかった問題に対応するすべてのルールのリストを取得します。	
GlobalDefectReport	 すべてのファイルについて、見つかった問題に対応するすべてのルールのリストを取得します。	
{report	type	id}には次のいずれかを指定します。	
次ページ以降で、それぞれの{report	type	id}について実行例を紹介します。
SecureAssist	Enterprise	Portal	各API説明	
プロジェクトのレポートの取得(3)	
12	
PorcolioSummaryReportの取得APIの実行例を紹介します。	
$ curl -X POST -d '{ "projectName": "ExampleProject001" }' --header "X-Requested-By: true" --header "Content-Type: application/json"
--header "X-Auth-Token: u9dJQhQQl+cCaCSfuLn/R9CMeIUKLpuXQJei/fx0upE=" -k https://example.com:8080/CSA_Server/api/report/project/PortfolioSummaryReport
Resource	URL	Example	:	POST	{host}/api/report/project/PorcolioSummaryReport	
Solution Name,Project Name,Last Project Scan Date,Total Number of Files,Successfully Scanned Files,Files with Errors,LOC,# High Issues,# Medium Issues,
# Low Issues,Total Number of Issues,Developer,# High (Suppressed),# Medium (Suppressed),# Low (Suppressed),Total Number of Suppressed Issues,
-----,ExampleProject001,20 Nov 2015 07:12:01 GMT,16,16,0,640,11,58,0,69,developer01@example.com,0,0,0,0,
curlでのリクエスト実行例(表示の便宜上、行を途中で折り返しています)	
レスポンス例(表示の便宜上、一行目を途中で折り返して、二行目との間に改行を追加しています)
SecureAssist	Enterprise	Portal	各API説明	
プロジェクトのレポートの取得(4)	
13	
ProjectReportの取得APIの実行例を紹介します。	
$ curl -X POST -d '{ "projectName": "ExampleProject001" }' --header "X-Requested-By: true" --header "Content-Type: application/json"
--header "X-Auth-Token: u9dJQhQQl+cCaCSfuLn/R9CMeIUKLpuXQJei/fx0upE=" -k https://example.com:8080/CSA_Server/api/report/project/ProjectReport	
Resource	URL	Example	:	POST	{host}/api/report/project/ProjectReport	
Solution Name,Project Name,File Path,Last Scan Date,LOC,# High Issues,# Medium Issues,# Low Issues,Total Number of Issues,Developer,# High (Suppressed),
# Medium (Suppressed),# Low (Suppressed),Total Number of Suppressed Issues,
----,ExampleProject001,WebContent/WEB-INF/glassfish-web.xml,20 Nov 2015 07:12:05 GMT,6,0,0,0,0,developer01@example.com,0,0,0,0,
----,ExampleProject001,src/com/asteriskresearch/secureassist002/Example001_backup001.java,20 Nov 2015 07:12:02 GMT,32,2,4,0,6,developer01@example.com,0,0,0,0,
----,ExampleProject001,src/com/asteriskresearch/secureassist002/Example003.java,20 Nov 2015 07:12:04 GMT,76,1,13,0,14,developer01@example.com,0,0,0,0,
----,ExampleProject001,src/com/asteriskresearch/secureassist/Example001_04.java,20 Nov 2015 07:12:05 GMT,46,0,4,0,4,developer01@example.com,0,0,0,0,
----,ExampleProject001,src/com/asteriskresearch/Util02.java,20 Nov 2015 07:12:04 GMT,25,0,0,0,0,developer01@example.com,0,0,0,0,
----,ExampleProject001,src/com/asteriskresearch/secureassist/Example001_03.java,20 Nov 2015 07:12:04 GMT,45,0,4,0,4,developer01@example.com,0,0,0,0,
----,ExampleProject001,src/com/asteriskresearch/secureassist002/Example001_backup003.java,20 Nov 2015 07:12:03 GMT,44,0,4,0,4,developer01@example.com,0,0,0,0,
----,ExampleProject001,src/com/asteriskresearch/Util01.java,20 Nov 2015 07:12:05 GMT,25,0,0,0,0,developer01@example.com,0,0,0,0,
----,ExampleProject001,src/com/asteriskresearch/sample/Example001.java,20 Nov 2015 07:12:04 GMT,63,3,2,0,5,developer01@example.com,0,0,0,0,
----,ExampleProject001,src/com/asteriskresearch/secureassist/Example001.java,20 Nov 2015 07:12:04 GMT,32,2,4,0,6,developer01@example.com,0,0,0,0,
----,ExampleProject001,src/com/asteriskresearch/secureassist/Example001_02.java,20 Nov 2015 07:12:05 GMT,44,0,4,0,4,developer01@example.com,0,0,0,0,
----,ExampleProject001,.settings/org.eclipse.wst.common.project.facet.core.xml,20 Nov 2015 07:12:05 GMT,12,0,0,0,0,developer01@example.com,0,0,0,0,
----,ExampleProject001,src/com/asteriskresearch/secureassist002/Example001.java,20 Nov 2015 07:12:03 GMT,44,0,4,0,4,developer01@example.com,0,0,0,0,
----,ExampleProject001,src/com/asteriskresearch/secureassist002/Example002.java,20 Nov 2015 07:12:03 GMT,72,1,9,0,10,developer01@example.com,0,0,0,0,
----,ExampleProject001,src/com/asteriskresearch/secureassist/Example001_01.java,20 Nov 2015 07:12:04 GMT,37,1,3,0,4,developer01@example.com,0,0,0,0,
----,ExampleProject001,src/com/asteriskresearch/secureassist002/Example001_backup002.java,20 Nov 2015 07:12:03 GMT,37,1,3,0,4,developer01@example.com,0,0,0,0,
curlでのリクエスト実行例(表示の便宜上、行を途中で折り返しています)	
レスポンス例(表示の便宜上、一行目を途中折り返して、二行目との間に改行を追加しています)
SecureAssist	Enterprise	Portal	各API説明	
プロジェクトのレポートの取得(5)	
14	
ProjectDefectReportの取得APIの実行例を紹介します。	
$ curl -X POST -d '{ "projectName": "ExampleProject001" }' --header "X-Requested-By: true" --header "Content-Type: application/json"
--header "X-Auth-Token: u9dJQhQQl+cCaCSfuLn/R9CMeIUKLpuXQJei/fx0upE=" -k https://example.com:8080/CSA_Server/api/report/project/ProjectDefectReport	
Resource	URL	Example	:	POST	{host}/api/report/project/ProjectDefectReport	
Solution Name,Project Name,Rulepack Name,Rulepack Version,Rule Id,Rule Title,Issue Category,Importance,Total Count (Unique),Total Suppression,Total Count,
-----,ExampleProject001,CSA Default Rulepack,2.4.1.20150918052011,CIGITAL-ERROR_HANDLING-001,Use of printStackTrace,Information Leakage,MEDIUM,16,0,16,
-----,ExampleProject001,CSA Default Rulepack,2.4.1.20150918052011,CIGITAL-SQL-002,SQL Injection,Query Injection,HIGH,4,0,4,
-----,ExampleProject001,CSA Default Rulepack,2.4.1.20150918052011,CIGITAL-HTTPRS-003,Untrusted data being used without validation,Validation and sanitization of untrusted data,MEDIUM,19,0,19,
-----,ExampleProject001,CSA Default Rulepack,2.4.1.20150918052011,CIGITAL-HARDCODED-PASSWORD-JAVA-01,Hardcoded password,Password Management,HIGH,4,0,4,
-----,ExampleProject001,CSA Default Rulepack,2.4.1.20150918052011,CIGITAL-SQL-001,SQL Injection,Query Injection,MEDIUM,16,0,18,
-----,ExampleProject001,CSA Default Rulepack,2.4.1.20150918052011,CIGITAL-PRH-001,Resource not closed in finally block,Proper Resource Handling,MEDIUM,7,0,7,
-----,ExampleProject001,CSA Default Rulepack,2.4.1.20150918052011,CIGITAL-OUTPUT-002,Unsanitized data written to an output web page,Cross-Site Scripting,HIGH,3,0,3,
curlでのリクエスト実行例(表示の便宜上、行を途中で折り返しています)	
レスポンス例
SecureAssist	Enterprise	Portal	各API説明	
プロジェクトのレポートの取得(6)	
15	
GlobalDefectReportの取得APIの実行例を取得します。	
$ curl -X POST -d '{ "projectName": "ExampleProject001" }' --header "X-Requested-By: true" --header "Content-Type: application/json"
--header "X-Auth-Token: u9dJQhQQl+cCaCSfuLn/R9CMeIUKLpuXQJei/fx0upE=" -k https://example.com:8080/CSA_Server/api/report/project/GlobalDefectReport	
Resource	URL	Example	:	POST	{host}/api/report/project/GlobalDefectReport	
Rulepack Name,Rulepack Version,Rule Id,Rule Title,Issue Category,Importance,Total Count (Unique),Total Suppression,Total Count,
CSA Default Rulepack,2.4.1.20150918052011,CIGITAL-ERROR_HANDLING-001,Use of printStackTrace,Information Leakage,MEDIUM,16,0,16,
CSA Default Rulepack,2.4.1.20150918052011,CIGITAL-SQL-002,SQL Injection,Query Injection,HIGH,4,0,4,
CSA Default Rulepack,2.4.1.20150918052011,CIGITAL-HTTPRS-003,Untrusted data being used without validation,Validation and sanitization of untrusted data,MEDIUM,19,0,19,
CSA Default Rulepack,2.4.1.20150918052011,CIGITAL-SQL-001,SQL Injection,Query Injection,MEDIUM,16,0,18,
CSA Default Rulepack,2.4.1.20150918052011,CIGITAL-HARDCODED-PASSWORD-JAVA-01,Hardcoded password,Password Management,HIGH,4,0,4,
CSA Default Rulepack,2.4.1.20150918052011,CIGITAL-PRH-001,Resource not closed in finally block,Proper Resource Handling,MEDIUM,7,0,7,
CSA Default Rulepack,2.4.1.20150918052011,CIGITAL-OUTPUT-002,Unsanitized data written to an output web page,Cross-Site Scripting,HIGH,3,0,3,
curlでのリクエスト実行例(表示の便宜上、行を途中で折り返しています)	
レスポンス例
SecureAssist	Enterprise	Portal	各API説明	
プロジェクトの一覧の取得(1)	
16	
指定したプロジェクトの一覧を取得するためのAPIです。	
Field	name	 Value	
X-Requested-By	 true	
X-Auth-Token	 Auth-Tokenの文字列	
Request	Header	
Field	name	 Value	
Content-Type	 applicaKon/json	
Content-Length	 {content	length}	
Date	 {Kmestamp}	
Response	Header	
Resource	URL	Example	:	GET	{host}/api/projects	
Name	 Value	
status	 successまたはfailure	
count	 resultに含まれるプロジェクトの数	
result	 nameとdescripKonからなる	
プロジェクトのオブジェクトの配列	
Response	Body	(JSON)
SecureAssist	Enterprise	Portal	各API説明	
プロジェクトの一覧の取得(2)	
17	
プロジェクトの一覧の取得APIの実行例を紹介します。	
$ curl -X GET --header "X-Requested-By: true" --header "X-Auth-Token: u9dJQhQQl+cCaCSfuLn/R9CMeIUKLpuXQJei/fx0upE=" --header "Content-Type: application/json"
-k https://example.com:8080/CSA_Server/api/projects
Resource	URL	Example	:	GET	{host}/api/projects	
{"status":"success","count":4,
"result":[
{"name":"MyWiki","description":""},
{"name":"MyPress","description":""},
{"name":"ExampleProject001","description":""},
{"name":"ExampleProject002","description":""}
]}
curlでのリクエスト実行例(表示の便宜上、行を途中で折り返しています)	
レスポンス例(表示の便宜上、改行とインデントを追加しています)
SecureAssist	Enterprise	Portal	各API説明	
アクティブな開発者の数の取得(1)	
18	
アクティブな開発者の数を取得するためのAPIです。	
Field	name	 Value	
X-Requested-By	 true	
Content-Type	 applicaKon/json	
X-Auth-Token	 Auth-Tokenの文字列	
Request	Header	
Field	name	 Value	
Content-Type	 applicaKon/json	
Content-Length	 {content	length}	
Date	 {Kmestamp}	
Response	Header	
Resource	URL	Example	:	POST	{host}/api/report/acKveDevs/v1	
Request	Body(JSON)	
Name	 Value	 補足	
startDate	 YYYY-MM-DD	 開始日(省略可能)	
endDate	 YYYY-MM-DD	 終了日(省略可能)	
Name	 Value	
userCount	 アクティブな開発者の数	
Response	Body	(JSON)
SecureAssist	Enterprise	Portal	各API説明	
アクティブな開発者の数の取得(2)	
19	
アクティブな開発者の数の取得APIの実行例を紹介します。	
$ curl -X POST --header "X-Requested-By: true" --header "X-Auth-Token: u9dJQhQQl+cCaCSfuLn/R9CMeIUKLpuXQJei/fx0upE=" --header "Content-Type: application/json"
-d '{ "startDate": "2015-11-01", "endDate": "2015-11-30" }' -k https://example.com:8080/CSA_Server/api/report/activeDevs/v1
Resource	URL	Example	:	POST	{host}/api/report/acKveDevs/v1	
{"userCount":2}
curlでのリクエスト実行例(表示の便宜上、行を途中で折り返しています)	
レスポンス例
SecureAssist	Enterprise	Portal	各API説明	
スキャンされたプロジェクトの数の取得(1)	
20	
スキャンされたプロジェクトの数を取得するためのAPIです。	
Field	name	 Value	
X-Requested-By	 true	
Content-Type	 applicaKon/json	
X-Auth-Token	 Auth-Tokenの文字列	
Request	Header	
Field	name	 Value	
Content-Type	 applicaKon/json	
Content-Length	 {content	length}	
Date	 {Kmestamp}	
Response	Header	
Resource	URL	Example	:	POST	{host}/api/report/projects/v1	
Request	Body(JSON)	
Name	 Value	 補足	
startDate	 YYYY-MM-DD	 開始日(省略可能)	
endDate	 YYYY-MM-DD	 終了日(省略可能)	
type	 scannedまたはnoscanned	
Name	 Value	
projectCount	 対象のプロジェクトの数	
Response	Body	(JSON)
SecureAssist	Enterprise	Portal	各API説明	
スキャンされたプロジェクトの数の取得(2)	
21	
スキャンされたプロジェクト数の取得APIの実行例を取得します。	
$ curl -X POST --header "X-Requested-By: true" --header "X-Auth-Token: u9dJQhQQl+cCaCSfuLn/R9CMeIUKLpuXQJei/fx0upE=" --header "Content-Type: application/json"
-d '{ "type": "scanned", "startDate": "2015-11-01", "endDate": "2015-11-30" }' -k http://localhost:8080/CSA_Server/api/report/projects/v1
Resource	URL	Example	:	POST	{host}/api/projects	
{"projectCount":2}
curlでのリクエスト実行例(表示の便宜上、行を途中で折り返しています)	
	
レスポンス例
SecureAssist	Enterprise	Portal	各API説明	
プロジェクト内で見つかった問題の数の取得(1)	
22	
プロジェクト内で見つかった問題の数を取得するためのAPIです。	
Field	name	 Value	
X-Requested-By	 true	
Content-Type	 applicaKon/json	
X-Auth-Token	 Auth-Tokenの文字列	
Request	Header	
Field	name	 Value	
Content-Type	 applicaKon/json	
Content-Length	 {content	length}	
Date	 {Kmestamp}	
Response	Header	
Resource	URL	Example	:	POST	{host}	/api/report/v1/defects	
Request	Body(JSON)	
Name	 Value	 補足	
startDate	 YYYY-MM-DD	 開始日(省略可能)	
endDate	 YYYY-MM-DD	 終了日(省略可能)	
meta	 {"key1":	"val1",	"key2":	"val2"}	
project	 プロジェクト名	
Name	 Value	
defect-hi	 Highと検出された問題の数	
defect-med	 Mediumと検出された問題の数	
defect-lo	 Lowと検出された問題の数	
loc	 コードの行数	
date	 日付	
Response	Body	(JSON)	
この各項目を持つ要素を "results"	の配列として返します。	
meta	と	project	は、どちらか一方を指定します。
SecureAssist	Enterprise	Portal	各API説明	
プロジェクト内で見つかった問題の数の取得(2)	
23	
プロジェクト内で見つかった問題の数の取得APIの実行例を取得します。	
$ curl -X POST --header "X-Requested-By: true" --header "X-Auth-Token: u9dJQhQQl+cCaCSfuLn/R9CMeIUKLpuXQJei/fx0upE=" --header "Content-Type: application/json"
-d '{ "startDate": "2016-03-15", "endDate": "2016-03-17", "project":"ProjectFoo"}' -k http://localhost:8080/CSA_Server/api/report/v1/defects
Resource	URL	Example	:	POST	{host}	/api/report/v1/defects	
{"results":[
{"defect-hi":14,
"defect-med":1,
"defect-lo":73,
"loc":18303,
"date":"2016-03-17"}
]}
curlでのリクエスト実行例(表示の便宜上、行を途中で折り返しています)	
	
レスポンス例(表示の便宜上、改行とインデントを追加しています)
SecureAssist	Enterprise	Portal	各API説明	
よく指摘される問題の一覧の取得(1)	
24	
よく指摘される問題の一覧を取得するためのAPIです。	
Field	name	 Value	
X-Requested-By	 true	
Content-Type	 applicaKon/json	
X-Auth-Token	 Auth-Tokenの文字列	
Request	Header	
Field	name	 Value	
Content-Type	 applicaKon/json	
Content-Length	 {content	length}	
Date	 {Kmestamp}	
Response	Header	
Resource	URL	Example	:	POST	{host}	/api/report/v1/defects/topn	
Request	Body(JSON)	
Name	 Value	 補足	
startDate	 YYYY-MM-DD	 開始日(省略可能)	
endDate	 YYYY-MM-DD	 終了日(省略可能)	
meta	 {"key1":	"val1",	"key2":	"val2"}	
project	 プロジェクト名	
results	 取得する数(最小値は	1)	
Name	 Value	
rule_id	 検出されたruleのid	
count	 ruleの検出された数	
Response	Body	(JSON)	
この各項目を持つ要素を	"top_issues"	の配列として返します。	
meta	と	project	は、どちらか一方を指定します。
SecureAssist	Enterprise	Portal	各API説明	
よく指摘される問題の一覧の取得(2)	
25	
よく指摘される問題の一覧の取得APIの実行例を取得します。	
$ curl -X POST --header "X-Requested-By: true" --header "X-Auth-Token: u9dJQhQQl+cCaCSfuLn/R9CMeIUKLpuXQJei/fx0upE=" --header "Content-Type: application/json"
-d '{ "startDate": "2016-03-15", "endDate": "2016-03-17", "project":"ProjectFoo", "results":7}' -k http://localhost:8080/CSA_Server/api/report/v1/defects/topn
Resource	URL	Example	:	POST	{host}	/api/report/v1/defects/topn	
{"top_issues":[
{"rule_id":"CSA Default Rulepack_ver_3.0.0.20160225074712-CIGITAL-JSP-COMMENT-001","count":144},
{"rule_id":"CSA Default Rulepack_ver_3.0.0.20160225074712-SEC-SS-FILTER-2","count":14},
{"rule_id":"CSA Default Rulepack_ver_3.0.0.20160225074712-SEC-SS-FILTER-4","count":6},
{"rule_id":"CSA Default Rulepack_ver_3.0.0.20160225074712-CIGITAL-HARDCODED-PASSWORD-JAVA-01","count":4},
{"rule_id":"CSA Default Rulepack_ver_3.0.0.20160225074712-CIGITAL-JSP-PRIVACY-001","count":4},
{"rule_id":"CSA Default Rulepack_ver_3.0.0.20160225074712-CIGITAL-JSP-HIDDEN_FIELD-001","count":2},
{"rule_id":"CSA Default Rulepack_ver_3.0.0.20160225074712-CIGITAL-XML-SESSION-001","count":2}
]}
curlでのリクエスト実行例(表示の便宜上、行を途中で折り返しています)	
	
レスポンス例(表示の便宜上、改行とインデントを追加しています)
SecureAssist	Enterprise	Portal	各API説明	
よく参照されるガイダンスの一覧の取得(1)	
26	
よく指摘される問題の一覧を取得するためのAPIです。	
Field	name	 Value	
X-Requested-By	 true	
Content-Type	 applicaKon/json	
X-Auth-Token	 Auth-Tokenの文字列	
Request	Header	
Field	name	 Value	
Content-Type	 applicaKon/json	
Content-Length	 {content	length}	
Date	 {Kmestamp}	
Response	Header	
Resource	URL	Example	:	POST	{host}	/api/report/v1/mostviewedrules	
Request	Body(JSON)	
Name	 Value	 補足	
startDate	 YYYY-MM-DD	 開始日(省略可能)	
endDate	 YYYY-MM-DD	 終了日(省略可能)	
meta	 {"key1":	"val1",	"key2":	"val2"}	
project	 プロジェクト名	
user-group	 グループ名	
Name	 Value	
rule_id	 検出されたルール	
guidance	 参照されたガイダンス	
Response	Body	(JSON)	
この各項目を持つ要素を "results"	の配列として返します。	
meta	と	project	と	user-group	は、どれか一つを指定します。
SecureAssist	Enterprise	Portal	各API説明	
よく参照されるガイダンスの一覧の取得(2)	
27	
よく参照されるガイダンスの一覧の取得APIの実行例を取得します。	
$ curl -X POST --header "X-Requested-By: true" --header "X-Auth-Token: u9dJQhQQl+cCaCSfuLn/R9CMeIUKLpuXQJei/fx0upE=" --header "Content-Type: application/json"
-d '{ "startDate": "2016-03-15", "endDate": "2016-03-17", "project":"ProjectFoo"}' -k http://localhost:8080/CSA_Server/api/report/v1/mostviewedrules
Resource	URL	Example	:	POST{host}	/api/report/v1/mostviewedrules	
{"results":[
{"rule_id":"CSA Default Rulepack_ver_3.0.0.20160225074712-CIGITAL-JSP-PRIVACY-001",
"guidance":"CSA Default Rulepack_ver_3.0.0.20160225074712/default/standards/general-data-validation-trust-boundaries.xml",
"num_viewed":1},
{"rule_id":"CSA Default Rulepack_ver_3.0.0.20160225074712-CIGITAL-HARDCODED-PASSWORD-JAVA-01",
"guidance":"CSA Default Rulepack_ver_3.0.0.20160225074712/default/standards/hardcoded-password.xml",
"num_viewed":1}
]}
curlでのリクエスト実行例(表示の便宜上、行を途中で折り返しています)	
	
レスポンス例(表示の便宜上、改行とインデントを追加しています)
お問い合わせ	
28	
本資料についてのお問い合わせ	
support@rsrch.jp	
パートナーシップ・提携	 partners@rsrch.jp	
トレーニング・研修	 edu@rsrch.jp	
サービス・プロダクトのご購入	 sales@rsrch.jp	
ご購入後のサポート	 support@rsrch.jp	
広報・取材依頼	 press@rsrch.jp	
その他のお問い合わせ	
株式会社アスタリスク・リサーチ	
Asterisk	Research,	Inc.	
hAps://www.asteriskresearch.com/

More Related Content

What's hot

OpenStack-ansibleで作るOpenStack HA環境 Mitaka版
OpenStack-ansibleで作るOpenStack HA環境 Mitaka版OpenStack-ansibleで作るOpenStack HA環境 Mitaka版
OpenStack-ansibleで作るOpenStack HA環境 Mitaka版
VirtualTech Japan Inc.
 

What's hot (20)

Mirantis超簡単Fuel Openstack インストール
Mirantis超簡単Fuel Openstack インストールMirantis超簡単Fuel Openstack インストール
Mirantis超簡単Fuel Openstack インストール
 
Fuelを利用したOpenStack簡単セットアップ
Fuelを利用したOpenStack簡単セットアップFuelを利用したOpenStack簡単セットアップ
Fuelを利用したOpenStack簡単セットアップ
 
OpenStack QuickStart - Icehouse
OpenStack QuickStart - IcehouseOpenStack QuickStart - Icehouse
OpenStack QuickStart - Icehouse
 
OpenStack構築手順書Mitaka版 (期間限定公開)
OpenStack構築手順書Mitaka版 (期間限定公開)OpenStack構築手順書Mitaka版 (期間限定公開)
OpenStack構築手順書Mitaka版 (期間限定公開)
 
WPSCanによるWordPressの脆弱性スキャン
WPSCanによるWordPressの脆弱性スキャンWPSCanによるWordPressの脆弱性スキャン
WPSCanによるWordPressの脆弱性スキャン
 
OpenStackに必要な技術スキルとは
OpenStackに必要な技術スキルとはOpenStackに必要な技術スキルとは
OpenStackに必要な技術スキルとは
 
OpenStackトラブルシューティング入門
OpenStackトラブルシューティング入門OpenStackトラブルシューティング入門
OpenStackトラブルシューティング入門
 
OpenStack Liberty をインストールしてみた
OpenStack Liberty をインストールしてみたOpenStack Liberty をインストールしてみた
OpenStack Liberty をインストールしてみた
 
OpenStackってどうよ?
OpenStackってどうよ?OpenStackってどうよ?
OpenStackってどうよ?
 
20160525_HelionLifecycleManager
20160525_HelionLifecycleManager20160525_HelionLifecycleManager
20160525_HelionLifecycleManager
 
【Cisco Data Center Forum 2015】 Cisco UCSと共に挑むクラウド基盤構築 ~アルとタスかるクラウドになるために~
【Cisco Data Center Forum 2015】 Cisco UCSと共に挑むクラウド基盤構築 ~アルとタスかるクラウドになるために~【Cisco Data Center Forum 2015】 Cisco UCSと共に挑むクラウド基盤構築 ~アルとタスかるクラウドになるために~
【Cisco Data Center Forum 2015】 Cisco UCSと共に挑むクラウド基盤構築 ~アルとタスかるクラウドになるために~
 
Mirantis 社のご紹介 by ASEANLABS, Inc.
Mirantis 社のご紹介 by ASEANLABS, Inc.Mirantis 社のご紹介 by ASEANLABS, Inc.
Mirantis 社のご紹介 by ASEANLABS, Inc.
 
RapidMinerのインストール【Windows 7】
RapidMinerのインストール【Windows 7】RapidMinerのインストール【Windows 7】
RapidMinerのインストール【Windows 7】
 
知らないと地味にハマるOpen stackインストール時の注意点
知らないと地味にハマるOpen stackインストール時の注意点知らないと地味にハマるOpen stackインストール時の注意点
知らないと地味にハマるOpen stackインストール時の注意点
 
【Interop Tokyo 2015】 Sec 01: 「全部のせ+1Tbps対応予定」 ネットワーク セキュリティの最終形
【Interop Tokyo 2015】 Sec 01: 「全部のせ+1Tbps対応予定」 ネットワーク セキュリティの最終形【Interop Tokyo 2015】 Sec 01: 「全部のせ+1Tbps対応予定」 ネットワーク セキュリティの最終形
【Interop Tokyo 2015】 Sec 01: 「全部のせ+1Tbps対応予定」 ネットワーク セキュリティの最終形
 
Ubuntu OpenStack Installer を使った1Node OpenStack
Ubuntu OpenStack Installer を使った1Node OpenStackUbuntu OpenStack Installer を使った1Node OpenStack
Ubuntu OpenStack Installer を使った1Node OpenStack
 
【OpenStack共同検証ラボ】OpenStack監視・ログ分析基盤の作り方 - OpenStack最新情報セミナー(2016年7月)
【OpenStack共同検証ラボ】OpenStack監視・ログ分析基盤の作り方 - OpenStack最新情報セミナー(2016年7月)【OpenStack共同検証ラボ】OpenStack監視・ログ分析基盤の作り方 - OpenStack最新情報セミナー(2016年7月)
【OpenStack共同検証ラボ】OpenStack監視・ログ分析基盤の作り方 - OpenStack最新情報セミナー(2016年7月)
 
OpenStackを使用するメリット
OpenStackを使用するメリットOpenStackを使用するメリット
OpenStackを使用するメリット
 
OpenStack Now!
OpenStack Now!OpenStack Now!
OpenStack Now!
 
OpenStack-ansibleで作るOpenStack HA環境 Mitaka版
OpenStack-ansibleで作るOpenStack HA環境 Mitaka版OpenStack-ansibleで作るOpenStack HA環境 Mitaka版
OpenStack-ansibleで作るOpenStack HA環境 Mitaka版
 

Similar to SecureAssist Enterprise Portal APIガイド

Struts2を始めよう!
Struts2を始めよう!Struts2を始めよう!
Struts2を始めよう!
Shinpei Ohtani
 

Similar to SecureAssist Enterprise Portal APIガイド (20)

Osaka-Meetup-Sep2016
Osaka-Meetup-Sep2016Osaka-Meetup-Sep2016
Osaka-Meetup-Sep2016
 
Testing and packaging WebRTC Stack
Testing and packaging WebRTC StackTesting and packaging WebRTC Stack
Testing and packaging WebRTC Stack
 
XML と PHP のイケナイ関係 (セキュリティ的な意味で) -Introduction of XXE attack and XML Bomb with...
XML と PHP のイケナイ関係 (セキュリティ的な意味で) -Introduction of XXE attack and XML Bomb with...XML と PHP のイケナイ関係 (セキュリティ的な意味で) -Introduction of XXE attack and XML Bomb with...
XML と PHP のイケナイ関係 (セキュリティ的な意味で) -Introduction of XXE attack and XML Bomb with...
 
最近のKeycloakのご紹介 ~クライアントポリシーとFAPI~
最近のKeycloakのご紹介 ~クライアントポリシーとFAPI~最近のKeycloakのご紹介 ~クライアントポリシーとFAPI~
最近のKeycloakのご紹介 ~クライアントポリシーとFAPI~
 
The road of Apache CloudStack Contributor (Translation and Patch)
The road of Apache CloudStack Contributor (Translation and Patch)The road of Apache CloudStack Contributor (Translation and Patch)
The road of Apache CloudStack Contributor (Translation and Patch)
 
Interop2016-openstack-user-group-mizuno
Interop2016-openstack-user-group-mizunoInterop2016-openstack-user-group-mizuno
Interop2016-openstack-user-group-mizuno
 
Workspace ONE PoC Guide Chapter 3 Office365 Integration v1.1
Workspace ONE PoC Guide Chapter 3 Office365 Integration v1.1Workspace ONE PoC Guide Chapter 3 Office365 Integration v1.1
Workspace ONE PoC Guide Chapter 3 Office365 Integration v1.1
 
Struts2を始めよう!
Struts2を始めよう!Struts2を始めよう!
Struts2を始めよう!
 
Keycloak入門
Keycloak入門Keycloak入門
Keycloak入門
 
【SSS】提案書サンプル
【SSS】提案書サンプル【SSS】提案書サンプル
【SSS】提案書サンプル
 
jQuery と MVC で実践する標準志向 Web 開発
jQuery と MVC で実践する標準志向 Web 開発jQuery と MVC で実践する標準志向 Web 開発
jQuery と MVC で実践する標準志向 Web 開発
 
20170809 AWS code series
20170809 AWS code series20170809 AWS code series
20170809 AWS code series
 
20181219 Introduction of Incident Response in AWS for Beginers
20181219 Introduction of Incident Response in AWS for Beginers20181219 Introduction of Incident Response in AWS for Beginers
20181219 Introduction of Incident Response in AWS for Beginers
 
OpenStack本番環境の作り方 - Interop 2016
OpenStack本番環境の作り方 - Interop 2016OpenStack本番環境の作り方 - Interop 2016
OpenStack本番環境の作り方 - Interop 2016
 
[TL04] .NET 15 周年の今こそ考えるクラウドネイティブ アプリケーションと .NET の活用
[TL04] .NET 15 周年の今こそ考えるクラウドネイティブ アプリケーションと .NET の活用[TL04] .NET 15 周年の今こそ考えるクラウドネイティブ アプリケーションと .NET の活用
[TL04] .NET 15 周年の今こそ考えるクラウドネイティブ アプリケーションと .NET の活用
 
Vco rest api_overview_rev02
Vco rest api_overview_rev02Vco rest api_overview_rev02
Vco rest api_overview_rev02
 
Taming robotframework
Taming robotframeworkTaming robotframework
Taming robotframework
 
Ruby開発者のためのHeroku入門
Ruby開発者のためのHeroku入門Ruby開発者のためのHeroku入門
Ruby開発者のためのHeroku入門
 
AWS Black Belt Tech シリーズ 2015 - AWS Elastic Beanstalk
AWS Black Belt Tech シリーズ 2015 - AWS Elastic BeanstalkAWS Black Belt Tech シリーズ 2015 - AWS Elastic Beanstalk
AWS Black Belt Tech シリーズ 2015 - AWS Elastic Beanstalk
 
Elastic on Azure Integration & Building React UI Based Search App Using Azure...
Elastic on Azure Integration & Building React UI Based Search App Using Azure...Elastic on Azure Integration & Building React UI Based Search App Using Azure...
Elastic on Azure Integration & Building React UI Based Search App Using Azure...
 

SecureAssist Enterprise Portal APIガイド