امنیت و دسترسی

سطح دسترسی کاربران در ERP: از نقش تا امنیت فیلد و audit log

سطح دسترسی کاربران در ERP را چطور طراحی کنیم؟ نقش و مجوز (RBAC)، محدوده‌ی سازمانی، قانون رکورد، امنیت فیلد، سقف مبلغ و بازبینی دوره‌ای، با نمونه‌ی عملی.

نوشته‌ی معین سبحانی انتشار: به‌روزرسانی: ۷ دقیقه مطالعه

پاسخ کوتاه

سطح دسترسی در ERP فقط این نیست که کاربر به یک بخش دسترسی دارد یا نه. طراحی درست چند لایه دارد: هر کس چه کاری می‌تواند بکند، در کدام شرکت و شعبه، روی کدام پرونده‌ها، کدام اطلاعات را ببیند، و تا چه مبلغی تصمیم بگیرد. این قانون‌ها باید در گزارش‌ها و خروجی اکسل هم رعایت شوند.

در خیلی از شرکت‌ها، دسترسی به نرم‌افزار «همه یا هیچ» است. کارشناس برای انجام کارش دسترسی کامل می‌گیرد، و در نتیجه می‌تواند از فهرست همه‌ی مشتری‌ها خروجی بگیرد یا سود همه‌ی کالاها را ببیند. این راهنما با زبان ساده توضیح می‌دهد دسترسی در ERP را چطور لایه‌به‌لایه بچینید تا هر کس دقیقاً همان را ببیند که برای کارش لازم است، نه بیشتر.

چرا دسترسی در ERP مهم‌تر است؟

ERP همه‌ی اطلاعات حساس شرکت را در یک جا جمع می‌کند: مشتری‌ها و قیمت‌ها، حساب‌های بانکی، حقوق کارکنان و هزینه‌ی تمام‌شده‌ی محصولات. همین که همه‌چیز یکجاست، ERP را باارزش می‌کند. ولی همین باعث می‌شود یک اشتباه در دسترسی هم گران تمام شود. یک نقش اشتباه یعنی دسترسی به همه‌ی این‌ها با هم.

لایه‌ی ۱: نقش؛ هر کس چه کاری می‌تواند بکند؟

پایه‌ی هر سیستم دسترسی، نقش است. به این روش «دسترسی بر اساس نقش» یا RBAC می‌گویند. یعنی به‌جای اینکه برای تک‌تک آدم‌ها دسترسی تعریف کنید، برای هر نقش تعریف می‌کنید و به هر کس نقش مناسبش را می‌دهید. یک نقش می‌تواند همه‌ی دسترسی‌های یک نقش دیگر را هم به ارث ببرد.

قانون‌های عملی:

  • نقش‌ها را بر اساس شغل تعریف کنید، نه آدم‌ها. «کارشناس فروش»، نه «خانم رضایی».
  • برای هر کار جدا اجازه بدهید: دیدن، ساختن، ویرایش، حذف، خروجی گرفتن، چاپ و تأیید.
  • از ارث بردن استفاده کنید: «مدیر فروش» همه‌ی اجازه‌های «کارشناس فروش» را دارد، به‌اضافه‌ی چند اجازه‌ی بیشتر.
  • تعداد نقش‌ها را کم نگه دارید. ده نقش با تعریف روشن، راحت‌تر از پنجاه نقش تقریباً یکسان نگهداری می‌شود.

لایه‌ی ۲: محدوده؛ در کدام شرکت و شعبه؟

«مدیر فروش» در شعبه‌ی تهران نباید خودبه‌خود اطلاعات شعبه‌ی اصفهان را ببیند. در یک ERP خوب، هر نقشی که به کسی داده می‌شود یک محدوده دارد: یک شرکت، یک شعبه، یک انبار یا یک بخش. حتی ممکن است یک نفر در یک شعبه مدیر باشد و در شعبه‌ی دیگر کارشناس.

لایه‌ی ۳: کدام پرونده‌ها؟

حتی در یک شعبه، کارشناس فروش لازم نیست معامله‌های همکارانش را ببیند. لایه‌ی سوم تعیین می‌کند هر نقش کدام پرونده‌ها را ببیند:

  • فقط پرونده‌هایی که مسئولش خود اوست؛
  • پرونده‌های تیمش؛
  • پرونده‌های زیرمجموعه‌هایش در چارت سازمانی؛
  • همه‌ی پرونده‌های محدوده‌اش.

نکته‌ی مهم: این قانون باید همه‌جا رعایت شود؛ در فهرست‌ها، جستجو، گزارش‌ها، خروجی اکسل و هر راه دیگری که اطلاعات از سیستم بیرون می‌رود. سیستمی که قانون را فقط در فرم‌ها رعایت کند ولی گزارش‌ها دورش بزنند، در عمل قانونی ندارد.

لایه‌ی ۴: کدام اطلاعات داخل پرونده؟

