[MIGRATE] Migrazione a nis2.agile.software
- Tutti i riferimenti nis2.certisource.it → nis2.agile.software - Apache vhost HTTP nis2.agile.software attivo su Hetzner - Script setup-nis2-agile-software.sh: certbot SSL + redirect da vecchio dominio - .env server: APP_URL aggiornato a https://nis2.agile.software - CLAUDE.md, docs commerciali, integrazioni, API docs aggiornati DNS da aggiungere in Cloudflare: nis2.agile.software A 135.181.149.254 (proxy OFF) Poi eseguire: bash /opt/devenv/scripts/setup-nis2-agile-software.sh Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Sonnet 4.6
parent
0fcc69ee85
commit
07c1a71685
@@ -161,14 +161,14 @@
|
||||
<p>API REST per integrare NIS2 Agile con SIEM, GRC, piattaforme ESG e strumenti di compliance.</p>
|
||||
<div class="version-badge">
|
||||
<svg viewBox="0 0 20 20" fill="currentColor" width="12" height="12"><path fill-rule="evenodd" d="M10 2a8 8 0 100 16A8 8 0 0010 2zm0 14a6 6 0 110-12 6 6 0 010 12zm-1-5a1 1 0 012 0v2a1 1 0 11-2 0v-2zm0-4a1 1 0 112 0 1 1 0 01-2 0z" clip-rule="evenodd"/></svg>
|
||||
v1.0.0 — Produzione: https://nis2.certisource.it/
|
||||
v1.0.0 — Produzione: https://nis2.agile.software/
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="section">
|
||||
<h2 class="section-title">Panoramica</h2>
|
||||
<p class="section-desc">NIS2 Agile espone due famiglie di API: <strong>Services API</strong> per lettura dati di compliance in tempo reale, e <strong>Webhook API</strong> per notifiche push su eventi NIS2.</p>
|
||||
<div class="base-url">Base URL: https://nis2.certisource.it/api</div>
|
||||
<div class="base-url">Base URL: https://nis2.agile.software/api</div>
|
||||
<div class="info-box info">
|
||||
<strong>Rate Limiting:</strong> Services API: 100 richieste/ora per API Key. Webhook delivery: max 1000/ora per subscription.
|
||||
</div>
|
||||
@@ -682,7 +682,7 @@ if not hmac.compare_digest(expected, received):
|
||||
|
||||
<div style="padding-top:40px; border-top:1px solid var(--border); color:var(--text-muted); font-size:0.8rem;">
|
||||
NIS2 Agile API Reference v1.0.0 — © 2026 CertiSource Srl —
|
||||
<a href="https://nis2.certisource.it" style="color:var(--primary);">nis2.certisource.it</a>
|
||||
<a href="https://nis2.agile.software" style="color:var(--primary);">nis2.agile.software</a>
|
||||
</div>
|
||||
|
||||
</main>
|
||||
|
||||
@@ -80,7 +80,7 @@
|
||||
|
||||
<span style="color:#f1fa8c;">$apiKey</span> = getenv(<span style="color:#86efac;">'NIS2_API_KEY'</span>);
|
||||
<span style="color:#f1fa8c;">$orgId</span> = getenv(<span style="color:#86efac;">'NIS2_ORG_ID'</span>);
|
||||
<span style="color:#f1fa8c;">$baseUrl</span> = <span style="color:#86efac;">'https://nis2.certisource.it/api'</span>;
|
||||
<span style="color:#f1fa8c;">$baseUrl</span> = <span style="color:#86efac;">'https://nis2.agile.software/api'</span>;
|
||||
<span style="color:#f1fa8c;">$allriskOrgId</span> = getenv(<span style="color:#86efac;">'ALLRISK_ORG_ID'</span>);
|
||||
|
||||
<span style="color:#7dd3fc;">// Fetch rischi HIGH/CRITICAL aperti da NIS2</span>
|
||||
|
||||
@@ -92,7 +92,7 @@
|
||||
|
||||
<span style="color:#f1fa8c;">$apiKey</span> = getenv(<span style="color:#86efac;">'NIS2_API_KEY'</span>); <span style="color:#7dd3fc;">// nis2_abc123...</span>
|
||||
<span style="color:#f1fa8c;">$orgId</span> = getenv(<span style="color:#86efac;">'NIS2_ORG_ID'</span>);
|
||||
<span style="color:#f1fa8c;">$baseUrl</span> = <span style="color:#86efac;">'https://nis2.certisource.it/api'</span>;
|
||||
<span style="color:#f1fa8c;">$baseUrl</span> = <span style="color:#86efac;">'https://nis2.agile.software/api'</span>;
|
||||
|
||||
<span style="color:#f1fa8c;">function</span> nis2Get(<span style="color:#f1fa8c;">string $endpoint</span>, array <span style="color:#f1fa8c;">$query</span> = []): array {
|
||||
global <span style="color:#f1fa8c;">$apiKey</span>, <span style="color:#f1fa8c;">$orgId</span>, <span style="color:#f1fa8c;">$baseUrl</span>;
|
||||
@@ -172,7 +172,7 @@ http_response_code(200);</pre>
|
||||
<svg viewBox="0 0 24 24" fill="#06b6d4" width="18" height="18"><path d="M12 1L3 5v6c0 5.55 3.84 10.74 9 12 5.16-1.26 9-6.45 9-12V5l-9-4z"/></svg>
|
||||
NIS2 Compliance (Preview widget)
|
||||
</div>
|
||||
<span style="font-size:0.7rem; color:#64748b;">nis2.certisource.it</span>
|
||||
<span style="font-size:0.7rem; color:#64748b;">nis2.agile.software</span>
|
||||
</div>
|
||||
<div style="display:flex; align-items:center; gap:24px;">
|
||||
<div class="score-ring">73%</div>
|
||||
@@ -191,7 +191,7 @@ http_response_code(200);</pre>
|
||||
<div id="nis2-widget"></div>
|
||||
<script>
|
||||
(async () => {
|
||||
const r = await fetch('https://nis2.certisource.it/api/services/compliance-summary', {
|
||||
const r = await fetch('https://nis2.agile.software/api/services/compliance-summary', {
|
||||
headers: {
|
||||
'X-API-Key': '<span style="color:#86efac;">nis2_YOUR_KEY</span>',
|
||||
'X-Organization-Id': '<span style="color:#86efac;">YOUR_ORG_ID</span>'
|
||||
|
||||
@@ -84,7 +84,7 @@
|
||||
|
||||
<span style="color:#f1fa8c;">$apiKey</span> = getenv(<span style="color:#86efac;">'NIS2_API_KEY'</span>);
|
||||
<span style="color:#f1fa8c;">$orgId</span> = getenv(<span style="color:#86efac;">'NIS2_ORG_ID'</span>);
|
||||
<span style="color:#f1fa8c;">$base</span> = <span style="color:#86efac;">'https://nis2.certisource.it/api'</span>;
|
||||
<span style="color:#f1fa8c;">$base</span> = <span style="color:#86efac;">'https://nis2.agile.software/api'</span>;
|
||||
|
||||
<span style="color:#f1fa8c;">$headers</span> = [
|
||||
<span style="color:#86efac;">'X-API-Key: '</span> . <span style="color:#f1fa8c;">$apiKey</span>,
|
||||
@@ -123,7 +123,7 @@ EsgKpiService::updateCyberGovernance([
|
||||
<pre><!-- SustainAI: sezione Governance → Cybersecurity KPIs -->
|
||||
<div id="nis2-esg-widget" style="padding:20px; border:1px solid #e2e8f0; border-radius:8px; background:#f0fdf4;"></div>
|
||||
<script>
|
||||
fetch('https://nis2.certisource.it/api/services/compliance-summary', {
|
||||
fetch('https://nis2.agile.software/api/services/compliance-summary', {
|
||||
headers: { 'X-API-Key': '<span style="color:#86efac;">nis2_YOUR_KEY</span>', 'X-Organization-Id': '<span style="color:#86efac;">ORG_ID</span>' }
|
||||
}).then(r => r.json()).then(({ data }) => {
|
||||
document.getElementById('nis2-esg-widget').innerHTML = `
|
||||
@@ -141,7 +141,7 @@ fetch('https://nis2.certisource.it/api/services/compliance-summary', {
|
||||
<div style="font-size:.7rem; color:#64748b;">Incidenti Art.23</div></div>
|
||||
</div>
|
||||
<p style="font-size:.7rem; color:#94a3b8; margin-top:12px; text-align:right;">
|
||||
Fonte: NIS2 Agile — nis2.certisource.it — Aggiornato: ${new Date().toLocaleDateString('it')}
|
||||
Fonte: NIS2 Agile — nis2.agile.software — Aggiornato: ${new Date().toLocaleDateString('it')}
|
||||
</p>`;
|
||||
});
|
||||
</script></pre>
|
||||
|
||||
Reference in New Issue
Block a user