رفتن به مطلب
  • 0

راه حل جلوگیری از دسترسی دیگران به جزء اپ ما به json سرور


hosseinkarimian

سوال

سلام دوستان الان مثلا یه اپی نوشتیم که با سرور ارتباط داره فرض کنید صفحه اصلی اپ نمایش پست ها هستش  مثلا برنامه دیوار (عکس ، نام  ) و...

و برای نمایش صفحه اول مثل دیوار باید اطلاعات از سرور به صورت json بگیریم و با   recyclerview  نشون بدیم.

مشکل اینه: اگه کسی آدرس فایل json داشته باشه به کل اطلاعات پست ها رو  میتونه داشته باشه چه راه حلی هست که فقط خود اپ ما بتونه دسترسی داشته باشه

توی انجمن مطرح شده بود ولی نتجیه خوبی گرفته نشده.

ممنون از کمک شما

لینک ارسال
به اشتراک گذاری در سایت های دیگر

1 پاسخ به این سوال تاکنون داده شده است

ارسال‌های توصیه شده

سلام

متاسفانه بنده زیاد سمت BackEnd  درگیر کار نبودم و دوستان Api میزدن.

ببینید میشه که شما مقادیر خاصی رو بین سرور و کلاینت اعتبار سنجی کنین.

بر فرض طبق یک الگوریتم خاصی توی اندروید یک توکن، یک مقدار یا API Key رو تولید کنید و توی وب این مقدار رو تجزیه تحلیل و اعتبارسنجی بشه طبق پارامترهایی تا بفهمید که از سمت برنامه ی اندرویدی شما بوده و ن دسترسی های خارج از اپ.

 

نقل قول از یکی از کاربران برنامه نویس »

نقل قول

یک راه حل این هست که یک checksum ویا یک CRC بسازید در اپلیکیشن های خودتون حالا چه وب چه موبایل سمت سرور هم این کد را مجددا بسازید با کد دریافتی خودتون از کلاینت ها مطابقت بدهید در صورتی که رکویست به سرور از سمت برنامه های خودتون نبود رکویست کنسل کنید اینطوری دیگه به راحتی نمیتونن از وب سرویس های شما استفاده کنند.
برای CRC هم می توانید از این روش استفاده کنید
1- داده های مورد نظری که می خواهید ارسال کنید را با یک generator مثل این CRC12 : G=X^12+X^11+X^3+X^2+X^1+1 تقسیم کنید.
2- بایقیمانده تقسیم را به فریم داده اضافه کنید در اینجا حتی می توانید از اعداد ابتکاری ریاضی هم استفاده کنید
3- داده را به سمت سرور ارسال کنید.
4- در سمت سرور هم همین عملیات را بالعکس تکرار کنید باقیمانده تقسیم و داده ها را باهم مقایسه کنید.
حتی با کمی تغییر این الگوریتم می توانید از دستکاری داده هاتون هم توسط ابزارهای اسنیفینگ در امان بمونید مثلا تصور کنید که داده هایی که با جنراتور تقسیم کردید را در سمت سرور هم اگر مجددا تقسیم بر جنراتور و باقیمانده تقسیم که دریافت کردید انجام بدید نتیجه باید 0 شود که در اونصورت یعنی داده های شما تغییری در بین راه نداشته اند و مطمن هستند.
البته روش های دیگه مثل Hash و checksum و... هم هستند حتی می توانید از ترکیب این روشها هم استفاده کنید.

 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

بایگانی شده

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

  • کاربران آنلاین در این صفحه   0 کاربر

    • هیچ کاربر عضوی،در حال مشاهده این صفحه نیست.
×
×
  • اضافه کردن...