بعضی اطلاعات حتی در پرونده‌هایی که کاربر حق دیدنشان را دارد، باید پنهان بماند. مثلاً:

  • هزینه‌ی تمام‌شده و سود هر کالا برای فروشنده؛
  • حقوق برای مدیرانی که در بخش مالی نیستند؛
  • کد ملی و شماره‌ی حساب برای بیشتر نقش‌ها.

هر فیلد برای هر نقش یکی از سه حالت را دارد: پنهان، فقط دیدنی، قابل ویرایش. باز هم تأکید می‌کنیم: پنهان بودن باید واقعی باشد، یعنی آن اطلاعات اصلاً برای آن کاربر فرستاده نشود و در گزارش‌ها هم نیاید، نه اینکه فقط در ظاهر صفحه دیده نشود.

لایه‌ی ۵: تا چه حدی؟

بعضی کارها مجازند، ولی فقط تا یک حد. مثلاً:

  • تخفیف تا ۵٪ را خود کارشناس می‌دهد؛ بیشتر از آن باید مدیر تأیید کند.
  • سند پرداخت تا یک مبلغ مشخص را حسابدار تأیید می‌کند؛ بیشتر از آن، مدیر مالی.

یک سیستم خوب در این حالت سند را رد نمی‌کند. آن را خودکار برای تأیید نفر بعدی می‌فرستد و همه‌ی مراحل را ثبت می‌کند. به این مسیر «گردش تأیید» می‌گویند.

هر درخواست باید از همه‌ی لایه‌ها رد شود؛ اگر در یکی رد شود، کافی است.

لایه‌های دسترسی فیدار

ماژول کاربران و دسترسی‌های فیدار همین لایه‌ها را، همراه با ابزار «چرا این کاربر دسترسی دارد؟»، در اختیارتان می‌گذارد.

کاربران و دسترسی‌ها

تفکیک وظایف

تفکیک وظایف یعنی هیچ‌کس نتواند یک کار حساس را از اول تا آخر تنهایی انجام دهد:

کارتفکیک پیشنهادی
خریدکسی که درخواست می‌دهد، کسی که تأیید می‌کند، کسی که کالا را تحویل می‌گیرد و کسی که پول را می‌دهد، چهار نفر جدا باشند
پرداختثبت‌کننده و تأییدکننده‌ی سند پرداخت دو نفر باشند
حقوقکسی که حقوق را حساب می‌کند با کسی که تأیید می‌کند فرق داشته باشد
تغییر دسترسیهیچ‌کس نتواند به خودش نقش بالاتر بدهد

ردپای تغییرات

دسترسی درست، بدون ثبت ردپا کامل نیست. هر تغییر مهم باید ثبت شود: چه کسی، کی، از کجا، و اطلاعات از چه به چه تغییر کرد. تغییر نقش‌ها و حتی تلاش‌هایی که رد شده‌اند هم باید ثبت شوند. به این ثبت «audit log» می‌گویند. این ثبت فقط وقتی باارزش است که قابل دست‌کاری نباشد؛ حتی مدیر سیستم هم نباید بتواند پاک یا ویرایشش کند.

ورود امن

همه‌ی این لایه‌ها با یک رمز لو رفته بی‌اثر می‌شوند. ورود دومرحله‌ای را دست‌کم برای نقش‌های حساس اجباری کنید. یعنی علاوه بر رمز، یک کد از گوشی هم لازم باشد. برای شرکت‌های بزرگ‌تر، ورود یکپارچه (SSO) را هم بررسی کنید تا کارکنان با همان حساب سازمانی‌شان وارد شوند و با رفتنشان از شرکت، دسترسی‌شان هم یکجا بسته شود.

یک نمونه‌ی عملی: تیم فروش یک شرکت پخش

نیازلایهچطور تنظیم می‌شود
کارشناس فقط مشتری‌های منطقه‌ی خودش را ببیندکدام پرونده‌هامنطقه‌ی مشتری باید با منطقه‌ی کارشناس یکی باشد
مدیر فروش هر شعبه، کل شعبه‌ی خودش را ببیندمحدودهنقش مدیر با محدوده‌ی همان شعبه
کارشناس هزینه‌ی تمام‌شده‌ی کالا را نبیندکدام اطلاعاتپنهان برای نقش کارشناس
تخفیف بیشتر از ۵٪ تأیید بخواهدتا چه حدارسال خودکار برای تأیید مدیر فروش
کارشناس از فهرست مشتری‌ها خروجی نگیردنقشاجازه‌ی خروجی فقط برای مدیر

بازبینی منظم

