نمایش نتایج 1 تا 10 از 10

نام تاپیک: وب سرویس+پرداخت درون برنامه ای

  1. #1
    کاربر دائمی آواتار handinux
    تاریخ عضویت
    اردیبهشت 1386
    محل زندگی
    Linux
    پست
    362

    وب سرویس+پرداخت درون برنامه ای

    با سلام

    مشکلی که برای من پیش اومده اینه که یه اپلیکیشن دارم که قرار از پرداخت درون برنامه ای بازار استفاده کنه.به این صورت که در ازای پرداخت وحه بتونه یک آگهی در سیستم تبلیغاتی من ثبت کنه.قراره بعد از پرداخت یک وب سرویس اطلاعات تبلیغات رو بگیره و ثبت کنه.اما مشکل اینه که چطوراین وب سرویس فقط به کسانی سرویس بده که پرداخت داشتن و هرکسی نتونه از وب سرویس استفاده کنه.نمی خوام کاربر رو هم مجبور کنم اکانت داشته باشه و یوزر پسورد هندلش کنم.سوال اینه که چطور این وب سرویس رو محدود کنم به اونایی که پرداخت داشتن؟

  2. #2

    نقل قول: وب سرویس+پرداخت درون برنامه ای

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

  3. #3
    کاربر دائمی آواتار handinux
    تاریخ عضویت
    اردیبهشت 1386
    محل زندگی
    Linux
    پست
    362

    نقل قول: وب سرویس+پرداخت درون برنامه ای

    نقل قول نوشته شده توسط omid.n1990 مشاهده تاپیک
    نمونه پرداخت درون برنامه ای در همین فروم رو دانلود کنید و تست کنید تا روند دستتون بیاد.
    شما کاربر رو به پرداخت بازار هدایت میکنید بعد از اینکه پرداخت با موفقیت انجام شد به برنامه اتون بازگشت داده میشه و اگر موفق بود اونوقت شما مثلا کاربر رو به یک اکتیویتی دیگه هدایت میکنید که اون اکتیویتی به وب سرویس اطلاعات میفرسته و اگر پرداخت ناموفق بود که طبعا به اون اکتیویتی هدایت نمیشه کاربر و نمیتونه اطلاعات به وب سرویس ارسال کنه
    موفق باشید
    اونوقت ورشکسته مىشم که اىنطورى!
    اگر ىک نفر وب سروىس من رو خارج از برنامه من call کنه مى تونه براحتى و بدون پرداخت تبلىغ درج کنه.
    دوستانى که در زمىنه امن کردن وب سروىس ها بدون لاگىن تجربه دارند بفرماىند چکار باىد کرد.

  4. #4

    نقل قول: وب سرویس+پرداخت درون برنامه ای

    من با این امکان بازار کار نکردم ولی باتوجه به تجارب گذشته چند تا نکته را عرض میکنم شاید راه گشا شود و بقیه دوستان هم بیان تجارب و نظراتشان را بگن

    شما برای اینکار یک مکانیزم اعتبارسنجی نیاز دارید باتوجه به اینکه شما نمیخواهید کاربر را مجبور به عضویت کنید پس فکر میکنم باید چندکار ترکیبی باید انجام دهید
    آیا برنامه شما به ازاء هرپرداخت فقط یکبار به وب سرویس مراجعه می کند و یا اینکه یک مبلغی پرداخت می کند وتا زمانی که آن مبلغ تمام شود هراز چندگاهی می تواند به وب سرویس مراجعه کند و از خدمات آن استفاده کند؟ (بسته به جواب این سوال راه امنیت هم می تواند متفاوتتر باشد)
    1- آیا بازار اطلاعاتی مبنی بر پرداخت مشتریان شما به شما میدهد؟ چه نوع اطلاعاتی هستند؟ آیا به این اطلاعات از طریق برنامه نویسی می توانید دسترسی داشته باشید؟ اگر این امکان وجود دارد می توانید در کنار اعتبارسنجی خود کاربران یک اعتبارسنجی موازی هم انجام دهید
    2- تا اونجائی که میتوانید وب سرویس را باید محدود کنید تا از کسانی که معتبر نیستند داده دریافت نکند مثلا وب سرویس فقط از گوشی یا فقط از آندروید داده دریافت کند مثلا به همراه اطلاعات پرداختی که برنامه شما به وب سرویس ارسال می کند شماره سریال گوشی و دیگر اطلاعات منحصر به فرد (مانند MAC Address) را به وب سرویس بفرستید (شاید اطلاعات اینچنینی را سیستم پرداخت بازار هم برای خودش ثبت می کند نمیدانم)
    3- اکتیویتی که کار ارتباط با وب سرویس را انجام میدهد باید چفت و بست بیشتر بذارید مثل همون چیزی که دوستمون در پست بالا فرمودند درصورتی باز بشه که تائید پرداخت آمده باشد و دیگه هم به هیچ عنوان باز نشود (البته همین قضیه هم میتواند از انعطاف برنامه بکاهد!) قاعدتا به همراه اطلاعات بالائی شما بایداطلاعات تائید پرداخت را هم به وب سرویس بفرستید (اگر بتوانید این اطلاعات را با وب سرویس پرداخت درون برنامه بازار از طریق وب سرویس خودتون چک کنید که دیگر مشکل میتواند حل شود)
    4- فرمت و ساختار اطلاعات تائید پرداخت را در وب سرویس چک کنید (ساده ترین موارد مبلغ - نام بانک - تاریخ - کد تراکنش - کد رهگیری بانک - کد رهگیری بازار) اولا مال امروز باشند و حتی ساختار کدهای رهگیری را چک کنید تعداد رقمها و غیره (شاید کار صد در صدی نباشد هرچی باشد یک لایه امنیت به کارتون اضافه کرده اید)
    5- مهم:
    کسی که بخواهد سوء استفاده کند خیلی راحت با استراق سمع درخواست ارسالی به وب سرویس خودش میتواند در آینده چنین درخواستی را ازطریق برنامه دیگری و یا از طریق حتی یک وب بروزر ساده به وب سرویس شما بفرستد پس تا اونجائی که میتوانید این داده ها را پیچیده به وب سرویس ارسال کنید (کد کنید و حتی در چند مرحله به وب سرویس ارسال کنید) می توانید با چند مرحله ای کردن امنیت را نسبتا بالا ببرید (هرچند که با اینکار انعطاف برنامه کم شود!) مثلا برنامه درخواست ارسال داده به وب سرویس بفرستد وب سرویس هم باید جوابهایی که دربالا عرض کردم را باید درخواست کند البته در چند مرحله و با ترتیبهای کاملا تصادفی از مشتری درخواست کند. مثلا یکبار اول تائید پرداخت بازار را بخواهد و از مشتری دیگری سوم این داده را درخواست کند

    *** در هرصورت همه این گفته قابل دور زدن هستند چون برنامه آندروید قابل Decompile شدن است و کسی که میخواهد شما را ورشکسته کند می تواند با مطالعه سورس شما از مکانیز برنامه شما استفاده کند!
    بهترین کار اینه که شما بصورت موازی تائید پرداخت را از بازار هم بگیرید حتما بازار ریز پرداختیها را به شما گزارش میدهد (از طریق وب سرویس یا از طریق یک ایمیل یا از طریق یک صفحه وب) در وب سرویس خودتان هروقت درخواستی از کاربر به همراه اطلاعات پرداخت رسید آنرا در گزارشهای بازار هم جستجو کنید (این تنها و مطمئنترین راه است!)

    همه کسانی که کار امنیتی انجام دادند هیچ وقت نمیتوانند امنیت را 100% تضمین کنند معمولا کار را با یک سطح امنیت قابل قبول شروع میکنند و با مانیتور کردن سیستم وپیدا کردن حفره ها امنیتی ، آروم آروم لایه های امنیتی اضافه کرده و امنیت را بهتر می کنند

  5. #5
    کاربر دائمی آواتار Nevercom
    تاریخ عضویت
    دی 1387
    محل زندگی
    بستک
    سن
    35
    پست
    1,118

    نقل قول: وب سرویس+پرداخت درون برنامه ای

    یک نکته ی کلی این هست که هر درخواستی که از اپلیکیشن بفرستید، براحتی میشه از محیط دیگه ارسال کرد.
    اگر IMEI رو بفرستید یا MAC Address یا هرچیز دیگه، باز هم میشه اون به درخواست اضافه کرد و فرستاد.
    هیچ راه تشخیصی هم ندارید که درخواست حتماً از گوشی و اپلیکیشن شما ارسال شده (هر پارامتری رو برای این تشخیص درنظر بگیرید، قابل شبیه سازی هست)

    پس باید درخواست دهنده رو خودتون اعتبار سنجی کنید.

    درمورد پرداخت درون برنامه ای بازار متاسفانه نمیدونم چه اطلاعاتی بهتون بر میگردونه یا آیا امکان این رو بهتون میده که پارارمتری رو به وب سرویسشون ارسال کنید و اعتبار سنجیش کنید که آیا خرید کرده یا نه.

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

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

  6. #6
    کاربر دائمی آواتار handinux
    تاریخ عضویت
    اردیبهشت 1386
    محل زندگی
    Linux
    پست
    362

    نقل قول: وب سرویس+پرداخت درون برنامه ای

    ​آقاىان pbm و neverrcom خىلى ممنون.من بررسى مىکنم و هروقت به جواب رسىدم ىا سوال تازه اى مطرح شد هم اىنجا اعلام خواهم کرد.

  7. #7

    نقل قول: وب سرویس+پرداخت درون برنامه ای

    این کاری که شما می‌خوایید انجام بدید فکر کنم با developerPayload قابل پیاده سازی باشه. وقتی شما با متد launchPurchaseFlow درخواست خرید می‌دید یه رشته رو به عنوان developerPayload به این متد می‌دید. این رشته به همراه خرید شما تو مارکت ثبت می‌شه هر وقت خواستید می‌تونید اون رشته رو از طریق مارکت دریافت کنید.
    شما می‌تونید یه رشته منحصر به فرد ایجاد کنید به عنوان developerPaylod. هر وقت که خرید با موفقیت انجام شد این رشته رو تو سرور خودتون ذخیره کنید.
    بعد از اون هرکس خواست تبلیغ ایجاد کنه باید این رشته منحصر به فرد رو هم ارسال کنه و باقی ماجرا ...

  8. #8

    نقل قول: وب سرویس+پرداخت درون برنامه ای

    از imei گوشی استفاده کن.هربار پرداخت انجام شد تو گوشی imei اش تو سیستم ات ثبت کن

  9. #9
    کاربر دائمی آواتار abbasalim
    تاریخ عضویت
    تیر 1391
    محل زندگی
    یزد ـ‌ اردکان
    پست
    1,039

    نقل قول: وب سرویس+پرداخت درون برنامه ای

    نقل قول نوشته شده توسط darkeliden مشاهده تاپیک
    از imei گوشی استفاده کن.هربار پرداخت انجام شد تو گوشی imei اش تو سیستم ات ثبت کن
    سلام دوستان
    دوست عزیز جناب Nevercom گفتن که این قابل شبیه سازیه و معتبر نیست

  10. #10

    نقل قول: وب سرویس+پرداخت درون برنامه ای

    نقل قول نوشته شده توسط abbasalim مشاهده تاپیک
    سلام دوستان
    دوست عزیز جناب Nevercom گفتن که این قابل شبیه سازیه و معتبر نیست
    دوست عزیز تمام الگوریتم ها هک میشن . اینجا بحث هزینه الکی هست. کسی نمیاد واسه یه تبلیغات ایمی شبیه سازی کنه. میتونه تلفیقی از ایمی و uuid بزنه و الکی هزینه سرور نکنه . مشکل برنامه نویس های ایرانی همین بالانس نکردن هزینه و درصد خطاست

تاپیک های مشابه

  1. پرداخت درون برنامه ای
    نوشته شده توسط unit001 در بخش Android Studio
    پاسخ: 361
    آخرین پست: چهارشنبه 25 بهمن 1396, 12:18 عصر
  2. پرداخت درون برنامه ای برای جیکوئری موبایل
    نوشته شده توسط salmanzadehali در بخش Android Studio
    پاسخ: 0
    آخرین پست: چهارشنبه 06 فروردین 1393, 18:12 عصر
  3. درخواست کمک در قسمتی از پرداخت درون برنامه
    نوشته شده توسط sajad.3zar در بخش Android Studio
    پاسخ: 4
    آخرین پست: یک شنبه 27 بهمن 1392, 09:47 صبح
  4. پرداخت درون برنامه ای
    نوشته شده توسط amirarcs در بخش Android Studio
    پاسخ: 4
    آخرین پست: یک شنبه 29 دی 1392, 21:27 عصر
  5. پرداخت درون برنامه‌ای
    نوشته شده توسط uzer68 در بخش Android Studio
    پاسخ: 1
    آخرین پست: یک شنبه 15 دی 1392, 22:21 عصر

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •