Я ненавижу отвечать на свой вопрос, но я ненавижу еще вопрос без ответа. В конце мы пошли с очень похожей реализацией реализации SSO с делегированной аутентификацией SalesForce.
http://wiki.developerforce.com/page/How_to_Implement_Single_Sign-On_with_Force.com
По сути, решение имеет доверенный сайт, известный как делегированные полномочия аутентификации, у которого есть список пользователей, которые вошли в интрасеть компании.
Когда пользователь входит в интрасеть компании и щелкает ссылку на наше приложение, интранет компании передает имя пользователя и сгенерированный токен (срок действия которого истекает через определенное время) в наше приложение.
Наше приложение затем проверит, есть ли имя пользователя на нашем сайте, и, если это так, отправит имя пользователя / токен (вместе с исходным IP-адресом и некоторыми другими параметрами) в делегированный орган аутентификации. Если все эти элементы совпадают в делегированном полномочии аутентификации, он возвращает true и пользователь может войти в систему. Если он возвращает false, пользователю отказано в доступе.
Мы обнаружили, что эта система работает достаточно хорошо, и даже реализовали несколько дополнительных функций безопасности, таких как SSL, сертификаты на стороне клиента, VPN-туннель и даже ограничение IP-адресов, которые могут получить доступ к сайту и делегированных полномочий аутентификации.
Я знаю, что отвечать на свой вопрос - это дурной тон, но я надеюсь, что это поможет кому-то еще, у кого может быть такая же проблема ...