كيف تسمح إما A) HTTP AUTH دون الرمز المميز CSRF + SSL أو B) تتطلب رمز CSRF مع ابتكار؟
-
27-09-2019 - |
سؤال
لديّ تطبيق Rails 3 تم تكوينه مع تسجيل المستخدم باستخدام Bupe Running على خادم. أسمح للأشخاص بتسجيل الدخول إلى الخادم من خلال موقع الويب وأيضًا السماح للأشخاص بإنشاء حسابات وتسجيل الدخول باستخدام تطبيق iPhone.
عندما يستخدم الأشخاص تطبيق iPhone ، أود دعم هذين الإجراءين:
أ) الاشتراك في الحساب بدون CSRF (هل هذا يتسبب في أي مشاكل أمنية)؟
ب) تسجيل الدخول باستخدام مصادقة HTTP المضمونة بواسطة SSL
ج) أي طلبات نشر إلى الخادم بعد تسجيل الدخول لتأمين مع HTTP Auth مع SSL.
عندما يكون المستخدم على الموقع الإلكتروني ، أريد أن أتطلب رموز CSRF على جميع الإجراءات (بحيث لا يكتب المستخدم اسم المستخدم وكلمة المرور في كل مرة).
شكرا لك على مساعدتك.
المحلول
يمكنك تعطيل رمز CSRF بشكل انتقائي على وحدة تحكم أو طرق عمل فردية.
class StatsController < ApplicationController
skip_before_filter :verify_authenticity_token
...
end
أنا أتطلع فعليًا إلى القيام بشيء مماثل ، وسأحمل iPhone استخدام اسم مجال مختلف وتعطيل بشكل انتقائي مرشح: Verify_Authenticity_token استنادًا إلى بشرتين. هذا هو فقط للاحتفاظ بنا حتى نتمكن من الحصول على تنفيذ OAUTH2 وتشغيله.