یک اسکریپت PHP بنویسید که نام فایل و نام کاربری مالک جدید را از طریق فرم وب دریافت کرده و با استفاده از تابع chown مالکیت فایل را تغییر دهد و نتیجه عملیات را به کاربر نشان دهد.
4.0 بازدید آخرین ویرایش در 202 روز قبل ساعت 03:03 0.0
برای حل این مسئله یک فرم HTML با متد POST بسازید و در پردازشگر PHP ورودیها را اعتبارسنجی کنید (بررسی وجود فایل با file_exists، جلوگیری از traversal با basename یا محدود کردن به یک پوشه مشخص). سپس از تابع chown($filename, $user) استفاده کنید و نتیجهی true/false را چک کرده و پیام مناسب نمایش دهید. توجه داشته باشید که chown تنها روی سرورهای یونیکسمانند کار میکند و معمولاً برای تغییر مالک نیاز به دسترسی ریشه (root) یا مالک فعلی فایل است؛ بنابراین در محیط توسعه و سرور واقعی مجوزها و امنیت ورودیها را در نظر بگیرید.
1 پاسخ
جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من
در حال بارگیری...
برای ارسال پاسخ باید با حساب کاربری وارد شوید.
ورود به حساب کاربری
این کار از نظر امنیتی خطرناک است، زیرا فایل و نام کاربری را مستقیماً از فرم وب میگیرید و بدون محدودیت ممکن است به فایلهای ناخواسته یا دایرکتوریهای خارج از حوزه دسترسی پیدا کنید؛ حتماً چککنید که تنها به یک پوشه مشخص دسترسی دارید، از basename یا realpath برای جلوگیری از traversal استفاده کنید و وجود فایل را با file_exists بررسی کنید. chown فقط در سیستمهای یونیکس-مانند کار میکند و معمولاً به دسترسی ریشه یا مالک فعلی فایل نیاز دارد؛ مطمئن شوید سرویس PHP با کاربری با مجوز مناسب اجرا میشود. اعتبارسنجی ورودیها و محدودسازی مسیرها را بهطور جدی پیاده کنید و در محیط تولید لاگهای خطا را نگه دارید یا کار را به یک فرآیند پسزمینه بسپارید. در نهایت نتیجه عمل را به کاربر با پیام شفاف نشان دهید و در صورت شکست، دلیل را گزارش کنید.
گزارش