دسترسی‌ها با گذر زمان «چاق» می‌شوند. کسی موقتاً نقش اضافه گرفته و هیچ‌وقت پس نداده، یا کارمندی رفته ولی حسابش هنوز فعال است. هر سه ماه این کارها را انجام دهید:

  1. جدول «کدام نقش، چه اجازه‌هایی» را مرور کنید.
  2. کاربرانی را پیدا کنید که دیگر کار نمی‌کنند ولی هنوز نقش دارند.
  3. ببینید کجا دسترسی زیاد رد شده است؛ شاید یک نقش اشتباه تعریف شده.
  4. نقش‌های موقتی که تاریخشان گذشته را حذف کنید.

ابزار «چرا این کاربر دسترسی دارد؟»

وقتی حسابرس یا مدیر می‌پرسد «چرا این کاربر این سند را دیده؟»، باید بتوانید دقیق جواب دهید: به‌خاطر کدام نقش، کدام محدوده و کدام قانون. در فیدار این ابزار برای هر کاربر و هر پرونده، دلیل دسترسی، یا دلیل رد شدن آن را نشان می‌دهد. جزئیات در امنیت و دسترسی.

چک‌لیست قبل از شروع

  • نقش‌ها بر اساس شغل تعریف شده‌اند و اسم روشن دارند.
  • هر نقشی که به کسی داده شده، محدوده‌ی شرکت یا شعبه دارد.
  • برای فروش و خرید مشخص شده هر کس کدام پرونده‌ها را ببیند (خودش یا تیمش).
  • اطلاعات حساس (هزینه‌ی تمام‌شده، حقوق، کد ملی، شماره‌ی شبا) برای نقش‌هایی که لازم ندارند پنهان است.
  • اجازه‌ی خروجی اکسل و حذف فقط برای چند نقش مشخص است.
  • سقف تخفیف و سقف مبلغ سند، با گردش تأیید تعریف شده است.
  • ورود دومرحله‌ای برای نقش‌های مالی و مدیران سیستم اجباری است.
  • روش بستن حساب کارکنانی که از شرکت می‌روند نوشته شده است.

دسترسی موقت و جانشینی

مرخصی و جانشینی بخشی از کار عادی است. ولی اگر درست مدیریت نشود، به دسترسی‌های دائمی ناخواسته تبدیل می‌شود. دو قانون ساده:

  1. دسترسی موقت با تاریخ پایان: نقشی که برای جانشینی داده می‌شود، در تاریخ مشخص خودکار برداشته شود.
  2. کارهای جانشین قابل ردیابی باشد: هر کاری که جانشین انجام می‌دهد، با نام هر دو نفر ثبت شود؛ هم صاحب اصلی اختیار، هم جانشین.

این دو قانون هم کار روزانه را راحت می‌کند و هم وقتی حسابرس سؤال می‌پرسد، جواب روشنی دارید.

جمع‌بندی

دسترسی خوب در ERP چند لایه دارد: چه کاری، در کدام محدوده، روی کدام پرونده‌ها، کدام اطلاعات، و تا چه حد. همه‌ی این لایه‌ها باید در گزارش‌ها و خروجی‌ها هم رعایت شوند. با نقش‌های شغلی شروع کنید، اطلاعات حساس را از روز اول پنهان کنید، در کارهای مالی تفکیک وظایف داشته باشید و هر سه ماه دسترسی‌ها را بازبینی کنید. برای اینکه ببینید دسترسی در کل ERP کجا قرار می‌گیرد، ERP چیست را بخوانید.

آخرین بررسی:

معین سبحانی · کارشناس ارشد فناوری اطلاعات

معین سبحانی کارشناس ارشد فناوری اطلاعات در فیدار شبکه البرز است و روی زیرساخت، امنیت و پیاده‌سازی سامانه‌های سازمانی کار می‌کند. خودش را در یک جمله این‌طور معرفی می‌کند: «Just a Tech».

LinkedIn

پرسش‌های متداول

اینکه هر کاربر یک نقش داشته باشد کافی است؟

نه. نقش (که به آن RBAC می‌گویند) فقط تعیین می‌کند هر کس چه کارهایی انجام دهد، ولی نمی‌گوید روی کدام پرونده‌ها. برای اینکه کارشناس فقط مشتری‌های خودش را ببیند یا سود معامله برایش پنهان باشد، لایه‌های دیگری هم لازم است.

تفکیک وظایف یعنی چه؟

یعنی یک نفر نتواند همه‌ی مراحل یک کار حساس را تنهایی انجام دهد. مثلاً کسی که سند پرداخت را ثبت می‌کند، با کسی که آن را تأیید می‌کند فرق داشته باشد. این پایه‌ی کنترل داخلی هر شرکت است.

دسترسی‌ها را هر چند وقت بازبینی کنیم؟

دست‌کم هر سه ماه یک بار. هر بار هم که کسی جابه‌جا می‌شود یا از شرکت می‌رود، دسترسی‌اش را همان روز درست کنید.

فیدار را رایگان امتحان کنید

CRM، گزارش‌ساز و دسترسی‌ها را روی داده‌ی سازمان خودتان ببینید.