سامانه جامع مدیریت ISMS و GRC
سامانه جامع مدیریت ISMS و GRC برای مدیریت متمرکز امنیت اطلاعات، ریسکها، کنترلها، ممیزیها، داراییها، رخدادها، مستندات و فرآیندهای انطباق سازمانی.

معرفی پروژه
این پروژه یک سامانه جامع سازمانی برای مدیریت ISMS و GRC است که با هدف متمرکزسازی و خودکارسازی فرآیندهای حاکمیت امنیت اطلاعات، مدیریت ریسک، انطباق و عملیات امنیتی طراحی و توسعه داده شده است. این سامانه به سازمانها امکان میدهد داراییهای اطلاعاتی، ریسکهای امنیتی، کنترلها، ممیزیها، رخدادهای امنیتی، مستندات، ساختار سازمانی، اهداف، استانداردها، گردشکارها و فرآیندهای انطباق را از طریق یک محیط یکپارچه مدیریت کنند. معماری سامانه بهصورت Full-Stack مدرن طراحی شده و در بخش فرانتاند از React و TypeScript و در بخش بکاند از NestJS، TypeORM و MariaDB استفاده شده است. بکاند سیستم بهصورت ماژولار طراحی شده و APIهای REST برای بخشهای مختلف ISMS ارائه میدهد. احراز هویت و کنترل دسترسی با استفاده از JWT، نقشها و مجوزها، Guardهای امنیتی، اعتبارسنجی ورودیها، Rate Limiting، محدودسازی CORS و Security Headerها پیادهسازی شده است. همچنین یک Setup Wizard تحت وب برای نصب اولیه سامانه توسعه داده شده که امکان پیکربندی دیتابیس، اجرای Migrationها، ایجاد ساختار اولیه سازمان و ساخت حساب مدیر سیستم را فراهم میکند. ماژولهای اصلی سامانه: • مدیریت ریسک امنیت اطلاعات • Statement of Applicability یا SoA • Gap Analysis • مدیریت داراییهای اطلاعاتی • مدیریت رخدادهای امنیتی • مدیریت ممیزیها • مدیریت مستندات • مدیریت استانداردها و کنترلها • مدیریت ساختار سازمانی • مدیریت فرآیندها و اهداف • مدیریت گردشکار • گزارشها و داشبورد مدیریتی • مدیریت نقشها و سطح دسترسی • مدیریت کاربران • Audit Log • اعلانها • پایگاه دانش • فرمساز پویا این سامانه بهعنوان یک زیرساخت قابل توسعه برای سازمانهایی طراحی شده است که نیاز به مدیریت متمرکز فرآیندهای ISMS و GRC دارند.
چالش فنی
یکی از مهمترین چالشهای فنی پروژه، طراحی یک معماری ماژولار و بزرگ برای پشتیبانی همزمان از حوزههای مختلف ISMS و GRC بود، بهگونهای که سیستم در عین توسعهپذیری، قابل نگهداری باقی بماند. طراحی مدل داده یکپارچه برای ریسکها، داراییها، کنترلها، ممیزیها، رخدادها، مستندات، ساختار سازمانی، دسترسیها و گردشکارها نیز از بخشهای اصلی و پیچیده پروژه بود. یکی دیگر از چالشهای مهم، پیادهسازی احراز هویت و سطح دسترسی دقیق بین تعداد زیادی از ماژولهای سیستم بود. همچنین مدیریت Migrationهای دیتابیس، نصب اولیه خودکار، اعتبارسنجی دادهها، استانداردسازی APIها، ثبت Audit Log، Rate Limiting و تنظیمات امنیتی محیط Production از دیگر بخشهای مهم فنی پروژه بود.
راهکار
برای پیادهسازی سامانه از یک معماری ماژولار Full-Stack استفاده کردم. فرانتاند با React، TypeScript، Vite، Ant Design، React Query، React Hook Form و Zod توسعه داده شد. بکاند با NestJS، TypeORM و MariaDB پیادهسازی شد و هر حوزه اصلی ISMS در قالب ماژول مستقل طراحی شد. برای امنیت سامانه، احراز هویت مبتنی بر JWT، مدیریت Role و Permission، Guardهای دسترسی، اعتبارسنجی درخواستها، Security Headerها، محدودسازی CORS، Rate Limiting و مدیریت متمرکز خطاها پیادهسازی شد. همچنین Migration و Seed برای مدیریت ساختار دیتابیس و یک Setup Wizard تحت وب برای نصب و پیکربندی اولیه سامانه توسعه داده شد. این معماری باعث شده است که بتوان ماژولهای جدید و فرآیندهای سازمانی را بدون ایجاد وابستگی شدید بین بخشهای مختلف سیستم توسعه داد.
