認証プロセスの概要
- サードパーティの ID プロバイダーで認証する
- サードパーティの ID プロバイダーからユーザーの SAML 認証データを取得する
- SAML 認証データを Application Server に送信する
- Application Server から認証済みチケットを受け取る
ユーザーアカウントは FlexiCapture データベース内に存在し、必要な権限をすべて持っている必要があります。
実装
SAML データを取得する
SAML データをFlexiCapture 12 Application Serverに送信する
https://<Application Server>/Flexicapture12/Server/Saml にPOSTリクエストを送信してApplication Serverに送ります。SAML データを含むfieldの名前は SAMLResponse にする必要があります。
https://<ApplicationServer>/Flexicapture12/Server/Saml?Tenant=MyTenantName
認証を機能させるには、SAML データ内の識別子と一致するログインを持つユーザーが Application Server に登録されている必要があります。/samlp:Response/saml:Assertion/saml:Subject/saml:NameID field の値がログインとして使用されます。
Application Server は次のようなレスポンスを返します。
<ticket> タグ内の値は、認証済みの FlexiCapture 12 チケットです。このチケットを使用すると、認証が必要なすべての Application Server インターフェイスに対して呼び出しを行うことができます。FlexiCapture のウェブサービスに対するリクエストは、FlexiCapture 認証を使用して送信する必要があります (https://<ApplicationServer>/flexicapture12/Server/FCAuth/ または https://<ApplicationServer>/flexicapture12/Server/MobileApp/ で始まるアドレス) 。
認証済みの FC 12 チケットの使用
FlexiCaptureTmpPrn である必要があります) または Authorization: Bearer ヘッダーを使って、チケットをサーバーに渡せます。例:
FlexiCaptureTmpPrn) の Cookie ファイルと AuthTicket ヘッダーの両方に含まれます。次のリクエストは、この更新されたチケットを使用して行う必要があります (チケットは一定時間が経過すると期限切れになります) 。
Application Server で信頼できる証明書を設定する
Web.config ファイルの <appSettings> 設定内にある AllowMixedModeCertificateValidation パラメーターを参照します。このパラメーターが true に設定されている場合、検証は、Application Server を実行しているコンピューターの Local Computer 証明書ストア内の Trusted Root Certification Authorities フォルダーに追加された証明書を使用して実行されます。
データベースに証明書が追加されていない場合、検証は Trusted Root Certification Authorities フォルダーにある証明書を使用して実行され、AllowMixedModeCertificateValidation パラメーターは無視されます。
プロジェクトおよび付属資料をダウンロードしてください: SAML_Example.zip