{"id":15304531,"url":"https://github.com/monkeymars/tank-auth---3rd-party-authentication-project","last_synced_at":"2025-10-08T09:30:43.233Z","repository":{"id":9544512,"uuid":"11449900","full_name":"monkeymars/Tank-Auth---3rd-Party-Authentication-Project","owner":"monkeymars","description":"Connecting CodeIgniter Tank Auth library with other authentication systems (FB, Twitter and more)","archived":false,"fork":true,"pushed_at":"2011-06-28T10:35:04.000Z","size":686,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-10-02T07:56:49.497Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"http://ericbae.com/?p=66","language":"PHP","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":"ericbae/Tank-Auth---3rd-Party-Authentication-Project","license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/monkeymars.png","metadata":{"files":{"readme":"README","changelog":null,"contributing":null,"funding":null,"license":"license.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2013-07-16T13:13:35.000Z","updated_at":"2013-07-16T13:13:35.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/monkeymars/Tank-Auth---3rd-Party-Authentication-Project","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/monkeymars%2FTank-Auth---3rd-Party-Authentication-Project","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/monkeymars%2FTank-Auth---3rd-Party-Authentication-Project/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/monkeymars%2FTank-Auth---3rd-Party-Authentication-Project/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/monkeymars%2FTank-Auth---3rd-Party-Authentication-Project/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/monkeymars","download_url":"https://codeload.github.com/monkeymars/Tank-Auth---3rd-Party-Authentication-Project/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":235700110,"owners_count":19031668,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-10-01T07:56:50.382Z","updated_at":"2025-10-08T09:30:37.832Z","avatar_url":"https://github.com/monkeymars.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"***** NOTE ******\nThere is a new updated version of this on my other GitHub repository. https://github.com/ericbae/XTA2 It is a basically more robust and refined version and also integrates with OpenID. Please try to use that one instead of this. A new demo page is also available at http://xta2.ericbae.com, instead of http://www.naturish.com - this domain might not last much longer so please use the new one. Thanks!\n*****************************************\n\n\nWelcome to the Tank-Auth---3rd-Party-Authentication-Project wiki!\n\n# What is this?\nFirstly, the project name is rather mouthful. So let's abbreviate it to \"XTA\" for \"eXtending Tank Auth\". Exactly what are we extending then? For those who use CodeIgniter PHP framework, Tank Auth is an authentication library that is easy to use and serves all the necessary basic features that are required for Web authentication. While there are a number of other tools available, it is a preferred choice by many CodeIgniter users.\n\nOn the other hand, it is sometimes useful to let users to \"register\" and \"login\" to your site using some of their existing accounts to other services - namely, Facebook, Twitter and Google. \n\nTherefore, XTA project extends Tank Auth tool to integrate these third-party authentication mechanisms, so you can use them for your website. \n\n# Note\n- The XTA project is currently supporting Facebook, Twitter and Google Friend Connect (GFC). In turn, GFC itself allows you to use your Yahoo, AOL or OpenID accounts as well. There might be a few more incremental changes in the future depending on how these third party systems changes. Or even maybe implementing LinkedIn or Yahoo directly.\n- I tried to maintain the project as \"minimal\" or \"basic\" as possible, so you can modify at your freedom.\n\n# Tools used for XTA\nCodeIgniter 2.0.1 - http://codeigniter.com/\nTank Auth 1.0.9 - http://www.konyukhov.com/soft/tank_auth/\nFacebook plug-in - http://kentislearningcodeigniter.com/facebook_connect/page5\nTwitter plug-in - http://www.haughin.com/code/twitter/\n\n# Instructions\n- Currently, XTA is integrated with Facebook and Twitter. When others are integrated, we'll modify this instruction accordingly.\n\n## Step 1\nDownload XTA project, unzip. I used Eclipse IDE for this, so you'll see a \".project\" file, which you can import directly as an Eclipse project. I'm sure it'll be straight-forward for others to import into their project workspace.\n\n## Step 2 - Setting up 3rd party authentication plug-ins\nWe will be setting up Facebook and Twitter below.\n\n### Step 2.1 - Setting for for Facebook\nHave you registered your website as a Facebook application? Well, you need to do that. So head over to Facebook and register a Facebook application and fill in the necessary details. See here : http://developers.facebook.com/setup/\n\n### Step 2.2\nYou need to modify \"config.php\" file. At the bottom of this file, there are 3 settings in regards to Facebook, which are\n\n\u003e $config['facebook_app_id'] = '';\n\u003e $config['facebook_app_key'] = '';\n\u003e $config['facebook_app_secret'] = '';\n\nYou'll need to fill in the above with your own Facebook app details.\n\n### Step 2.3 - Setting up Twitter\nI'm assuming you already have a Twitter account. Otherwise, you should. Register yourself with a new Twitter account at http://www.twitter.com. Once you have your account, you can register a new Twitter application at https://dev.twitter.com/apps. Following list shows you what you should fill in when you register a new Twitter application.\n\nApplication Website : This is the website that will be using the Twitter authentication. In my demo app for XTA, it is \"http://www.naturish.com\"\n\nApplication Type : Browser\n\nCallback URL : This is configurable at the app level, meaning that you can set this up when you plug in Twitter with Tank Auth. So you don't need to worry about it too much. I just set it up same as application website.\n\nDefault Access Type : Let's set it as \"Read \u0026 Write\". It just gives you more power to do things. \n\n### Step 2.4\nOnce you set that up, make sure you grab your \"consumer key\" and \"consumer secret\" and put them in the config.php file of your CodeIgniter project as below.\n\n$config['twitter_consumer_key'] = '';\n$config['twitter_consumer_key_secret'] = '';\n\nThat should be about all the configurations we need.\n\n### Step 2.5 - Setting up Google Friend Connect (GFC)\nYou must first register your website with GFC at \n\nhttp://www.google.com/friendconnect/\n\nFollow the instructions provided on the site to register your site and make sure you grab your application ID.\n\n### Steo 2.6\nOnce you have your ID, then open up config.php file and fill in the following config variable.\n\n$config['google_app_id'] = '';\n\nYou are now good to go with Google Friend Connect!\n\n## Step 3\nIf you don't have a database for your website yet, now is the good time to do it. For a testing purpose, I created a database called \"xta\". You can see this in config/database.php file. If you have your DB already, then let's move on.\n\n## Step 4\nYou should see a schema.sql file inside the zip file. This file has all the queries that will generate tables that you need. Run these queries and you'll get 5 new tables. In fact, this schema file is very similar to the one that's provided by Tank Auth. \n\nThe only difference is there are now new columns in \"user_profiles\" table called \"facebook_id\", \"twitter_id\" and \"gfc_id\" into which we will insert user's Facebook, Twitter or Google ID, depending on which plug-in they use. \n\n## Step 5\nYou can upload all your files to your server now and hopefully, things will run as planned. You should go to \"www.yourdomain.com/index.php/auth\" then it will open up a login page and you will also see a Facebook connect, Twitter login and Google Friend Connect buttons. \n\n## There is a sample demo application available at http://www.naturish.com","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmonkeymars%2Ftank-auth---3rd-party-authentication-project","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmonkeymars%2Ftank-auth---3rd-party-authentication-project","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmonkeymars%2Ftank-auth---3rd-party-authentication-project/lists"}