تغییر id برای امنیت بیشتر دیتا

2 روز پیش
توسط حسن حکمتی آپدیت شد
مرتضی مرادی ( 8940 تجربه )
2 روز پیش
تخصص : توسعه دهنده لاراول و برنامه نویس اندروید

سلام دوستان
من تو لاراول وقتی میخوام مثلا دیتا وارد دیتابیس کنم این بصورت خودکار id اضافه میشه 1و2و3و ...
و زمانی که میخوام پست نشون بدم مثلا میزنم post/2 و ... اینطوری هر کسی میتونه عدد رو تغییر بده و به پست بعدی دسترسی داشته باشه.

چطوری کاری کنیم که ای دی هر رکورد مثلا 5 رقم باشه و رندم هم باشه
ایا تو لاراول برای این کار مکانیزم خاصی هست یا اینکه بای خودمون دستی تغییرات رو انجام بدیم؟

ali salimi ( 3770 تجربه )
2 روز پیش

اگر ایدی بخای رندوم باشه
بیا از تابع زمان استفاده کن که هیچوقت تکراری نمیشه و هر وقت دیتایی ثبت میشه ایدیش مسلما تکراری نیست.

حسن حکمتی ( 9790 تجربه )
2 روز پیش
تخصص : برنامه نویس وب، منتور، کوچ

درود بر شما
ای دی رو کاری نداشته باشید، بزارید به همون شکل باشه اما برای نمایش به کاربر می تونید از slug استفاده کنید و حتما باید از middleware استفاده کنید.
توی آموزش های لارول راکت هم دقیقا همه این موارد توضیح داده شده.

وحید ( 2680 تجربه )
2 روز پیش
تخصص : CTO, DevOps CI/CD Specialist، Fullstack Web Developer

@moradiemails
میتونید از فیلد دیگه ای برای این کار استفاده کنید ، توجه کنید که این فیلد حتما باید یونیک باشه ، برای بهینه تر بودن سئو ، بهتره از slug استفاده کنید ، برای تولید اسلاگ هم پکیج هایی هست که با سرچ میبینیدشون ، در آخر با هر کدام از این ها که خواستید کار کنید لازمه که route model binding انجام بدید که موقع بایند کردن $post به درستی پر بشه .

مرتضی مرادی ( 8940 تجربه )
2 روز پیش
تخصص : توسعه دهنده لاراول و برنامه نویس اندروید

@salim
@forughi.vahid @hekmati
ممنون دوستان به خاطر جواب هاتون
بنده هم از slug که گفتید استفاده میکنم
و هم با توجه به این مقاله برای امنیت بیشتر کنترل پنل
https://medium.com/@ikrisnaw/laravel-story-replace-auto-increment-id-with-uuid-8f555bf6f3f
از UUID استفاده کردم
https://github.com/ramsey/uuid

حسن حکمتی ( 9790 تجربه )
2 روز پیش
تخصص : برنامه نویس وب، منتور، کوچ

درود بر شما
@moradiemails

ببینید یک روش دیگه که من در حالت پیور ازش استفاده کردم اینه که یک ستون به تیبل اضافه می کنیم برای افزودن به آدرس.
یعنی توی این فیلد یک رشته رندم و یکتا برای دستیابی به ردیف ایجاد میشه بعد در زمان فراخوانی یا نمایش در url این کد یکتا کلید هست و از هیچ متدی پیروی نمیکنه که قابل تشخیص باشه.
می تونید رشته مورد نظر رو از ترکیب چند آیتم هم تولید کنید یعنی حروف و اعداد و تایم و ...

برای ارسال پاسخ باید وارد سایت شوید