وقتی مدل نام یک تابع و آرگومانها را پیشنهاد میکند، هنوز مجوز اجرای آن صادر نشده است. برنامه باید تابع مجاز، ساختار ورودی و اختیار کاربر را جدا بررسی کند. تصمیم مدل درباره اینکه کاری لازم است، جای کنترل سرور درباره اینکه آن کار مجاز است را نمیگیرد.
روش اجرا و تصمیمگیری
فهرست ابزارها را محدود و متناسب نقش کاربر نگه دارید. ابزار حذف یا پرداخت نباید کنار ابزار جستوجوی عمومی بدون مرز قرار بگیرد. حتی اگر مدل نامی خارج از فهرست پیشنهاد داد، برنامه نباید آن را به تابعی با نام مشابه نگاشت و اجرا کند.
آرگومانها را با قرارداد مشخص اعتبارسنجی کنید: نوع، محدوده، شناسه و فیلد اضافی. سپس مجوز را بر اساس نشست معتبر و مالکیت رکورد بسنجید. نام مشتری در متن یا شناسهای که مدل ساخته نباید محدوده دسترسی را تغییر دهد. ابزار خواندن و ابزار تغییر، مسیرهای متفاوت بررسی میخواهند.
برای اقدام حساس، خلاصه دقیق اثر را به فرد مجاز نشان دهید و تأیید همان اقدام را بگیرید. تغییر آرگومان بعد از تأیید باید تأیید تازه بخواهد. نتیجه ابزار نیز باید قابل ردیابی باشد؛ پاسخ موفق مدل بدون شاهد ثبت در مقصد، رسید واقعی نیست.
نمونهٔ ساختگی و قابل تکرار
در مثال بیاثر، مدل میخواهد برای سفارش ساختگی زمان تحویل را تغییر دهد. تابع موجود فقط بررسی ظرفیت است و حق تغییر ندارد. برنامه باید درخواست تغییر را رد یا برای مسیر مجاز آماده کند، نه اینکه نام تابع را حدس بزند. اگر ابزار تغییر جدا موجود باشد، ابتدا مالکیت سفارش و سپس تأیید تاریخ دقیق کنترل میشود. تأیید «هماهنگ کن» برای تاریخ متفاوتی که مدل بعداً انتخاب کرده، مجوز خودکار محسوب نمیشود.
محدودیتها و خطاهای رایج
این الگو جای طراحی امنیت کامل ابزار یا تست دسترسی را نمیگیرد. ورودی و خروجی ابزار ممکن است داده غیرقابل اعتماد داشته باشند و نباید دستورهای داخل آنها بر سیاست سرور غلبه کنند. آزمون را با ابزار آزمایشی انجام دهید تا اثر واقعی ایجاد نشود.
کنترل پیش از استفاده
| کنترل | معیار پذیرش |
|---|---|
| تابع | فقط نام دقیق ابزار مجاز از فهرست نقش اجرا شود. |
| آرگومان | ساختار و قواعد مقدار پیش از فراخوانی کنترل شوند. |
| اختیار | مالکیت و تأیید اقدام حساس خارج از تصمیم مدل بررسی شوند. |
کاربرگ همراه
فایل برای طراحی موارد پذیرش و رد است. ستون تابع مجاز را از قرارداد واقعی برنامه بگیرید، نه خروجی مدل. برای آزمون تغییر آرگومان پس از تأیید یک مورد مستقل اضافه کنید تا مرز مجوز قابل مشاهده باشد.
دریافت کاربرگ CSV این راهنما — دادههای داخل فایل نمونهٔ ساختگیاند. نسخهٔ اصلی را نگه دارید و برای آزمون خودتان یک کپی بسازید.
منبع و ادامهٔ کار
OWASP: کنترل مجوز؛ JSON Schema: شیء و فیلدها. تاریخ بررسی منابع: ۱ نوامبر ۲۰۲۶.
اگر کاربرد شما پاسخگویی به مشتری است، مسیر مرتبط اپرا را ببینید و مسئله و محدودیتهای همین کاربرگ را برای بررسی در دمو همراه داشته باشید.