ارسالها: 145
موضوعها: 70
تاریخ عضویت: خرداد 1394
اعتبار:
0
تشکرها: 15
6 بار تشکر شده در 6 پست
سلام دوستان
درگاه جهان پی رو روی سایتم فعال کردم، ولی هنگام برگشت csrf رو خطا میده و تایید نمی کنه. تراکنش انجام می شه ولی توس سایت خودم و توی پنل جهان پی ثبت نمی شه چون callback صدا زده نمی شه
اومدم توی beforeAction بگم اگه متد verify صدا زده شد، csrf رو غیر فعال کن، ولی دیدم parent::beforeAction هم false بر می گردونه
حالا موقتا اون عملیات وصل شدن به درگاه و تایید بعد از درگاه رو توی یه کنترلر دیگه که کلا csrf روش غیر فعال هست گذاشتم و داره کار می کنه
خواستم ببینم کار اشتباهیه و اینکه مشکل csrf ام کلا چی هست؟
ممنون می شم راهنمایی کنید.
03-09-1394، 01:43 ق.ظ
(آخرین تغییر در ارسال: 03-09-1394، 01:44 ق.ظ توسط behtateam.)
ارسالها: 14
موضوعها: 4
تاریخ عضویت: تير 1394
اعتبار:
0
تشکرها: 10
9 بار تشکر شده در 6 پست
دوست عزیز CSRF Validation برای اطمینان از اینه که فرم در داخل وب سایت شما پر شده و داده ها از سایت شما ارسال شدن به کنترلر و از جای دیگه نمیان
وقتی از جهان پی ریدایرکت وجود داره چنین اتفاقی نمیفته و به خاطر همین به شما خطا میده
شما باید در کنترلر مربوطه enableCsrfValidation رو برابر با false قرار بدید
ارسالها: 3,701
موضوعها: 140
تاریخ عضویت: اردیبهشت 1394
اعتبار:
134
تشکرها: 195
3447 بار تشکر شده در 2120 پست
csrfValidation جزو فیلتهاست و همونطور که دوستمون گفتن، باید توی کنترلر مربوطه غیرفعالش کنید. چک کردن فیلترها قبل از beforeAction کنترلر رخ میده.
ارسالها: 145
موضوعها: 70
تاریخ عضویت: خرداد 1394
اعتبار:
0
تشکرها: 15
6 بار تشکر شده در 6 پست
ممنون
اینکه parent::beforeAction($action) مقدار false بر می گردوند برای چیه؟
در حال حاضر کل عملیات ارسال به درگاه و تاییدش رو بردم توی یه کنترلر دیگه و کلا توی اون کنترلر csrf رو غیر فعال کردم
ارسالها: 3,701
موضوعها: 140
تاریخ عضویت: اردیبهشت 1394
اعتبار:
134
تشکرها: 195
3447 بار تشکر شده در 2120 پست
اگه false بده یعنی اکشن نباید اجرا بشه.
ارسالها: 145
موضوعها: 70
تاریخ عضویت: خرداد 1394
اعتبار:
0
تشکرها: 15
6 بار تشکر شده در 6 پست
می تونم دلیلش رو پیدا کنم؟
یعنی امن نیست؟ مشکلی پیش میاد؟
ارسالها: 3,701
موضوعها: 140
تاریخ عضویت: اردیبهشت 1394
اعتبار:
134
تشکرها: 195
3447 بار تشکر شده در 2120 پست
این یه ابزاره برای شما. مثلاً اگه خواستین توی فیلتری که خودتون طراحی کردین، در شرایط خاصی اجازه نده اکشن اجرا بشه، کافیه return false کنید.