上で説明したのは典型的なアプローチで、実際には様々なバリエーションが存在します。
例えば Novell の Single-Sign-On は上記の両アプローチを統合したものといえます。
認証情報をディレクトリに保管しておくという点では前者ですが、クライアント・
アプリケーションに対して代理で認証を実施するという点では代理型といえます。
(IE4 についてきた)Microsoft Wallet は後者の一変種です。Wallet はクライアント上に
位置し、各種認証情報を保持します。そしてアプリケーションからの求めに応じて、
宛先サーバーに適した認証情報を元にログインするというアーキテクチャになっています。
Internet Explorer 5 以降では Web サイトのパスワードを記憶する機能がありますが、
これは Wallet 型の Single-Sign-On Feature と考えることができます(この場合、
プロキシへのログイン = Windows ログオンになります)。Linux 等で利用可能な
PAM (Pluggable Authentication Module) は共通認証ディレクトリ型を実現するための
Interface を定義したもの、と考えることもできるでしょう(SSO の観点からは)。

どちらを選ぶかはコストと時間と手間次第です。前者を取るのが理想ですが(そうすれば
多元的な認証情報のメンテナンスという非常に面倒な作業から解放される)、
アプリケーションの書き換えコストが大きいとか、ターゲットとなるプラットホームで
SSO 認証対応のフレームワークが存在しないような場合には、後者のアプローチを
取らざるを得ないでしょう。