From 511ff97cf19f3d274b712555cf19ba579d612358 Mon Sep 17 00:00:00 2001 From: Javaxman Date: Fri, 31 Jul 2026 22:58:33 +0200 Subject: [PATCH] Aggiunge i template dei registri operativi come allegato al Codice Etico. Co-authored-by: Cursor --- src/data/allegati-codice-etico.ts | 468 +++++++++++++++++++++++++++++- src/data/codice-etico.ts | 13 +- src/pages/codice-etico.astro | 8 + 3 files changed, 483 insertions(+), 6 deletions(-) diff --git a/src/data/allegati-codice-etico.ts b/src/data/allegati-codice-etico.ts index 9f1e251..ad4b25f 100644 --- a/src/data/allegati-codice-etico.ts +++ b/src/data/allegati-codice-etico.ts @@ -37,7 +37,7 @@ const allegatiByLocale: Record = { it: { page: { title: 'Allegati al Codice Etico — NexStudio', - description: 'Template operativi allegati al Codice Etico NexStudio: adesione, NDA, checklist, DPIA, privacy, SBOM, retention, AI impact, piano formazione, responsible disclosure.', + description: 'Template operativi allegati al Codice Etico NexStudio: adesione, NDA, checklist, DPIA, privacy, SBOM, retention, AI impact, piano formazione, responsible disclosure, registri operativi.', heading: 'Allegati e moduli operativi', lead: 'Documenti complementari al Codice Etico. Ciascun allegato è un template da personalizzare e adottare secondo le esigenze operative.', backLabel: '← Torna al Codice Etico', @@ -690,12 +690,166 @@ const allegatiByLocale: Record = { ], footer: 'Approvazione policy: CISO _______ · CTO _______ · Legal _______ · Data _______', }, + { + id: 'registri-operativi', + heading: 'Registri operativi — template di riga', + description: 'Schemi minimi per registro trattamenti, incidenti/breach, inventario SBOM operativo e log di retention/cancellazione.', + intro: + 'Documento collegato alla sezione 17 del Codice Etico. Ogni registro può vivere in foglio condiviso, HRIS o ticket system; i campi sotto sono obbligatori per audit. Complementare a: modello DPIA, template SBOM, policy retention, flowchart incidenti.', + sections: [ + { + title: '1. Principi comuni', + content: [ + 'Owner del registro: ruolo nominato (DPO, CISO, CTO o Legal) con backup.', + 'Aggiornamento: a ogni nuovo trattamento / incidente / release / cancellazione rilevante; revisione periodica almeno trimestrale.', + 'Conservazione: allineata alla policy di retention; export disponibile per autorità e audit.', + 'Formato: una riga = un record; ID univoco; data ultimo aggiornamento obbligatoria.', + ], + }, + { + title: '2. Registro dei trattamenti (RoPA / art. 30 GDPR / PDPA)', + content: [ + { + label: 'Campi riga', + fields: [ + 'ID trattamento (es. TRT-001)', + 'Nome / descrizione', + 'Perimetro (piattaforma / LexAura / MediAura)', + 'Titolare', + 'Responsabile / sub-responsabili', + 'Categorie interessati', + 'Categorie dati (comuni / particolari)', + 'Finalità', + 'Base giuridica', + 'Trasferimenti extra-TH/UE (Sì/No + strumento)', + 'Misure di sicurezza (rif.)', + 'Retention (rif. policy)', + 'DPIA (Sì/No + link)', + 'Owner', + 'Ultimo aggiornamento', + ], + }, + ], + note: 'Per trattamenti ad alto rischio: collegare ID DPIA dall’allegato modello DPIA. Non inserire dati personali degli interessati nel registro.', + }, + { + title: '3. Registro incidenti e violazioni dei dati', + content: [ + { + label: 'Campi riga', + fields: [ + 'ID incidente (INC-YYYY-NNN)', + 'Data/ora rilevazione', + 'Data/ora contenimento', + 'Severità', + 'Tipo (breach dati / accesso non auth / malware / altro)', + 'Perimetro', + 'Sistemi coinvolti', + 'Categorie dati / n. interessati stimato', + 'Notifica autorità (Sì/No/N.A. + data)', + 'Notifica interessati (Sì/No/N.A. + data)', + 'Stato (aperto / in corso / chiuso)', + 'Root cause (sintesi)', + 'Azioni correttive', + 'Owner', + 'Link post-mortem', + ], + }, + ], + note: 'Usare il template di notifica dell’allegato gestione incidenti come allegato al record. SLA ack esterni: allineati a PDPA/GDPR e policy disclosure.', + }, + { + title: '4. Registro SBOM / inventario componenti (operativo)', + content: [ + { + label: 'Campi riga (per release o componente critico)', + fields: [ + 'ID release / commit', + 'Prodotto (piattaforma / LexAura / MediAura)', + 'Data generazione SBOM', + 'Formato (CycloneDX / SPDX)', + 'Link artefatto SBOM', + 'N. componenti', + 'N. vulnerabilità aperte (CVSS ≥ 7)', + 'N. licenze copyleft / review IP', + 'Owner tecnico', + 'Esito gate pre-release (OK / blocco)', + 'Note', + ], + }, + ], + note: 'Il dettaglio componente resta nel file SBOM; questo registro traccia le generazioni e i gate. Allineare alla checklist pre-release.', + }, + { + title: '5. Registro retention e cancellazioni', + content: [ + { + label: 'Campi riga', + fields: [ + 'ID job (RET-001)', + 'Categoria dati (rif. policy retention)', + 'Sistema / datastore', + 'Periodo di retention applicato', + 'Trigger (scadenza / richiesta interessato / fine contratto)', + 'Azione (anonimizzazione / cancellazione logica / fisica)', + 'Data esecuzione', + 'Evidenza (log / ticket / certificato)', + 'N. record coinvolti (aggregato)', + 'Esecutore', + 'Verifica DPO/CISO (data)', + ], + }, + ], + note: 'Non elencare identificativi degli interessati; solo aggregati e riferimenti tecnici. Allineare alla policy di retention allegata.', + }, + { + title: '6. Registro contratti fornitori e sub-processori (minimo)', + content: [ + { + label: 'Campi riga', + fields: [ + 'ID fornitore', + 'Nome / servizio', + 'Ruolo (sub-processore / vendor)', + 'Dati trattati (categorie)', + 'Sede / trasferimenti', + 'DPA / NDA (link + data firma)', + 'Misure sicurezza equivalenti (Sì/No)', + 'Data revisione', + 'Owner Legal', + 'Stato (attivo / in uscita / terminato)', + ], + }, + ], + }, + { + title: '7. Owner e KPI', + content: [ + { label: 'Registro trattamenti + DPIA', fields: ['DPO (backup: Legal)'] }, + { label: 'Registro incidenti', fields: ['CISO (backup: CTO)'] }, + { label: 'Registro SBOM', fields: ['CTO / engineering lead'] }, + { label: 'Registro retention', fields: ['DPO + engineering'] }, + { label: 'Registro sub-processori', fields: ['Legal (backup: DPO)'] }, + { + label: 'KPI esempio', + fields: [ + '% trattamenti con owner e data aggiornamento < 90 gg', + 'Incidenti aperti > SLA', + 'Release senza SBOM allegato = 0', + 'Job retention eseguiti vs pianificati', + ], + }, + ], + }, + ], + footer: 'Approvazione registri: DPO _______ · CISO _______ · Legal _______ · Data _______', + }, ], }, en: { page: { title: 'Code of Ethics Annexes — NexStudio', - description: 'Operational templates annexed to the NexStudio Code of Ethics: adhesion, NDA, checklist, DPIA, privacy, SBOM, retention, AI impact, training plan, responsible disclosure.', + description: 'Operational templates annexed to the NexStudio Code of Ethics: adhesion, NDA, checklist, DPIA, privacy, SBOM, retention, AI impact, training plan, responsible disclosure, operational registers.', heading: 'Annexes and operational forms', lead: 'Complementary documents to the Code of Ethics. Each annex is a template to be customized and adopted according to operational needs.', backLabel: '← Back to Code of Ethics', @@ -1348,12 +1502,166 @@ const allegatiByLocale: Record = { ], footer: 'Policy approval: CISO _______ · CTO _______ · Legal _______ · Date _______', }, + { + id: 'registri-operativi', + heading: 'Operational registers — row templates', + description: 'Minimum schemas for records of processing, incidents/breaches, operational SBOM inventory and retention/deletion log.', + intro: + 'Document linked to section 17 of the Code of Ethics. Each register may live in a shared sheet, HRIS or ticket system; fields below are mandatory for audit. Complementary to: DPIA model, SBOM template, retention policy, incident flowchart.', + sections: [ + { + title: '1. Common principles', + content: [ + 'Register owner: named role (DPO, CISO, CTO or Legal) with a backup.', + 'Updates: on every new processing / incident / release / material deletion; periodic review at least quarterly.', + 'Retention: aligned with the retention policy; export available for authorities and audits.', + 'Format: one row = one record; unique ID; last-updated date mandatory.', + ], + }, + { + title: '2. Records of processing (RoPA / GDPR Art. 30 / PDPA)', + content: [ + { + label: 'Row fields', + fields: [ + 'Processing ID (e.g. TRT-001)', + 'Name / description', + 'Perimeter (platform / LexAura / MediAura)', + 'Controller', + 'Processor / sub-processors', + 'Data subject categories', + 'Data categories (regular / special)', + 'Purposes', + 'Legal basis', + 'Transfers outside TH/EU (Yes/No + tool)', + 'Security measures (ref.)', + 'Retention (policy ref.)', + 'DPIA (Yes/No + link)', + 'Owner', + 'Last update', + ], + }, + ], + note: 'For high-risk processing: link DPIA ID from the DPIA model annex. Do not put data subjects’ personal data in the register.', + }, + { + title: '3. Incident and data-breach register', + content: [ + { + label: 'Row fields', + fields: [ + 'Incident ID (INC-YYYY-NNN)', + 'Detection date/time', + 'Containment date/time', + 'Severity', + 'Type (data breach / unauthorized access / malware / other)', + 'Perimeter', + 'Systems involved', + 'Data categories / estimated data subjects', + 'Authority notification (Yes/No/N.A. + date)', + 'Data subject notification (Yes/No/N.A. + date)', + 'Status (open / in progress / closed)', + 'Root cause (summary)', + 'Corrective actions', + 'Owner', + 'Post-mortem link', + ], + }, + ], + note: 'Use the incident notification template from the incident-management annex as an attachment to the record.', + }, + { + title: '4. SBOM / component inventory register (operational)', + content: [ + { + label: 'Row fields (per release or critical component set)', + fields: [ + 'Release ID / commit', + 'Product (platform / LexAura / MediAura)', + 'SBOM generation date', + 'Format (CycloneDX / SPDX)', + 'SBOM artifact link', + 'Component count', + 'Open vulns (CVSS ≥ 7)', + 'Copyleft licenses / IP review', + 'Technical owner', + 'Pre-release gate result (OK / blocked)', + 'Notes', + ], + }, + ], + note: 'Component detail stays in the SBOM file; this register tracks generations and gates. Align with the pre-release checklist.', + }, + { + title: '5. Retention and deletion register', + content: [ + { + label: 'Row fields', + fields: [ + 'Job ID (RET-001)', + 'Data category (retention policy ref.)', + 'System / datastore', + 'Retention period applied', + 'Trigger (expiry / data subject request / end of contract)', + 'Action (anonymization / logical / physical deletion)', + 'Execution date', + 'Evidence (log / ticket / certificate)', + 'Records affected (aggregate)', + 'Executor', + 'DPO/CISO verification (date)', + ], + }, + ], + note: 'Do not list data subject identifiers; aggregates and technical refs only. Align with the retention policy annex.', + }, + { + title: '6. Vendor and sub-processor register (minimum)', + content: [ + { + label: 'Row fields', + fields: [ + 'Vendor ID', + 'Name / service', + 'Role (sub-processor / vendor)', + 'Data processed (categories)', + 'Location / transfers', + 'DPA / NDA (link + signature date)', + 'Equivalent security measures (Yes/No)', + 'Review date', + 'Legal owner', + 'Status (active / exiting / terminated)', + ], + }, + ], + }, + { + title: '7. Owners and KPIs', + content: [ + { label: 'Processing + DPIA register', fields: ['DPO (backup: Legal)'] }, + { label: 'Incident register', fields: ['CISO (backup: CTO)'] }, + { label: 'SBOM register', fields: ['CTO / engineering lead'] }, + { label: 'Retention register', fields: ['DPO + engineering'] }, + { label: 'Sub-processor register', fields: ['Legal (backup: DPO)'] }, + { + label: 'Sample KPIs', + fields: [ + '% processings with owner and update < 90 days', + 'Open incidents past SLA', + 'Releases without SBOM = 0', + 'Retention jobs run vs planned', + ], + }, + ], + }, + ], + footer: 'Registers approval: DPO _______ · CISO _______ · Legal _______ · Date _______', + }, ], }, th: { page: { title: 'ภาคผนวกประมวลจริยธรรม — NexStudio', - description: 'เทมเพลตปฏิบัติการแนบท้ายประมวลจริยธรรม NexStudio: การยอมรับ, NDA, เช็กลิสต์, DPIA, ความเป็นส่วนตัว, SBOM, การเก็บรักษา, AI impact, แผนการฝึกอบรม, responsible disclosure', + description: 'เทมเพลตปฏิบัติการแนบท้ายประมวลจริยธรรม NexStudio: การยอมรับ, NDA, เช็กลิสต์, DPIA, ความเป็นส่วนตัว, SBOM, การเก็บรักษา, AI impact, แผนการฝึกอบรม, responsible disclosure, ทะเบียนปฏิบัติการ', heading: 'ภาคผนวกและแบบฟอร์มปฏิบัติการ', lead: 'เอกสารเสริมประมวลจริยธรรม แต่ละภาคผนวกเป็นเทมเพลตที่ต้องปรับแต่งและนำไปใช้ตามความต้องการเชิงปฏิบัติการ', backLabel: '← กลับไปประมวลจริยธรรม', @@ -2004,6 +2312,160 @@ const allegatiByLocale: Record = { ], footer: 'การอนุมัตินโยบาย: CISO _______ · CTO _______ · Legal _______ · วันที่ _______', }, + { + id: 'registri-operativi', + heading: 'ทะเบียนปฏิบัติการ — เทมเพลตแถว', + description: 'โครงขั้นต่ำสำหรับทะเบียนการประมวลผล เหตุการณ์/breach บัญชี SBOM ปฏิบัติการ และบันทึก retention/การลบ', + intro: + 'เอกสารเชื่อมกับหมวด 17 ของประมวลจริยธรรม แต่ละทะเบียนอาจอยู่ในชีตแชร์ HRIS หรือระบบตั๋ว; ฟิลด์ด้านล่างจำเป็นสำหรับ audit เสริมกับ: แบบ DPIA เทมเพลต SBOM นโยบาย retention แผนภูมิเหตุการณ์', + sections: [ + { + title: '1. หลักการร่วม', + content: [ + 'เจ้าของทะเบียน: บทบาทที่ระบุชื่อ (DPO CISO CTO หรือ Legal) พร้อมตัวสำรอง', + 'การอัปเดต: ทุกครั้งที่มีการประมวลผลใหม่ / เหตุการณ์ / การปล่อย / การลบสำคัญ; ทบทวนอย่างน้อยรายไตรมาส', + 'การเก็บรักษา: ตามนโยบาย retention; export ได้สำหรับหน่วยงานและ audit', + 'รูปแบบ: หนึ่งแถว = หนึ่งรายการ; ID ไม่ซ้ำ; วันที่อัปเดตล่าสุดบังคับ', + ], + }, + { + title: '2. ทะเบียนการประมวลผล (RoPA / GDPR ม.30 / PDPA)', + content: [ + { + label: 'ฟิลด์แถว', + fields: [ + 'รหัสการประมวลผล (เช่น TRT-001)', + 'ชื่อ / คำอธิบาย', + 'ขอบเขต (แพลตฟอร์ม / LexAura / MediAura)', + 'ผู้ควบคุม', + 'ผู้ประมวลผล / ผู้ประมวลผลช่วง', + 'หมวดหมู่เจ้าของข้อมูล', + 'หมวดหมู่ข้อมูล (ทั่วไป / พิเศษ)', + 'วัตถุประสงค์', + 'ฐานทางกฎหมาย', + 'การโอนนอก TH/EU (ใช่/ไม่ + เครื่องมือ)', + 'มาตรการความปลอดภัย (อ้างอิง)', + 'Retention (อ้างอิงนโยบาย)', + 'DPIA (ใช่/ไม่ + ลิงก์)', + 'เจ้าของ', + 'อัปเดตล่าสุด', + ], + }, + ], + note: 'สำหรับการประมวลผลความเสี่ยงสูง: เชื่อมรหัส DPIA จากภาคผนวกแบบ DPIA อย่าใส่ข้อมูลส่วนบุคคลของเจ้าของข้อมูลในทะเบียน', + }, + { + title: '3. ทะเบียนเหตุการณ์และการละเมิดข้อมูล', + content: [ + { + label: 'ฟิลด์แถว', + fields: [ + 'รหัสเหตุการณ์ (INC-YYYY-NNN)', + 'วันเวลาที่ตรวจพบ', + 'วันเวลาที่กักกัน', + 'ความรุนแรง', + 'ประเภท (breach / เข้าถึงโดยไม่ได้รับอนุญาต / มัลแวร์ / อื่นๆ)', + 'ขอบเขต', + 'ระบบที่เกี่ยวข้อง', + 'หมวดหมู่ข้อมูล / จำนวนเจ้าของข้อมูลโดยประมาณ', + 'แจ้งหน่วยงาน (ใช่/ไม่/N.A. + วันที่)', + 'แจ้งเจ้าของข้อมูล (ใช่/ไม่/N.A. + วันที่)', + 'สถานะ (เปิด / กำลังดำเนินการ / ปิด)', + 'สาเหตุต้นตอ (สรุป)', + 'การแก้ไข', + 'เจ้าของ', + 'ลิงก์ post-mortem', + ], + }, + ], + note: 'ใช้เทมเพลตการแจ้งจากภาคผนวกจัดการเหตุการณ์แนบกับรายการ', + }, + { + title: '4. ทะเบียน SBOM / บัญชีส่วนประกอบ (ปฏิบัติการ)', + content: [ + { + label: 'ฟิลด์แถว (ต่อ release หรือชุดส่วนประกอบวิกฤต)', + fields: [ + 'รหัส release / commit', + 'ผลิตภัณฑ์ (แพลตฟอร์ม / LexAura / MediAura)', + 'วันที่สร้าง SBOM', + 'รูปแบบ (CycloneDX / SPDX)', + 'ลิงก์ไฟล์ SBOM', + 'จำนวนส่วนประกอบ', + 'ช่องโหว่เปิด (CVSS ≥ 7)', + 'ใบอนุญาต copyleft / ทบทวน IP', + 'เจ้าของเทคนิค', + 'ผล gate ก่อนปล่อย (OK / บล็อก)', + 'หมายเหตุ', + ], + }, + ], + note: 'รายละเอียดส่วนประกอบอยู่ในไฟล์ SBOM; ทะเบียนนี้ติดตามการสร้างและ gate ให้สอดคล้องกับเช็กลิสต์ก่อนปล่อย', + }, + { + title: '5. ทะเบียน retention และการลบ', + content: [ + { + label: 'ฟิลด์แถว', + fields: [ + 'รหัสงาน (RET-001)', + 'หมวดหมู่ข้อมูล (อ้างอิงนโยบาย retention)', + 'ระบบ / datastore', + 'ระยะเวลา retention ที่ใช้', + 'ตัวกระตุ้น (ครบกำหนด / คำขอเจ้าของข้อมูล / สิ้นสุดสัญญา)', + 'การดำเนินการ (ทำให้ไม่ระบุตัวตน / ลบตรรกะ / ลบกายภาพ)', + 'วันที่ดำเนินการ', + 'หลักฐาน (บันทึก / ตั๋ว / ใบรับรอง)', + 'จำนวน record (รวม)', + 'ผู้ดำเนินการ', + 'การตรวจสอบ DPO/CISO (วันที่)', + ], + }, + ], + note: 'อย่าระบุตัวตนเจ้าของข้อมูล; ใช้เฉพาะค่าสรุปและอ้างอิงทางเทคนิค ให้สอดคล้องกับนโยบาย retention', + }, + { + title: '6. ทะเบียนผู้ให้บริการและผู้ประมวลผลช่วง (ขั้นต่ำ)', + content: [ + { + label: 'ฟิลด์แถว', + fields: [ + 'รหัสผู้ให้บริการ', + 'ชื่อ / บริการ', + 'บทบาท (ผู้ประมวลผลช่วง / vendor)', + 'ข้อมูลที่ประมวลผล (หมวดหมู่)', + 'ที่ตั้ง / การโอน', + 'DPA / NDA (ลิงก์ + วันที่ลงนาม)', + 'มาตรการความปลอดภัยเทียบเท่า (ใช่/ไม่)', + 'วันที่ทบทวน', + 'เจ้าของ Legal', + 'สถานะ (ใช้งาน / กำลังออก / สิ้นสุด)', + ], + }, + ], + }, + { + title: '7. เจ้าของและ KPI', + content: [ + { label: 'ทะเบียนการประมวลผล + DPIA', fields: ['DPO (สำรอง: Legal)'] }, + { label: 'ทะเบียนเหตุการณ์', fields: ['CISO (สำรอง: CTO)'] }, + { label: 'ทะเบียน SBOM', fields: ['CTO / engineering lead'] }, + { label: 'ทะเบียน retention', fields: ['DPO + engineering'] }, + { label: 'ทะเบียนผู้ประมวลผลช่วง', fields: ['Legal (สำรอง: DPO)'] }, + { + label: 'KPI ตัวอย่าง', + fields: [ + '% การประมวลผลที่มีเจ้าของและอัปเดต < 90 วัน', + 'เหตุการณ์เปิดเกิน SLA', + 'release ที่ไม่มี SBOM = 0', + 'งาน retention ที่ทำ vs ที่วางแผน', + ], + }, + ], + }, + ], + footer: 'การอนุมัติทะเบียน: DPO _______ · CISO _______ · Legal _______ · วันที่ _______', + }, ], }, }; diff --git a/src/data/codice-etico.ts b/src/data/codice-etico.ts index 31cc35d..e758e23 100644 --- a/src/data/codice-etico.ts +++ b/src/data/codice-etico.ts @@ -177,6 +177,7 @@ type CodiceEticoLocale = { title: string; intro: string; items: readonly string[]; + registersLinkLabel: string; }; allegati: { title: string; items: readonly string[]; linkLabel: string }; approvazione: { @@ -608,6 +609,7 @@ const codiceEticoByLocale: Record = { 'contratti con fornitori e sub-processori;', 'record di formazione e dichiarazioni di adesione al Codice.', ], + registersLinkLabel: 'Apri i template dei registri operativi →', }, allegati: { title: '18. Allegati e moduli (inclusi)', @@ -624,6 +626,7 @@ const codiceEticoByLocale: Record = { 'Template per valutazione d’impatto AI/ML.', 'Piano di formazione — onboarding 90 giorni e formazione annuale.', 'Policy di responsible disclosure e segnalazione vulnerabilità.', + 'Registri operativi — template di riga (trattamenti, incidenti, SBOM, retention, sub-processori).', ], }, approvazione: { @@ -665,7 +668,7 @@ const codiceEticoByLocale: Record = { items: [ 'Personalizzare il documento con il nome ufficiale della società (se diverso dal marchio operativo), firme e riferimenti legali locali a Bangkok.', 'Implementare i canali tecnici per segnalazioni etiche (piattaforma anonima); la policy di responsible disclosure (security@) è già in allegato.', - 'Applicare il Piano di formazione (allegato operativo): onboarding 90 giorni e refresh annuale; HR tiene il registro di completamento.', + 'Applicare Piano di formazione e popolare i registri operativi (allegati): trattamenti, incidenti, SBOM, retention, sub-processori.', ], }, notePraticheDPIA: [ @@ -1103,6 +1106,7 @@ const codiceEticoByLocale: Record = { 'contracts with vendors and sub-processors;', 'training records and Code adhesion declarations.', ], + registersLinkLabel: 'Open the operational registers templates →', }, allegati: { title: '18. Annexes and forms (included)', @@ -1119,6 +1123,7 @@ const codiceEticoByLocale: Record = { 'AI/ML impact assessment template.', 'Training plan — 90-day onboarding and annual refresh.', 'Responsible disclosure and vulnerability reporting policy.', + 'Operational registers — row templates (processing, incidents, SBOM, retention, sub-processors).', ], }, approvazione: { @@ -1160,7 +1165,7 @@ const codiceEticoByLocale: Record = { items: [ 'Customize the document with the official company name (if different from the operating brand), signatures and local legal references in Bangkok.', 'Implement technical channels for ethics reporting (anonymous platform); the responsible disclosure policy (security@) is already in the annexes.', - 'Apply the Training plan (operational annex): 90-day onboarding and annual refresh; HR keeps the completion register.', + 'Apply the Training plan and populate the operational registers (annexes): processing, incidents, SBOM, retention, sub-processors.', ], }, notePraticheDPIA: [ @@ -1598,6 +1603,7 @@ const codiceEticoByLocale: Record = { 'สัญญากับผู้ให้บริการและผู้ประมวลผลช่วง;', 'บันทึกการฝึกอบรมและการประกาศยอมรับประมวล', ], + registersLinkLabel: 'เปิดเทมเพลตทะเบียนปฏิบัติการ →', }, allegati: { title: '18. ภาคผนวกและแบบฟอร์ม (รวมอยู่)', @@ -1614,6 +1620,7 @@ const codiceEticoByLocale: Record = { 'เทมเพลตการประเมินผลกระทบ AI/ML', 'แผนการฝึกอบรม — ปฐมนิเทศ 90 วัน และการทบทวนประจำปี', 'นโยบาย responsible disclosure และการรายงานช่องโหว่', + 'ทะเบียนปฏิบัติการ — เทมเพลตแถว (การประมวลผล เหตุการณ์ SBOM retention ผู้ประมวลผลช่วง)', ], }, approvazione: { @@ -1655,7 +1662,7 @@ const codiceEticoByLocale: Record = { items: [ 'ปรับแต่งเอกสารด้วยชื่อบริษัทอย่างเป็นทางการ (หากต่างจากแบรนด์ปฏิบัติการ) ลายเซ็น และการอ้างอิงทางกฎหมายท้องถิ่นในกรุงเทพฯ', 'จัดทำช่องทางเทคนิคสำหรับการรายงานจริยธรรม (แพลตฟอร์มนิรนาม); นโยบาย responsible disclosure (security@) อยู่ในภาคผนวกแล้ว', - 'ใช้แผนการฝึกอบรม (ภาคผนวกปฏิบัติการ): ปฐมนิเทศ 90 วัน และการทบทวนประจำปี; HR รักษาทะเบียนการสำเร็จ', + 'ใช้แผนการฝึกอบรมและกรอกทะเบียนปฏิบัติการ (ภาคผนวก): การประมวลผล เหตุการณ์ SBOM retention ผู้ประมวลผลช่วง', ], }, notePraticheDPIA: [ diff --git a/src/pages/codice-etico.astro b/src/pages/codice-etico.astro index 7396387..75c08be 100644 --- a/src/pages/codice-etico.astro +++ b/src/pages/codice-etico.astro @@ -284,6 +284,14 @@ const isLabeled = (item: string | { label: string; text: string }): item is { la
    {c.documentazione.items.map((item) =>
  • {item}
  • )}
+

+ + {c.documentazione.registersLinkLabel} + +

{c.allegati.title}

-- 2.49.0