Firewall
Alterar regra de domínio
Alterar uma regra de firewall aplicada a um domínio.
PUT /v1/firewall/{dominio}/{id}
$ curl -i https://api.gocache.com.br/v1/firewall/seudominio.com.br/aXBfYWRkcmVzcy1kZWZhdWx0fGlwX2FkZHJlc3N8MS4xLjEuMQ== \
-X PUT \
-H 'GoCache-Token:seu_token' \
-d 'match[ip_address]=1.1.1.1' \
-d 'action[firewall]=accept'
<?php
$ch = curl_init("https://api.gocache.com.br/v1/firewall/seudominio.com.br/aXBfYWRkcmVzcy1kZWZhdWx0fGlwX2FkZHJlc3N8MS4xLjEuMQ==");
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PUT");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_HTTPHEADER, array("GoCache-Token: seu_token"));
$urls = array(
"match[ip_address]=1.1.1.1",
"action[firewall]=accept"
);
curl_setopt($ch, CURLOPT_POSTFIELDS, implode("&", $urls));
$response = curl_exec($ch);
$statusCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
?>
Parâmetros
Campo | Opcional | Tipo | Descrição |
---|---|---|---|
action | Object | Ação | |
firewall | String | Blacklist ou Whitelist Valores permitidos: "accept", "block" |
Exemplo de sucesso
HTTP/1.1 200 OK
{
"response": {
"msg": "Success"
}
}
<?php
if( $statusCode == 200 ) {
echo("Sucesso!\n");
$obj = json_decode($response);
echo($obj->response->msg);
}
?>
Alterar regra global
Alterar uma regra de firewall global. Regras globais são aplicadas a todos os domínios de um usuário.
PUT /v1/firewall/{id}
$ curl -i https://api.gocache.com.br/v1/firewall/c2VndW5kYSByZWdyYSBkZSBmaXJld2FsbCAgICAgICAgICAgICAgICAgICAgIA== \
-X PUT \
-H 'GoCache-Token:seu_token' \
-d 'match[ip_address]=1.1.1.1' \
-d 'action[firewall]=block'
<?php
$ch = curl_init("https://api.gocache.com.br/v1/firewall/c2VndW5kYSByZWdyYSBkZSBmaXJld2FsbCAgICAgICAgICAgICAgICAgICAgIA==");
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PUT");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_HTTPHEADER, array("GoCache-Token: seu_token"));
$urls = array(
"match[ip_address]=1.1.1.1",
"action[firewall]=accept"
);
curl_setopt($ch, CURLOPT_POSTFIELDS, implode("&", $urls));
$response = curl_exec($ch);
$statusCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
?>
Parâmetros
Campo | Opcional | Tipo | Descrição |
---|---|---|---|
match | Object | Critério da regra | |
ip_address | ✓ | String | Endereço IP de origem ou range |
country | ✓ | String | País de origem Valores permitidos: "BR", "US", "CN", "RU", "..." |
continent | ✓ | String | Continente de origem Valores permitidos: "SA", "NA", "OC", "EU", "AF", "AS" |
host_referer | ✓ | String | Endereço da página web de origem |
uri | ✓ | String | URI. Ex: /sistema |
user_agent | ✓ | String | User Agent. Ex: Mozilla 5.0 |
origin_asn | ✓ | Number | ASN do acessante, representado apenas por números |
action | Object | Ação | |
firewall | String | Blacklist ou Whitelist Valores permitidos: "accept", "block" |
Exemplo de sucesso
HTTP/1.1 200 OK
{
"response": {
"msg": "Success"
}
}
<?php
if( $statusCode == 200 ) {
echo("Sucesso!\n");
$obj = json_decode($response);
echo($obj->response->msg);
}
?>
Criar regra de domínio
Criar uma regra de firewall que será aplicada a um domínio.
POST /v1/firewall/{dominio}
$ curl -i https://api.gocache.com.br/v1/firewall/seudominio.com.br \
-X POST \
-H 'GoCache-Token:seu_token' \
-d 'match[ip_address]=1.1.1.1' \
-d 'action[firewall]=block'
<?php
$ch = curl_init("https://api.gocache.com.br/v1/firewall/seudominio.com.br");
curl_setopt($ch, CURLOPT_POST, TRUE);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_HTTPHEADER, array("GoCache-Token: seu_token"));
$urls = array(
"match[ip_address]=1.1.1.1",
"action[firewall]=block"
);
curl_setopt($ch, CURLOPT_POSTFIELDS, implode("&", $urls));
$response = curl_exec($ch);
$statusCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
?>
Parâmetros
Campo | Opcional | Tipo | Descrição |
---|---|---|---|
match | Object | Critério da regra | |
ip_address | ✓ | String | Endereço IP de origem ou range |
country | ✓ | String | País de origem Valores permitidos: "BR", "US", "CN", "RU", "..." |
continent | ✓ | String | Continente de origem Valores permitidos: "SA", "NA", "OC", "EU", "AF", "AS" |
host_referer | ✓ | String | Endereço da página web de origem |
uri | ✓ | String | URI. Ex: /sistema |
user_agent | ✓ | String | User Agent. Ex: Mozilla 5.0 |
origin_asn | ✓ | Number | ASN do acessante, representado apenas por números |
action | Object | Ação | |
firewall | String | Blacklist ou Whitelist Valores permitidos: "accept", "block" |
Exemplo de sucesso
HTTP/1.1 200 OK
{
"response": {
"id": "aXBfYWRkcmVzcy1kZWZhdWx0fGlwX2FkZHJlc3N8MS4xLjEuMQ=="
}
}
<?php
if( $statusCode == 200 ) {
echo("Sucesso!\n");
$obj = json_decode($response);
echo("ID da regra criada: " . $obj->response->id);
}
?>
Criar regra global
Criar uma regra de firewall global. Regras globais são aplicadas a todos os domínios de um usuário.
POST /v1/firewall
$ curl -i https://api.gocache.com.br/v1/firewall \
-X POST \
-H 'GoCache-Token:seu_token' \
-d 'match[ip_address]=1.1.1.1' \
-d 'action[firewall]=block'
<?php
$ch = curl_init("https://api.gocache.com.br/v1/firewall");
curl_setopt($ch, CURLOPT_POST, TRUE);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_HTTPHEADER, array("GoCache-Token: seu_token"));
$urls = array(
"match[ip_address]=1.1.1.1",
"action[firewall]=block"
);
curl_setopt($ch, CURLOPT_POSTFIELDS, implode("&", $urls));
$response = curl_exec($ch);
$statusCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
?>
Parâmetros
Campo | Opcional | Tipo | Descrição |
---|---|---|---|
match | Object | Critério da regra | |
ip_address | ✓ | String | Endereço IP de origem ou range |
country | ✓ | String | País de origem Valores permitidos: "BR", "US", "CN", "RU", "..." |
continent | ✓ | String | Continente de origem Valores permitidos: "SA", "NA", "OC", "EU", "AF", "AS" |
host_referer | ✓ | String | Endereço da página web de origem |
uri | ✓ | String | URI. Ex: /sistema |
user_agent | ✓ | String | User Agent. Ex: Mozilla 5.0 |
origin_asn | ✓ | Number | ASN do acessante, representado apenas por números |
action | Object | Ação | |
firewall | String | Blacklist ou Whitelist Valores permitidos: "accept", "block" |
Exemplo de sucesso
HTTP/1.1 200 OK
{
"response": {
"id": "cmVncmEgZGUgZmlyZXdhbGwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA=="
}
}
<?php
if( $statusCode == 200 ) {
echo("Sucesso!\n");
$obj = json_decode($response);
echo("ID da regra criada: " . $obj->response->id);
}
?>
Listar regras de domínio
Listar as regras de firewall de um domínio.
GET /v1/firewall/{dominio}
$ curl -i https://api.gocache.com.br/v1/firewall/meudominio.com.br \
-X GET \
-H 'GoCache-Token:seu_token'
<?php
$ch = curl_init("https://api.gocache.com.br/v1/firewall/meudominio.com.br");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_HTTPHEADER, array("GoCache-Token: seu_token"));
$response = curl_exec($ch);
$statusCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
?>
Exemplo de sucesso
HTTP/1.1 200 OK
{
"response": {
"rules": [{
"match": {
"ip_address": "1.1.1.1"
},
"action": {
"firewall": "block"
},
"id": "aXBfYWRkcmVzcy1kZWZhdWx0fGlwX2FkZHJlc3N8MS4xLjEuMQ==",
"metadata": {
"applied_to": "domain"
}
},
{
"match": {
"country": "BR"
},
"action": {
"firewall": "accept"
},
"id": "cmVncmEgZGUgZmlyZXdhbGwgICAgICAgICAgICAgICAgICAgICAgICAgICAgVc==",
"metadata": {
"applied_to": "all"
}
}]
}
}
<?php
if( $statusCode == 200 ) {
echo("Sucesso!\n");
$obj = json_decode($response);
foreach($obj->response->rules as $rule) {
echo("\n<br /><br />\n");
echo("Regra de firewall:" . "<br />\n");
echo("ID: " . $rule->id . "<br />\n");
foreach($rule->match as $match_type => $match_value) {
echo("Match " . $match_type . ": " . $match_value . "<br />\n");
}
echo("Action: " . $rule->action->firewall . "<br />\n");
if($rule->metadata->applied_to == "all") {
echo("Applied to: All domains" . "<br />\n");
} else if($rule->metadata->applied_to == "domain") {
echo("Applied to: This domain" . "<br />\n");
}
}
}
?>
Listar regras globais
Listar as regras de firewall globais. Regras globais são aplicadas a todos os domínios de um usuário.
GET /v1/firewall
$ curl -i https://api.gocache.com.br/v1/firewall \
-X GET \
-H 'GoCache-Token: seu_token'
<?php
$ch = curl_init("https://api.gocache.com.br/v1/firewall");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_HTTPHEADER, array("GoCache-Token: seu_token"));
$response = curl_exec($ch);
$statusCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
?>
Exemplo de sucesso
HTTP/1.1 200 OK
{
"response": {
"rules": [{
"match": {
"ip_address": "1.1.1.1"
},
"action": {
"firewall": "block"
},
"id": "cmVncmEgZGUgZmlyZXdhbGwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA==",
"metadata": {
"applied_to": "all"
}
},
{
"match": {
"ip_address": "255.255.255.255"
},
"action": {
"firewall": "block"
},
"id": "c2VndW5kYSByZWdyYSBkZSBmaXJld2FsbCAgICAgICAgICAgICAgICAgICAgIA==",
"metadata": {
"applied_to": "all"
}
}]
}
}
<?php
if( $statusCode == 200 ) {
echo("Sucesso!\n");
$obj = json_decode($response);
foreach($obj->response->rules as $rule) {
echo("\n<br /><br />\n");
echo("Regra de firewall:" . "<br />\n");
echo("ID: " . $rule->id . "<br />\n");
foreach($rule->match as $match_type => $match_value) {
echo("Match " . $match_type . ": " . $match_value . "<br />\n");
}
echo("Action: " . $rule->action->firewall . "<br />\n");
if($rule->metadata->applied_to == "all") {
echo("Applied to: All domains" . "<br />\n");
} else if($rule->metadata->applied_to == "domain") {
echo("Applied to: This domain" . "<br />\n");
}
}
}
?>
Remover regra de domínio
Remover uma regra de firewall aplicada a um domínio.
DELETE /v1/firewall/{dominio}/{id}
$ curl -i https://api.gocache.com.br/v1/firewall/seudominio.com.br/aXBfYWRkcmVzcy1kZWZhdWx0fGlwX2FkZHJlc3N8MS4xLjEuMQ== \
-X DELETE \
-H 'GoCache-Token:seu_token'
<?php
$ch = curl_init("https://api.gocache.com.br/v1/firewall/seudominio.com.br/aXBfYWRkcmVzcy1kZWZhdWx0fGlwX2FkZHJlc3N8MS4xLjEuMQ==");
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "DELETE");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_HTTPHEADER, array("GoCache-Token: seu_token"));
$response = curl_exec($ch);
$statusCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
?>
Exemplo de sucesso
HTTP/1.1 200 OK
{
"response": {
"msg": "Success"
}
}
<?php
if( $statusCode == 200 ) {
echo("Sucesso!\n");
$obj = json_decode($response);
echo($obj->response->msg);
}
?>
Remover regra global
Remover uma regra de firewall global. Regras globais são aplicadas a todos os domínios de um usuário.
DELETE /v1/firewall/{id}
$ curl -i https://api.gocache.com.br/v1/firewall/c2VndW5kYSByZWdyYSBkZSBmaXJld2FsbCAgICAgICAgICAgICAgICAgICAgIA== \
-X DELETE \
-H 'GoCache-Token: seu_token'
<?php
$ch = curl_init("https://api.gocache.com.br/v1/firewall/c2VndW5kYSByZWdyYSBkZSBmaXJld2FsbCAgICAgICAgICAgICAgICAgICAgIA==");
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "DELETE");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_HTTPHEADER, array("GoCache-Token: seu_token"));
$response = curl_exec($ch);
$statusCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
?>
Exemplo de sucesso
HTTP/1.1 200 OK
{
"response": {
"msg":"Success"
}
}
<?php
if( $statusCode == 200 ) {
echo("Sucesso!\n");
$obj = json_decode($response);
echo($obj->response->msg);
}
?>