PDA

View Full Version : قفل کردن فیلدهای دیتابیس و یا جداول



tux-world
یک شنبه 11 اسفند 1392, 14:24 عصر
سلام به همه لاراول کاران عزیز. میخوام جداول دیتابیس رو برای استفاده های خاص قفل کنم. مثلا یه قسمت SDK دادم به مشتری میگم که با این میتونی کوئری بگیری از دیتابیس. برای اینکه نتونه تغییری بده تو دیتابیس به نظرتون چیکار میشه کرد؟

rezakho
یک شنبه 11 اسفند 1392, 16:43 عصر
راستش درست متوجه نشدم منظورتون از SDK رو؟!
میخواید سرویس یا API بدید؟
و همین طور منظورتون از تغییر، تغییر ساختار هست یا داده؟

tux-world
دوشنبه 12 اسفند 1392, 08:12 صبح
سلام. مثلا من سیستمی رو برای مشتریان آماده کردم که به نیاز خودشون بتونن از دیتابیس گزارش تهیه کنند به صورت دستی. با مواردی که بهشون آموزش داده میشه اینها بتونن با استفاده از کدهای php سلکت بزنن و کوئری بگیرن. میخوام اینا نتونن هیچ داده ای رو تغییر بدن. یه راهش که به ذهنم میرسه اینه که من بیام یه سری توابع محدود براشون تعریف کنم که با استفاده از اونها فقط بتونن کوئری بگیرن.

MMSHFE
دوشنبه 12 اسفند 1392, 09:32 صبح
خوب توی کنترل پانل هاستتون یک کاربر روی دیتابیس تعریف و اضافه کنید و Grantهای مربوط به UPDATE و DELETE و... رو ازش بگیرین و توی اتصالها از همون کاربر استفاده کنید. همه چیز که نباید بیفته گردن PHP

tux-world
دوشنبه 12 اسفند 1392, 10:55 صبح
قبلا این به فکرم رسیده بود. ولی برای کاری که من میخوام عملی نیست

MMSHFE
دوشنبه 12 اسفند 1392, 11:24 صبح
خوب ببینید، بهرحال اگه اینطوری عمل نکنید، چون برنامه شما Open Source هست (هرچقدر هم Obfuscate کنید بازهم میشه بازش کرد - سخت هست ولی غیرممکن نیست)، درنتیجه وقتی نام کاربری و رمز عبور اتصال به دیتابیس رو داشته باشن، خودشون میتونن اسکریپت بنویسن و هرکاری دلشون خواست با دیتابیس انجام بدن.

tux-world
دوشنبه 12 اسفند 1392, 11:31 صبح
این سیستمی که نوشتم اپن سورس نیست. تجاری و فروشیه که سی پانل و سورس هم نمیدم به مشتریا. ولی میخوام یه امکاناتی بزارم در اختیارشون که بتونن کوئری بگیرن از دیتابیس. اسم جداول و دیتابیس و فیلدها fake هستش. یعنی یه اسم دیگه من به مشتری میدم به همون اسمی نیست که تو دیتابیسه

MMSHFE
دوشنبه 12 اسفند 1392, 12:55 عصر
خوب وب سرویس طراحی کنید (API) که بتونن با هر زبان و برنامه ای که میخوان وصل بشن و بخونن و براشون شناسه کاربری و رمز عبور بسازین (هرچقدر خواستن و لازم داشتن). اینطوری میتونید برای هر کاربر توی سیستم خودتون سطح دسترسی هم تعیین کنید که برای مثال، فقط بتونه متدهای خاصی رو از وب سرویس صدا بزنه. توی متدها هم هرکاری که خودتون لازم میدونید، انجام بدین.

tux-world
دوشنبه 12 اسفند 1392, 13:07 عصر
درسته این هم راهیه. مستنداتی دارید بررسی کنم؟

MMSHFE
دوشنبه 12 اسفند 1392, 13:12 عصر
http://devzone.zend.com/25/php-soap-extension