View Single Post
  #1  
Old 03-12-2008, 11:51 PM
cowboyd cowboyd is offline
 
Join Date: Mar 2008
Posts: 5
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default External Authentication: The SIMPLEST thing that could possibly work?

Hi there,

I'm migrating our current forum from drupal to vbulletin. Our main user database and profile data is in a java application running in the same domain. I've successfully integrated (mostly) our users but I'm running up against some problems when it comes to authenticating the user.

The way it works is this:

All the users in the java application have a forumId field which contains the vbulletin userid of that user's corresponding forum account. There is a REST api in the java application for converting a sessionids into forumId.

So, I wrote a little php hook in drupal to read the sessionid from a cookie (set by the main java application), then make the REST call to the java app to convert the sessionid into a userid, and then, load the user into the php request based on that id (if no id is found, then just load the anonymous user)

Now that I have the userid, I know they must have already been authenticated by the main application to have gotten a valid session id, so I don't need to do any other form of authentication. I know which user, and I know that they're authenticated, so I just want to have everything else just use that user.

I don't want vbulletin to do login at all. I don't want it to collect the username/password at all. I never want it to show a login form of any kind. I just want it to take the id it gets back from the java application and handle the request as though that user was logged in the entire time.

In cases where a login is required, I want it to redirect to the java application.

Does this clarify things?
Reply With Quote
 
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.01067 seconds
  • Memory Usage 1,763KB
  • Queries Executed 11 (?)
More Information
Template Usage:
  • (1)SHOWTHREAD_SHOWPOST
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (1)footer
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (6)option
  • (1)post_thanks_box
  • (1)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (1)post_thanks_postbit_info
  • (1)postbit
  • (1)postbit_onlinestatus
  • (1)postbit_wrapper
  • (1)spacer_close
  • (1)spacer_open 

Phrase Groups Available:
  • global
  • postbit
  • reputationlevel
  • showthread
Included Files:
  • ./showpost.php
  • ./global.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/class_hook.php
  • ./includes/modsystem_functions.php
  • ./includes/functions_bigthree.php
  • ./includes/class_postbit.php
  • ./includes/class_bbcode.php
  • ./includes/functions_reputation.php
  • ./includes/functions_post_thanks.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_postinfo_query
  • fetch_postinfo
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • showpost_start
  • bbcode_fetch_tags
  • bbcode_create
  • postbit_factory
  • showpost_post
  • postbit_display_start
  • post_thanks_function_post_thanks_off_start
  • post_thanks_function_post_thanks_off_end
  • post_thanks_function_fetch_thanks_start
  • post_thanks_function_fetch_thanks_end
  • post_thanks_function_thanked_already_start
  • post_thanks_function_thanked_already_end
  • fetch_musername
  • postbit_imicons
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • postbit_display_complete
  • post_thanks_function_can_thank_this_post_start
  • showpost_complete