I am trying to test the Facebook login feature for a website staging environment, but when logging in with a test user I see this error message:
Error
User is not allowed to see the application.: The user is not allowed to see this application per the developer set configuration.
I have set App Domain to http://www.mysite-stage.com/. I've also added a Website platform for my app and set the site URL to http://www.mysite-stage.com/.
The website http://www.mysite-stage.com is actually accessible to everybody on the web, so there should be no issues there.
This method of testing Facebook integration for the site was working up to about 1-2 months ago, so I'm a little confused as to why it's not working anymore.
Are you sure you created the test user for that application?
Facebook won't let you login as a test user that was created under a different app than the one you are trying to sign in with.
Facebook test users are app-specific.
Yo can also create test users through the facebook developers site:
http://developers.facebook.com/apps/
- Select your app
- Roles
- Test Users
Since I can't add a comment yet, the problem is with you having made your app available to the public but you are trying to sign in with a test account.
Have you tried using the
installed=true
parameter once you use
POST /{app-id}/accounts/test-users
to create the Test Users? See https://developers.facebook.com/docs/graph-api/reference/app/accounts/test-users#publish
Related
I got a job interview which requires me to create a web app with Facebook login. I created the app and everything is working fine, But I got problems...
I noticed that my login page works only with my facebook account because it is in developer mode - this is a big problem for me because my interviewer wont be able to use this feature.
Is threre any way to allow all users test my app without going public with it (I dont have privacy policy , urls, etc...)
for now I am thinking to create a fake test account and send by mail but it is stupid Idia...
Go to your Facebook app Dashboard and under Roles tab try adding your client profile as Administrators/Developers/Testers your client has to accept the provided role and now it should work as expected.
I have taken the following steps:
On the Facebook dashboard, I created a Facebook App.
Also on the dashboard, I created a test app as a child of the Facebook app (the Dev version, for testing).
I uploaded a build of my app, and confirmed I could run it from the
admin account.
I gave two of my real-world Facebook friends the Tester role in the
dashboard.
When the real-world friends try running the app, they get 404 errors
"the requested URL was not found on this server" when it tries loading
"https://apps-APP_ID.apps.fbsbx.com/hosted-canvas/e30=/.
I am using Facebook's Simple Application Hosting. The url for the app is "https://apps.facebook.com/APP_ID". When the admin hits this it works fine, when the Tester hits it they get the error. Some have suggested that there is a sandbox setting that needs to be turned off, but I see no such thing in any of the settings on the Dashboard. Any insights you could offer would be greatly appreciated.
Not sure if it helps anyone figure it out, but the app consists only of a data file, a Javascript file (xxx.js), and an index.html.
Holy moly - alright I'm hoping this helps someone else out. Apparently, when you create an app, and then create a test app so that you can establish a dev environment for testing - which is standard procedure - you have to add any testers to the parent (production) app under "Roles". I was only adding it under "Roles" for the test app, which apparently is not enough. If anyone from Facebook is reading this, please update your docs, or update the dashboard to issue a warning to people who only add testers under the test app.
We also have to push the app to production (though yet to approved),
If the status is set to "testing", only admin user can find it in my case.
Using Visual Studio 2013 Update 5, I have created a boilerplate MVC 5 application with Individual User Accounts auth option selected, and I have been trying to implement social logins using the template code, but have been unsuccessful.
I have ensured all NuGet packages are up to date, and the code is using MVC 5.2.3; Owin 3.0.1; AspNet.Identity 2.0.0.
I can get everything working fine, including authenticator apps using OtpSharp, but the Facebook login is just not working whatever I try.
I have created the Facebook App, set all the relevant options on that and set the AppId and AppSecret in my Startup.Auth.cs file.
When I try to login with Facebook, the MVC site redirects me to Facebook, which prompts me with the auth screen for the app. I click OK and accept this then I am redirected back to the MVC app. If I check the authorised apps under my Facebook account, my app is listed and shows that it has granted permission to the app to retrieve email address.
The callback works fine but when it hits ExternalLoginCallback and in particular:
var loginInfo = await AuthenticationManager.GetExternalLoginInfoAsync()
loginInfo always returns null.
Looking at the Request it shows an error of access_denied:
https://localhost:44301/Account/ExternalLoginCallback?ReturnUrl=%2Fmanage&error=access_denied
I have read pretty much every blog post and SO question on this error and whilst most of them are helpful, most are also out of date and not relevant.
It would seem that something is missing from the templated project, or something has changed elsewhere as no matter which tutorial I read, and options I set, the result is the same.
I have tried this internally on a dev machine running IIS Express and externally on a hosted machine running IIS 7.5 too and the results are the same.
I've even decompiled the Microsoft.Owin.Security.Facebook library to see where that particular section of the querystring is set to no help.
If I had any hair I'd have pulled it all out by now.
I'll take any suggestions. Can anyone help?
Facebook loves to make things difficult. Access_denied sounds like they are blocking you on purpose. Check your developer dashboard and the accounts authorized to test your app while its in development mode. The email permission is approved by default, so that isn't your issue.
Make sure the account you are testing with is added here:
If that doesnt solve it, make sure you have the correct app domains (testing and live) listed in the domain section here:
I had the exact same issue. No matter what I did the facebook would show the login, get permissions and then return back to the Login page instead of the Email confirmation page.
Using Fiddler Facebook would invoke "http://localhost:1234/signin-facebook&code=SOME_SECRET_CODE_HERE", and then my application's controller would invoke "http://localhost:1234/ExternalLoginCallback?error=access_denied". I was sure Facebook is refusing the access. It was only after implementing a Facebook Javascript SDK Sample, I realised I could successfully login and also view FB scopes!
My Dev environment
MVC 5 application
Visual Studio 2013 Community edition Update 5
Microsoft.OWIN v2.2.1
Microsoft.OWIN.Security.Facebook v3.0.1
Finally I found a YouTube Video by ProCoder which mentioned to put the correct path in the Valid OAuth redirect URIs as http://localhost:1234/signin-facebook and it worked. If you haven't already added, you will need to add Facebook Login product to your Facebook app.
I also set App Domain to localhost and Site URL to http://localhost:1234/
I have added 127.0.0.1 and MY.EXTERNAL.PUBLIC.IP to the Server IP Whitelist Under Security in the Advanced Settings option of the Facebook app.
All these settings I replicated in a new MVC 5 application and it worked like a charm.
update the package Owin.Security.Facebook 3.0.1 to 3.1.0
It works for me
I'm using Unity and prime31 plug in to access Facebook via my iPhone. I'm trying to test requests via my app by sending a request to a second test Facebook account on my iPhone (so I have my primary Facebook account and I've created a second one for the purposes of testing).
The problem I'm coming across is that I'm logging out of my normal Facebook account on the Facebook app and then logging into my test account. I'm then running my own app to test the requests. However, when I execute a 'me' graphrequest, it's still returning the details of my primary account (even though I logged into my test Facebook account before running my app).
I don't quite understand why it's doing this - I understand that there is a facebook settings page within iOS settings, but I'm not sure if this has anything to do with it?
Can anyone point out where I'm going wrong?
Thanks in advance!
I have used Face book Apps for register and login for my website (in PHP). Problem is very simple for you all experts.
When I try to login via FaceBook using my email id which I am using for Facebook developer login then I succeed but if I give any other email ID I can't able to login.
Ex.
x123#yahoo.com is id which I'm using for Facebook Developer Account
a123#gmail.com is normal Facebook user account.
Now if use x123#yahoo.com for login in my website, I am successful and redirected to Profile Page)
But if I use a123#gmail.com for login in my website I FAIL and I come back on same page from where I tried to login
Any guidance will help me to move forward I'm stuck here
By the reading of your problem I think you have your app on Sandbox mode. If you want to test on other profiles, you should consider creating Test Users.
Depending of your purposes, you may create another app just to make your tests (and therefore need not to be on sandbox mode).