次の方法で共有


トランザクション インテグレーターで SSO を使用する - HIS

トランザクション インテグレーターのシングル サインオン

シングル Sign-On (SSO) は、ユーザーがユーザー名とパスワードを 1 回入力して複数のアプリケーションにアクセスできるようにするメカニズムです。 ユーザーは、Windows およびバックエンド システムやアプリケーションにアクセスするために必要な多くのパスワードのログオンとメンテナンスを簡素化できます。 これにより、ホスト/バックエンド システムにログオンするプロセスを自動化することで、アプリケーションを統合できます。

一般に、シングル サインオン サービスには次の 3 種類があります。

  • 一般的な認証シングル サインオン: これらのサービスを使用すると、コンピューター内の複数のアプリケーションに接続できます。 資格情報は、コンピューターにログインするときに 1 回要求および検証され、これらの資格情報を使用して、アクセス許可に基づいて実行できるアクションを決定します。 この種類のシングル サインオンの例として、Windows 統合セキュリティを使用するExchange Serverがあります。 ユーザーが Windows にログオンしたら、電子メールにアクセスするために追加の資格情報を指定する必要はありません。

  • インターネット シングル サインオン: これらのサービスを使用すると、1 つのユーザー資格情報セットを使用してインターネット経由でリソースにアクセスできます。 ユーザーは異なる組織に属している個別の Web サイトへのログオン時に一連の資格情報を提供します。 この種類のシングル サインオンの例として、Windows Live ID があります。

  • イントラネット シングル サインオン: これらのサービスを使用すると、社内のエンタープライズ環境内の複数の異種アプリケーションとシステムに接続できます。 この種類のシングル サインオンの例として、Windows アプリケーションを Windows 以外のアプリケーションと統合してシングル サインオンを有効にするフレームワークを提供するエンタープライズ シングル サインオンがあります。

    SSO を使用すると、セキュリティ ポリシー ウィザードによる資格情報の変換が容易になります。 SSO を使用すると、外部ホスト ユーザー ID とパスワード資格情報と Windows 資格情報との関係を定義および管理できます。 これらのリレーションシップを管理するための基礎は、SSO 関連アプリケーションです。

    関連アプリケーションは、Windows 以外の環境のアプリケーション処理システムのホスト管理者ビューを反映する論理エンティティの下で、適切に定義されたホスト ユーザー ID のグループです。

    SSO に有効な SSO 関連アプリケーションと共に一連のホスト資格情報 (ユーザー ID とパスワード) が渡されると、SSO は Windows 資格情報を表す Windows アクセス トークンを返します。 HIP は、サーバー オブジェクト上のメソッドの実行スレッドを設定するときに、このアクセス トークンを使用します。

    このプロセスを容易にするには、サーバー オブジェクトでメソッドを実行するために必要な Windows 資格情報 (アクセス トークン) にアクセスするためにクエリを実行する SSO 関連アプリケーションをセキュリティ ポリシーで認識する必要があります。 ウィザード ウィンドウを使用すると、ユーザーは有効な SSO 関連アプリケーションの一覧から選択し、定義されているセキュリティ ポリシーに追加できます。 ウィザード ウィンドウでは、以前にセキュリティ ポリシーに定義された SSO 関連アプリケーションをユーザーが削除することもできます。

Host-Initiated 処理に対する SSO

ホストによって開始される処理 (HIP) でシングル Sign-On (SSO) セキュリティを使用する場合、ユーザー資格情報の偽装は、.NET オブジェクトと COM オブジェクトのどちらを呼び出すかによって異なる方法で処理されます。 HIP が .NET オブジェクトを呼び出している場合、特別な考慮事項はありません。トランザクション インテグレーター (TI) ランタイム環境は、ユーザー アカウントを偽装します。 ただし、HIP が COM オブジェクトを呼び出している場合は、特別な考慮事項があります。

コンポーネントのスレッド モデルと登録の種類に応じて、HIP がユーザー アカウントを偽装しているときに .COM オブジェクトのメソッドを呼び出すときに、次のアクションが発生します (ホスト資格情報が SSO を介してマップされていたもの)。

スレッド モデル 登録 アクション
シングル アパートメント サーバー/ライブラリ/COM+ アプリケーションなし - サーバー オブジェクト メソッドは、HIP Service/COM+ アプリケーション構成 ID で呼び出されます。
- サーバー オブジェクト メソッドは CoImpersonateClient を呼び出して、ユーザー ID の偽装を開始します。
- 必要に応じて、メソッドは CoRevertToSelf を呼び出すことができますが、COM はメソッドが戻った後に呼び出すので不要です。
Free、both、neutral サーバー COM+ アプリケーション - サーバー オブジェクト メソッドは、HIP Service/COM+ アプリケーション構成 ID で呼び出されます。
- サーバー オブジェクト メソッドは CoImpersonateClient を呼び出して、ユーザー ID の偽装を開始します。
- 必要に応じて、メソッドは CoRevertToSelf を呼び出すことができますが、COM はメソッドが戻った後に呼び出すので不要です。
Free、both、neutral ライブラリ/COM+ アプリケーションなし - サーバー オブジェクト メソッドは、偽装されているユーザー ID の下で呼び出されます。
- サーバー オブジェクト メソッドは、RPC_E_CALL_COMPLETEで失敗するため、 CoImpersonateClient または CoRevertToSelf を呼び出さないでください。

Microsoft Visual Basic® 6.0 でプログラミングする場合は、 プログラムに CoImpersonateClient 宣言と CoRevertToSelf 宣言を含めるようにしてください。

Private Declare Function CoImpersonateClient Lib "ole32.dll" () As Long  
Private Declare Function CoRevertToSelf Lib "ole32.dll" () As Long  

参照

アプリケーション統合 (セキュリティ)