資格証明ファイルのフォーマット

フォームベース認証の資格証明ファイルのフォーマットは次のようになります。

<?xml version="1.0" encoding="UTF-8"?>
<credentials>
   <formCredentials>
      <authenticator>
         <className>authClass</className>
         <configuration>
            <siteUrlPattern>siteUrl</siteUrlPattern>
            <loginUrl>loginPageUrl</loginUrl>
            <actionUrl>actionUrl</actionUrl>
            <method>authMethodToUse</method>
            <preCrawlAuth>shouldPreAuth</preCrawlAuth>
            <parameters>
               <parameter>
                  <name>paramName</name>
                  <value>paramValue</value>
               </parameter>
            </parameters>
            <properties>
               <property>
                  <name>propName</name>
                  <value>propValue</value>
               </property>
            </properties>
         </configuration>
      </authenticator>
   </formCredentials>
</credentials>
次の表は要素と属性値の一覧です。
要素 意味
<credentials>および<formCredentials> 最初に指定されるメイン要素です。これらの要素のセットはファイル内に1組のみ存在します。
<authenticator> Authenticatorプラグイン用の1セットの設定を定義します。サイトにマルチフォームの認証が存在する場合は、ファイル内に<authenticator>セクションを複数設定します。
<className> 認証ロジックを処理するクラスの名前です。Web Crawlerのデフォルトのオーセンティケータ・クラスはcom.endeca.eidi.web.auth.form.BasicFormAuthenticatorです。必要に応じて、自分で実装したカスタム認証クラスによってこのクラスをオーバーライドできます。
<configuration> 1セットの資格証明の設定およびプロパティを定義します。
<siteUrlPattern> 認証が行われるサイトを決定するための正規表現です(Authenticatorはそれらのクラスのみで実行されます)。
<loginUrl> 実際のログインが行われるページのURLです(http://samplesite.com/login.htmlなど)。
<actionUrl> GET/POSTリクエストのロジックを処理するURL(CGIスクリプトなど)のフルパスです。このフィールドは、フォームのACTION属性に対応します。ログインのURLとアクションのURLは異なる場合があることに注意してください。
<method> GETまたはPOSTのいずれかの値です。
<preCrawlAuth> ブール値です。クロールの開始前に認証を行うか(trueの値を指定するとクロール前認証が有効になります)、またはクロールを実行している最中に認証を行うか(falseの値を指定するとクロール内認証が有効になります)を指定します。
<parameters> 1つまたは複数の<parameter>要素のセットが含まれます。これらのパラメータは、ログイン名やパスワードなど、フォームにおいて入力するフィールドに対応します。デフォルトでは、これらのパラメータはすべてHttpRequestに含まれており、サーバーに送信されます。
<parameter> フォーム内のフィールドの名前を指定する<name>要素と、そのフィールドに入力される値を指定する<value>要素が含まれます。
<properties> 1つまたは複数の<property>要素のセットが含まれます。これらはプロパティ・マップ内に配置され、文字列としてアクセスできます。プロパティはAuthenticatorプラグイン固有の設定として意図されており、このプラグインを容易にカスタマイズする方法を提供します。この要素はオプションです。
<property> プロパティの名前を指定する<name>要素と、そのプロパティの値を指定する<value>要素が含まれます。