IPN delivery failed. HTTP error code 403: Forbidden - django

I am trying to test IPN. Working with django-paypal. What could be wrong.
The URL is working. No errors otherwise...
But when I test this, it says IPN delivery failed and error code is 403,

Same problem on my site. Turns out that when telneting the server, I get the following details concerning the 403:
Forbidden (403)
CSRF verification failed. Request aborted.
Hooray, the csrf validation works ;D Now i gotta figure out how to turn it off for this particular form. Hope this hint helps anyone encountering the 403 when using django-paypal.

Do you have your website password protected? It sounds like paypal is getting a 403 response from your webserver. Make sure paypal can get to your website without requiring basic auth or something like that.

Related

Forbidden (403) CSRF verification failed. Request aborted. Django Admin

I've been using the Django admin panel for my project the entire time and suddenly after I cleaned my cookies it just won't work again it keep sending me this error:
Forbidden (403) CSRF verification failed. Request aborted.
Help:
Reason given for failure:
CSRF token missing or incorrect.
I am answering this question from the very less information available.
When you delete your cookies, the session-key stored on your browser side will be deleted. This way any API calls made after that will result in 403 error. Just to make sure this is correct, you can open your incognito tab in google chrome and try the same request after logging in.

Wagtail: Intermittent CSRF Verification Error

When saving a draft, I have been getting a "CSRF verification failed. Request aborted." error. It happens only intermittently, trying a couple of times to save the draft usually works. I am running Wagtail 2.2.2 and Django 2.0.3, and I have 'django.middleware.csrf.CsrfViewMiddleware' in my settings.py file. Here is the error message:
Forbidden (403)
CSRF verification failed. Request aborted.
Reason given for failure:
CSRF token missing or incorrect.
This is due to a custom implementation of Shibboleth my organization uses for authentication. It seems that if I previewed a page before saving the draft, the CSRF token was changed by Django, which Shib did not like. In our own code, we extend RemoteUserMiddleware to use with Shib. So, we changed that to PersistentRemoteUserMiddleware and it seems to be working now.

403 Error for user verification (API)

I have an Web application that require users to verify their email account after registration. It works when we run it locally and current server.
However when we migrate it to the a staging server, the verification brings the below error.
POST http://www.XXXXXXXXX.org/api/account/verify 403 (Forbidden)
Can i ask if anyone have any idea on this?
Thank you!
Jo

CSRF verification failed. Request aborted. in Facebook canvas

Ok, so as you can see I have a Django app going on using csrf. It all works perfectly but, now I want my app to be shown in a iframe (Facebook canvas).
While in my main domain it works, in the Facebook canvas I keep getting this error:
Forbidden (403)
CSRF verification failed. Request aborted.
Reason given for failure:
CSRF token missing or incorrect.
I know I'm missing something, but right now I don't know what is it.
Code:
In settings.py I have this correctly:
FACEBOOK_APP_ID = '***************'
FACEBOOK_API_SECRET = '********************************'
FACEBOOK_EXTENDED_PERMISSIONS = ['email','publish_actions']
I'm using Heroku and in my heroku confing in the heroku toolbelt I have FACEBOOK_APP_ID and FACEBOOK_SECRET also correctly set.
More info:
A friend, really long time ago (nearly two years ago) already had set a Facebook login and a Facebook register working in the app.
I hope this will help you: https://github.com/jjanssen/django-fb-iframe
Django and Facebook do not get along. When embedding a microsite into Facebook it will call an iframe with a POST request. Of course your Django project will return a CSRF verification failed.
This little Django app will prevent that specific error by converting
a POST request with the key signed_request to a GET request. Of course
this is just plain ugly, but Facebook should not mess with our
application.

Error reporting in Django for 403 errors

Currently I have my production environment set up so that MANAGERS are emailed any time there's a 500 error. I would also like to be emailed anytime someone tries to access something they don't have permission to (i.e., they produce a 403 error).
As far as I can see, you can easily get Django to email you when someone produces a 404 (https://docs.djangoproject.com/en/dev/howto/error-reporting/#errors), but there's nothing like this for a 403.
What's the best way to get Django to send emails when someone produces a 403?