Spark,
When I get the data back from Facebook, in the Facebook return method, I create a user ID ( first name + last name plus Fscebook id token ( the one that's the same each time ) and password ( I use the token as the password) and I pass these to the login service ... If the service fails ( in the failure event ), I create a new user ( first time this user has used my app ) with the credentials I just mentioned.
That creates a user ID and login for each unique users from Facebook. I can track their activity and give hem each sessions on the db. I like this as I believe it's more secure.
Another route, likely less recommended, would be to have each instance of you app login with your master key. I'd be careful with using this approach ... As having your master credentials get hacked would be very bad. That said... Risk v time v reward is always worth understanding. In this approach if you needed to track db activity back to users you could add a field to any collections where the users added data... And push the Facebook token to a column there,
Hope that helps. If not ... Someone from appery might be able to give you a more enlightened response....
Best,
Bruce