تأیید هویت – API سفارشی امن

من مشتری دسکتاپ را برای یک فروشگاه الکترونیکی ایجاد می کنم و این مشتری از بعضی از توابع با استفاده از API e-shop استفاده خواهد کرد، مانند:

 GetOrders
UpdateOrder
SetOrder
و غیره...

من تأیید هویت سفارشی را برای آن مشتری ایجاد می کنم، اما نمی دانم این است که در برابر حملات امن است.

تمام ارتباطات با سرویس گیرنده توسط HTTPS انجام می شود.

این کار به این صورت است: [19659006] در اولین درخواست مشتری باید نام کاربری و رمز عبور را برای
سرور بنابراین سرویس گیرنده هش رمز عبور را به چه کاربر ورودی و سپس پس از آن
مشتری درخواست را به سرور با نام کاربری و هشدار ارسال خواهد کرد
رمز عبور

  • سرور رمز عبور هشدار را با رمز عبور هشدار در DB مقایسه می کند
    نام کاربری، اگر آن برابر باشد، سرور سرور را ایجاد می کند (مانند api key)

  • در هر درخواست سرور موفق، طول عمر نشانه را تجدید می کند.

  • درخواست ها باید مانند این باشد:

     ] POST / دستورات / دریافت HTTP / 1.1
    میزبان: example.com
    token = 123456789 & orderid = 10
    

    آیا توصیه های امنیتی وجود دارد اگر من باید از درخواست های POST یا درخواست های GET استفاده کنم؟ آیا POST امن تر نیست و سپس دریافت؟ به عنوان مثال POST اطلاعات را در قسمت درخواست HTTP ذخیره می کند، اما GET آن را در URL ذخیره می کند.

    چطوری لیست سفارشی IP کمک می کند یک API را امن کند؟

    من سعی می کنم درک درستی از میزان که فهرست سفیدپوستان IP برای جلوگیری از حملات علیه یک API انجام شود.

    در حال حاضر من به یک سناریوی B2B فکر می کنم که سازمان A یک API را فراهم می کند و سازمان B API را مصرف می کند.

    اگر سازمان A که API را تولید می کند، API آن را تنظیم می کند تا فقط نشانی های آی پی را از سازمان B پذیرفته باشد، چه امنیت اضافی آن را ارائه می دهد؟

    توجه داشته باشید، این غیر فعال است (OP: "علاوه بر این"؟ ) به سایر اقدامات امنیتی مانند مخفی توزیع شده + TLS یا TLS متقابل.

    من می فهمم که این امر بر حمله انکار سرویس تأثیر می گذارد و می تواند (OP: این جمله را پایان دهد؟)

    تأیید هویت – نحوه انتقال کاربر / گذر از کاربر به API به صورت خودکار

    من مطمئن نبودم که آیا این را در StackOverflow یا اینجا بپرسم، اما تصمیمی گرفتم که در اینجا مناسب تر است.

    من یک اسکریپت محلی کاملا اتوماتیک ایجاد میکنم که در یک برنامه اجرا می شود. پس از راه اندازی، اسکریپت هرگز نباید هر گونه تعامل با کاربر را مورد نیاز باشد.

    این اسکریپت نیاز به دسترسی به یک API وب دارد که تنها از احراز هویت کاربر / پاس استفاده می کند. من نیاز به پیدا کردن راه برای یک کاربر اجرای این اسکریپت و آن را به API از طرف آنها دسترسی داشته باشید.

    من به عنوان خوانده شده https://stackoverflow.com/questions/2283937/how-shouldi-i-ethically-approach -user-password-storage-for-later-plaintext-retrie، و من متقاعد شده ام که ذخیره یک رمز عبور یک ایده بد است (حتی اگر همه مرورگرهای وب آن را انجام دهند). با این حال، API بعید است که هرگز ابزار جدید احراز هویت ایجاد کند، بنابراین من گیر هستم.

    چه باید بکنم؟ صبر کنید تا API که ممکن است هرگز تغییر نکند؟ تظاهرات را انجام دهید و رمز عبور را ذخیره کنید؟ چیز دیگری؟

    مرد در وسط – امنیت AWS Lambda ارتباط با غیر HTTPS API

    تعجب بر این است که چه حملاتی ممکن است در سناریوی زیر ظاهر شوند.

    من یک سرویس وب دارم که یک لامبدا AWS (پشت دروازه API) ایجاد می کند که باعث می شود چندین تراکنش (ارسال ایمیل، اضافه کردن به لیست پستی) و سپس یک درخواست برای یک API ارسال می کند. با این حال این API با https تضمین نشده است. API با لیست سفارشی IP تأمین می شود. API همچنین انتظار می رود یک نشانه مجوز در درخواست، که از طریق HTTP تایید مجوز منتقل می شود.

    بنابراین سوال من این است، از آنجا که سرویس وب تنها POST درخواست به سرویس لامبدا، سپس سرور لامبدا POST API، یک کاربر میتواند آن ترافیک را دنبال کند و نقطه پایانی API را پیدا کند؟ به هر حال یک کاربر مخرب می تواند ترافیک خروجی را از نقطه پایانی لامبدا خراب کند؟

    FWIW – هیچ اطلاعات بسیار حساس در API وجود ندارد، اما برخی از داده های کاربر وجود دارد. این کار قبل از ورود به سیستم با استفاده از HTTPS قفل می شود، من فقط کنجکاو هستم که بدانم که بردارهای بالقوه حمله وجود دارد.