"b14b9f210ebd859a1c924418a001f82d" . . . . "OdsFacebookAPIKeySecretExUsage" . . . . "2017-06-13T06:08:32.046409"^^ . . . . . . . . . "2018-04-05T15:59:23.775365"^^ . . . . . . . . . . . . . . . . . . . "2018-04-05T15:59:23Z" . . . . . . . . . . . . . . . . . . . "2017-06-13T06:08:32Z" . . . . . "%META:TOPICPARENT{name=\"OdsSetLoginAuthenticaionKeys\"}%\n\n---+Using Facebook OAuth key-secret Configuration Guidelines\n\n%TOC%\n\n---++ What?\nUse Facebook as 3rd party application for registering a new user or logging into ODS DataSpace as already registered ODS User which account is associated with a given Facebook account.\n\n\n---++ Why? \nMakes the process of managing users register/log in activities easier. \n\n\n---++ How?\n\nIn order to be able to register a new user or to log in into ODS Dataspace as already registered ODS user, you need to:\n * Create ODS application within Facebook:\n 1 Get an API Key -- for identification;\n 1 Get an Secret Key -- for hash salting;\n 1 Provide a Callback URL -- for request & access token exchange via redirection.\n * Configure as ODS Administrator in Site Settings->Login Authentication Keys the Facebook API to use the generate from above Client ID\n\nWhen the above is done, you can perform the following activities in ODS:\n * Register in ODS using your Facebook credentials, or:\n * For a regular ODS user, for ex. with name XXX you can add in Profile->Personal->Online Accounts your Facebook account, which then will enable you to log in in your ODS XXX user dataspace using the Facebook account credentials.\n\n\n---+++ Examples\n\n\n---++++ Prerequisites\n\n * A [[http://facebook.com/][Facebook user account]] \n * Administrative (DBA) access to a [[http://virtuoso.openlinksw.com/][Virtuoso Server]] instance, on which the following have been installed --\n * [[https://virtuoso.openlinksw.com/download/][ODS-Framework VAD package]]\n\n\n---+++++ Steps for Configuring Facebook API Key and Secret Key\n\n---++++++ 1 -- Get Facebook API Key and Secret Key for use with ODS \n\n 1 Browse to <[[https://developers.facebook.com/apps][https://developers.facebook.com/apps]]> and enter your Facebook use credentials:\n%BR%%BR%%BR%%BR%\n%BR%%BR%%BR%%BR%\n 1 Click on Create New App:\n%BR%%BR%%BR%%BR%\n%BR%%BR%%BR%%BR%\n 1 In the presented form:\n 1 Enter application name, for ex. \"MyODSExample\"\n%BR%%BR%%BR%%BR%\n 1 Click \"Continue\".\n 1 Enter captch string:\n%BR%%BR%%BR%%BR%\n 1 Click \"Continue\": \n 1 The application should be registered and you will be shown a API ID and Secret for the newly registered application. You can copy these now as you will need these in the steps that follow:\n%BR%%BR%%BR%%BR%\n 1 Provide a Callback URL -- Click on \"Website with Facebook Login\" and enter your ODS site URL that should match the host of the ODS installation. For ex. if ODS runs at http://example.com/ods/ then the URL in the Facebook app should be http://example.com.com/ :\n%BR%%BR%%BR%%BR% \n 1 Click \"Save Changes\".\n%BR%%BR%%BR%%BR% \n\n---++++++ 2 - Configure ODS to use your Facebook Consumer Key and Secret \n\n 1 Browse to your Virtuoso + ODS instance, http://<cname>[:<port>]/ods, e.g., <[[http://example.com/ods/][http://example.com/ods/]]>, and click Sign In.\n%BR%%BR%%BR%%BR%\n 1 Log in as a Virtuoso+ODS user with Administrator privileges, e.g., dba.\n%BR%%BR%%BR%%BR%\n 1 Click on Site Settings:\n%BR%%BR%%BR%%BR%\n 1 Click on Login Authentication Keys:\n%BR%%BR%%BR%%BR%\n 1 Select FacebookAPI in the API Name menu, provide the API Key and Secret from the new Facebook application you created above, and click Add.\n%BR%%BR%%BR%%BR%\n 1 ODS is now configured to use Facebook.\n%BR%%BR%%BR%%BR%\n\n\n---++++Example for Configuring regular ODS user to log in into ODS using Facebook Account credentials\n\nHere is a sample scenario how to configure a regular ODS user to be able to log in in its ODS Dataspace using his/her own Facebook Account:\n \n 1 Browse to your Virtuoso + ODS instance, http://<cname>[:<port>]/ods, e.g., <[[http://example.com/ods/][http://example.com/ods/]]>.\n%BR%%BR%%BR%%BR%\n 1 Log in as a Virtuoso+ODS user with normal privileges, e.g., demo.\n%BR%%BR%%BR%%BR%\n 1 Go to Profile Edit->Personal->Online Accounts:\n%BR%%BR%%BR%%BR%\n 1 Click \"Add\":\n%BR%%BR%%BR%%BR%\n 1 In the presented form select service Facebook. By default the \"Member Home Page URI\" has http://www.facebook.com/<your-ODS-user-name> and the \"Account URI\" has value http://host:port/about/id/entity/http/www.facebook.com/<your-ODS-user-name>#this . You need to change the <your-ODS-user-name> from these URLs with your Facebook account name.\n%BR%%BR%%BR%%BR%\n 1 Finally click \"Save\".\n 1 Log out from ODS DataSpace.\n 1 Make sure Facebook Login is enabled from admin user available at Site Settings -> Members Registrations:\n%BR%%BR%%BR%%BR%\n 1 Click Sign In.\n 1 Go to \"Facebook\" tab:\n%BR%%BR%%BR%%BR%\n 1 Click \"Facebook Login\".\n 1 Facebook should ask you to for authorization for the created application from above:\n%BR%%BR%%BR%%BR%\n 1 Click \"Log In with Facebook\":\n%BR%%BR%%BR%%BR%\n 1 On a successful authorization you should be redirected back to the ODS DataSpace:\n%BR%%BR%%BR%%BR% \n 1 Click \"Facebook Login\"\nand should be logged in as the regular user from above, e.g: user \"demo\".\n%BR%%BR%%BR%%BR%\n\n---++Related\n\n * [[OdsSetLoginAuthenticaionKeys][Set up Login Authentication Keys in ODS]]\n 1 Examples using 3rd Party Accounts for register/log in in ODS DataSpace:\n * [[OdsLinkedInAPIKeySecretExUsage][Using LinkedIn -- OAuth consumer key-secret Configuration Guidelines]]\n * [[OdsTwitterAPIKeySecretExUsage][Using Twitter -- OAuth consumer key-secret Configuration Guidelines]]\n 1 Examples using 3rd Party Services for data management:\n * [[OdsBriefcaseAmazonS3][Using ODS-Briefcase to mediate access to data stored on Amazon S3]] \n * [[OdsBriefcaseBoxNet][Using ODS-Briefcase to mediate access to data stored on Box (a/k/a box.com or box.net)]]\n * [[OdsBriefcaseDropBox][Using ODS-Briefcase to mediate access to data stored on DropBox]]\n * [[OdsBriefcaseGoogleDrive][Using ODS-Briefcase to mediate access to data stored on Google Drive]] \n * [[OdsBriefcaseSkyDrive][Using ODS-Briefcase to mediate access to data stored on Microsoft OneDrive (formerly SkyDrive)]] \n * Virtuoso Cartridges Configuration:\n * [[http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtCartConfigFacebook][Facebook Cartridge - Configuration Guidelines]]\n * [[http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtCartConfigGooglePlus][Google+ Cartridge - Configuration Guidelines]]\n * [[http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtCartConfigLinkedIn][LinkedIn Cartridge - Configuration Guidelines]]\n * [[http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtCartConfigTwitter][Twitter Cartridge - Configuration Guidelines]]\n * [[VirtOAuthControllers][OAuth Generate Keys for ODS Controllers (Web Services)]]\n * [[http://virtuoso.openlinksw.com/wiki/main/Main/VirtuosoOAuthProgrammersGuide][Use OAuth for authentication, SPARQL queries, Ubiquity commands]]\n * [[VirtOAuthTestTool][Use the Virtuoso OAuth Test tool to manage my Data Space data]]\n * [[VirtuosoOdsControllers][Manipulate User Data via REST using authentication based on OAuth, sessions, or password hash]]\n * [[ODSProgrammersGuide][ODS Programmers' Guide]]\n * [[http://virtuoso.openlinksw.com/wiki/main/Main/VirtuosoOAuthProgrammersGuide][Virtuoso OAuth Programmers' Guide]]\n * [[VirtOAuthExamples][Examples of ODS Application Authentication using OAuth]]\n * [[VirtuosoOdsUbiquityTutorialsOAuth][OAuth Ubiquity Tutorial]]\n * [[http://virtuoso.openlinksw.com/wiki/main/Main/VirtOAuthSPARQL][SPARQL OAuth Tutorial]]\n" . . . . . . "OdsFacebookAPIKeySecretExUsage" . . . . . . "OdsFacebookAPIKeySecretExUsage" . .