content
| - %META:TOPICPARENT{name="OdsSetLoginAuthenticaionKeys"}%
---+Using Twitter OAuth key-secret Configuration Guidelines
%TOC%
---++ What?
Use Twitter 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 Twitter account.
---++ Why?
Makes the process of managing users register/log in activities easier.
---++ How?
In order to be able to register a new user or to log in into ODS Dataspace as already registered ODS user, you need to:
* Create ODS application within Twitter:
1 Get an Consumer Key -- for identification;
1 Get an Consumer Secret -- for hash salting;
1 Provide a Callback URL -- for request & access token exchange via redirection.
* Configure as ODS Administrator in Site Settings->Login Authentication Keys the Twitter API to use the generate from above Consumer Key and Secret.
When the above is done, you can perform the following activities in ODS:
* Register in ODS using your Twitter credentials, or:
* For a regular ODS user, for ex. with name XXX you can add in Profile->Personal->Online Accounts your Twitter account, which then will enable you to log in in your ODS XXX user dataspace using the Twitter account credentials.
---++ Examples
---+++ Prerequisites
* A [[http://twitter.com/][Tiwtter user account]]
* Administrative (DBA) access to a [[http://virtuoso.openlinksw.com/][Virtuoso Server]] instance, on which the following have been installed --
* [[http://s3.amazonaws.com/opldownload/uda/vad-packages/6.4/virtuoso/ods_framework_dav.vad][ODS-Framework VAD package]]
---++++ Steps for Configuring Twitter Consumer Key and Secret
---+++++ 1 -- Get Twitter Client ID key and secret for use with ODS
1 Browse to <[[https://dev.twitter.com/apps][https://dev.twitter.com/apps]]> and enter your Twitter use credentials:
%BR%%BR%%BR%%BR%
%BR%%BR%%BR%%BR%
1 Click on Create a new application:
%BR%%BR%%BR%%BR%
1 In the presented form:
1 Enter a name for your Twitter client application to be known by, e.g., "MyTwitterExample";
1 Enter a description, e.g., "My Twitter Example Application";
1 Enter website, e.g., http://example.com/;
1 Provide a Callback URL -- Enter in "Callback URL" 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/ :
1 Click "Yes, I agree";
1 Fill in the "CAPTCHA" field;
%BR%%BR%%BR%%BR%
%BR%%BR%%BR%%BR%
%BR%%BR%%BR%%BR%
1 Click "Create your Twitter application".
1 The application should be registered and you will be shown a Consumer Key and Consumer Secret for the newly registered application. (You can copy these now, or come back for them later; they will also show up on the OAuth tool" tab. Do be aware that you will need these in the steps that follow.):
%BR%%BR%%BR%%BR%
%BR%%BR%%BR%%BR%
---+++++ 2 - Configure ODS to use your Twitter Consumer Key and Secret
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.
%BR%%BR%%BR%%BR%
1 Log in as a Virtuoso+ODS user with Administrator privileges, e.g., dba .
%BR%%BR%%BR%%BR%
1 Click on Site Settings:
%BR%%BR%%BR%%BR%
1 Click on Login Authentication Keys:
%BR%%BR%%BR%%BR%
1 Select TwitterAPI in the API Name menu, provide the Consumer Key and Consumer Secret from the new Twitter application you created above, and click Add.
%BR%%BR%%BR%%BR%
1 ODS is now configured to use Twitter.
%BR%%BR%%BR%%BR%
---+++Example for Configuring regular ODS user to log in into ODS using Twitter Account credentials
Here 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 Twitter Account:
1 Browse to your Virtuoso + ODS instance, http://<cname>[:<port>]/ods , e.g., <[[http://example.com/ods/][http://example.com/ods/]]>.
%BR%%BR%%BR%%BR%
1 Log in as a Virtuoso+ODS user with normal privileges, e.g., demo .
%BR%%BR%%BR%%BR%
1 Go to Profile Edit->Personal->Online Accounts:
%BR%%BR%%BR%%BR%
1 Click "Add":
%BR%%BR%%BR%%BR%
1 In the presented form select service Twitter. By default the "Member Home Page URI " has value http://twitter.com/<your-ODS-user-name> and the "Account URI " has value http://twitter.com/<your-ODS-user-name>#this . You need to change the <your-ODS-user-name> from these URLs with your Twitter account name.
1 Click the "Link" button from "Action" column:
%BR%%BR%%BR%%BR%
1 Finally click "Save".
1 Log out from ODS DataSpace.
1 Make sure Twitter Login is enabled from admin user available at Site Settings -> Members Registrations:
%BR%%BR%%BR%%BR%
1 Click Sign In:
1 Go to "Twitter" tab:
%BR%%BR%%BR%%BR%
1 Click "Twitter Login"
1 Twitter should ask you to for authorization for the created application from above:
%BR%%BR%%BR%%BR%
1 Click "Sign In" in the Twitter form
1 On a successful authorization you should be redirected back to the ODS DataSpace and should be logged in as the regular user from above, e.g: user "demo".
%BR%%BR%%BR%%BR%
---++Related
* [[OdsSetLoginAuthenticaionKeys][Set up Login Authentication Keys in ODS]]
1 Examples using 3rd Party Accounts for register/log in in ODS DataSpace:
* [[OdsFacebookAPIKeySecretExUsage][Using Facebook -- OAuth consumer key-secret Configuration Guidelines]]
* [[OdsLinkedInAPIKeySecretExUsage][Using LinkedIn -- OAuth consumer key-secret Configuration Guidelines]]
1 Examples using 3rd Party Services for data management:
* [[OdsBriefcaseAmazonS3][Using ODS-Briefcase to mediate access to data stored on Amazon S3]]
* [[OdsBriefcaseBoxNet][Using ODS-Briefcase to mediate access to data stored on Box (a/k/a box.com or box.net)]]
* [[OdsBriefcaseDropBox][Using ODS-Briefcase to mediate access to data stored on DropBox]]
* [[OdsBriefcaseGoogleDrive][Using ODS-Briefcase to mediate access to data stored on Google Drive]]
* [[OdsBriefcaseSkyDrive][Using ODS-Briefcase to mediate access to data stored on SkyDrive]]
* Virtuoso Cartridges Configuration:
* [[http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtCartConfigFacebook][Facebook Cartridge - Configuration Guidelines]]
* [[http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtCartConfigGooglePlus][Google+ Cartridge - Configuration Guidelines]]
* [[http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtCartConfigLinkedIn][LinkedIn Cartridge - Configuration Guidelines]]
* [[http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtCartConfigTwitter][Twitter Cartridge - Configuration Guidelines]]
* [[VirtOAuthControllers][OAuth Generate Keys for ODS Controllers (Web Services)]]
* [[http://virtuoso.openlinksw.com/wiki/main/Main/VirtuosoOAuthProgrammersGuide][Use OAuth for authentication, SPARQL queries, Ubiquity commands]]
* [[VirtOAuthTestTool][Use the Virtuoso OAuth Test tool to manage my Data Space data]]
* [[VirtuosoOdsControllers][Manipulate User Data via REST using authentication based on OAuth, sessions, or password hash]]
* [[ODSProgrammersGuide][ODS Programmers' Guide]]
* [[http://virtuoso.openlinksw.com/wiki/main/Main/VirtuosoOAuthProgrammersGuide][Virtuoso OAuth Programmers' Guide]]
* [[VirtOAuthExamples][Examples of ODS Application Authentication using OAuth]]
* [[VirtuosoOdsUbiquityTutorialsOAuth][OAuth Ubiquity Tutorial]]
* [[http://virtuoso.openlinksw.com/wiki/main/Main/VirtOAuthSPARQL][SPARQL OAuth Tutorial]] |