SET動作
SET動作について
<set-動作>は、インターネットサービスの内部オプションを設定するために使用します。
通常、1つのSETオプションは、HeaderMatchドキュメントの評価パスで一度だけ実行できます。1回の評価パスで複数のスイッチを設定しても、2つ目以降のスイッチの値は無視されます。
SETコマンドが条件によって開始される場合、その条件がTRUEと評価されてコマンドが実行されたときにのみ、回数がカウントされます。そのため、1つのオプションに対して複数の異なる動作が入力条件に応じて実行されるようにする場合は、適用範囲の最も狭い条件をファイルの最初に記述し、適用範囲の最も広い条件をファイルの最後に記述する必要があります。
SET動作の構文は次の通りです。
SET <set-オプション> [=] <値>
<set-オプション>を使用すると、以下のどれかの動作を実行できます。
・インターネットサービスがHTTPプロトコルの特定の機能をサポートする方法を設定する
・インターネットサービスのテンプレート表示またはフォーム処理の動作を制限する
・インターネットサービスのHTTPサーバのオプション機能を有効化および設定する
HTTPプロトコルの一部の機能をインターネットサービスがサポートする方法を設定するSETオプション
オプション |
利用可能な値 |
注意 |
allowhttptrace |
1 | 0 |
このオプションを使用すると、HTTP TRACEコマンド(RFC 2616のsection 9.8を参照)を有効または無効にできます。デフォルトでは、TRACEコマンドは有効にされています。 |
sendhttpserverheader |
1 | 0 |
このオプションを使用すると、HTTPの「Server:」応答ヘッダ(RFC 2617のsection 14.38を参照)の送信を有効または無効にできます。デフォルトでは、インターネットサービスはサーバヘッダを送信します。 |
204response |
normal | rfc | body | <http応答コード> |
このオプションを使用すると、通常であればインターネットサービスが204/No Contentプロトコル応答を返すコマンドに対して、インターネットサービスの応答方法を設定できます。 「normal」を選択すると、「Error204」テンプレートが存在する場合はそのテンプレートの内容(および200/OK応答コード)が、存在しない場合は204/No Content応答が返されます。 「rfc」を選択すると、常に204/No Content応答が返されます。Error204テンプレートが存在する場合でも、テンプレートは送信されません。 「body」を選択すると、常に200/OK応答が返されます。 Error204テンプレートが存在しない場合は、インターネットサービスによって定型のテンプレートが生成、送信されます。 他の応答コードの場合は、インターネットサービスによって適切なエラーテンプレートを使用され、その応答コードによる応答が返されます。 |
404redirect |
<ローカルのURL> |
このオプションを使用すると、「not found」要求をシステム上の他の場所にある共通のURL(共通のエラーページなど)にリダイレクトできます。 このリダイレクトは、エラー404ページや現在のテンプレートセットに存在する他のどのエラーページよりも優先して実行されます。ただし、サイトの動作やブラウザ以外のHTTPクライアント(WebDAVのマウントを行うクライアントなど)の動作が中断される可能性があるため、このスイッチは注意して使用する必要があります。 |
forcehttpver10 |
1 | 0 |
このオプションを使用すると、インターネットサービスがHTTPプロトコルのバージョン1.0を使用して現在の要求に応答するようになります。クライアントが1.0以外のバージョンをサポートしている場合でも同様です。デフォルトでは、インターネットサービスは、クライアントがサポートしている最新バージョンのHTTPプロトコルを使用して要求に応答します。ただし、インターネットサービスが認識できるバージョン(現時点ではHTTP 1.1)より新しいバージョンは使用できません。 |
keepalive |
1 | 0 |
このオプションを使用すると、HTTP Keep Aliveを有効または無効にできます。HTTP Keep Aliveを有効にすると、単一のTCP接続で複数の要求を実行できるようになります。デフォルトでは、HTTP Keep Aliveは有効にされています。ただし、HTTP Keep Aliveに対応したバージョンのHTTPプロトコルをクライアントが使用している必要があります。 |
usecomplianterrorcodes |
1 | 0 | default |
このオプションを使用すると、エラーテンプレートの送信時にHTTPがエラー用に定義されたプロトコル応答コードの値を返すか、または「200/OK」応答コードを返すかを設定できます。デフォルトでは、インターネットサービスは、MicrosoftのInternet Explorer(IE)を除くすべてのクライアント用に定義された正式なRFC 2616エラーコードを使用します。IEの場合は、エラーテンプレートに対して200/OK応答が返されます。これは、IEのフレンドリーエラーページ(基準に準拠しておらず、意味のない情報が多い)が表示されないようにするためです。 |
allowcompression |
1 | 0 |
このオプションを使用すると、テキストの応答本文上でのgzipまたはデフレートによる圧縮を有効または無効にできます。デフォルトでは、圧縮は有効にされています。 |
trailingslashredirects |
1 | 0 |
このオプションを使用すると、末尾のスラッシュをコンテナだけに付けてリーフには付けないようにするために、インターネットサービスでクライアントをリダイレクトするかどうかを設定できます。HTMLコンテンツを表示するときにクライアントのリダイレクトが正しく行われないと、関連するURLが機能しなくなることがあります。ただし、一部のユーザエージェント(特に、WebDAVクライアントのように用途の特殊な一部のクライアント)では、このリダイレクトが正しく処理されません。デフォルトでは、リダイレクトは有効にされています。 |
contenttype |
<MIMEタイプ> |
このオプションを使用すると、インターネットサービスが応答本文のMIMEタイプとしてレポートするデフォルトのコンテンツMIMEタイプを無効にできます。 このオプションを使用しても実際のコンテンツが変更されることはなく、HTTPサーバのContent-Type応答ヘッダの値だけが変更されます。 このオプションは、Content-Typeヘッダ内のパラメータ(charsetなど)の設定には使用せず、基本的なコンテンツタイプだけに使用してください。 このスイッチは、返されるすべてのコンテンツ(画像やその他のアップロードファイルを含む)のContent-Typeヘッダを無効にします。テンプレートに対しては、templatecontenttypeスイッチ(下記)が通常は最適な選択肢です。
デフォルトでは、インターネットサービスは、「MIMEタイプ」設定ファイルで現在表示対象とされているコンテンツに関連するエントリを検索して、該当のContent-Typeヘッダを生成します。 |
|
1 | 0 |
このオプションを使用すると、HTTPモジュールがクライアントの「Accept」ヘッダに基づいて代替コンテンツタイプ用テンプレートを検索し、使用するように設定できます。 このテンプレートは、インターネットサービスのMIMEタイプファイルを使用したマッピングと同じように、通常のテンプレートIDとコンテンツに応じた拡張子を持っている必要があります。 コンテンツネゴシエーションは、デフォルトでは無効にされています。 |
allowedauthmodes |
<許可された認証モードの16進数のビットマスク> | ( [!] <認証モード> [ , [!] <認証モード> ]* ) |
このオプションを使用すると、有効にされている認証方法の基本リストを設定できます。サポートされている認証方式の一覧およびデフォルトで有効にされている認証方式については、「認証モード」を参照してください。 |
addauthmodes |
<許可された認証モードの16進数のビットマスク> | ( [!] <認証モード> [ , [!] <認証モード> ]* ) |
このオプションを使用すると、認証方法を有効にして、現在許可されている認証モードに追加できます。サポートされている認証方式の一覧については、「認証モード」を参照してください。 このSETスイッチでは、1回のHeaderMatch評価パスごとに複数のスイッチを起動できますが、あらかじめ上記のallowedauthmodes, above.を使用して基本認証レベルを設定しておく必要があります。 |
removeauthmodes |
<許可された認証モードの16進数のビットマスク> | ( [!] <認証モード> [ , [!] <認証モード> ]* ) |
このオプションを使用すると、認証方法を無効にし、許可されている認証モードのリストから削除できます。サポートされている認証方式の一覧については、「認証モード」を参照してください。 このSETスイッチでは、1回のHeaderMatch評価パスごとに複数のスイッチを起動できますが、あらかじめ上記のallowedauthmodes, above.を使用して基本認証レベルを設定しておく必要があります。 |
suppresshttpdigestreverseauthentication |
1 | 0 |
このオプションを使用すると、HTTPダイジェストログインの認証情報応答ヘッダ(RFC 2617のsection 3.2.3を参照)の送信を停止できます。 このヘッダを使用するとHTTPダイジェスト認証モードのセキュリティが高まりますが、一部のHTTP User-Agentはこのヘッダを正しくデコードできないため、このヘッダが使用されている場合にこれらクライアントを同時に使用できなくなります。 デフォルトでは、このオプションは無効にされています。このオプションを有効にすると、HTTPダイジェスト認証を使用した場合に、インターネットサービスがRFC2617に適合しない方法で動作します。 |
debuglevel |
<int> |
このオプションを使用すると、要求ごとにテストまたはサポート目的でデバッグレベルを設定できます。 |
インターネットサービスのテンプレート表示またはフォーム処理動作を制限するSETオプション
オプション |
利用可能な値 |
注意 |
templatecontenttype |
<MIMEタイプ> |
このオプションを使用すると、インターネットサービスがテンプレートのMIMEタイプとしてレポートするデフォルトのコンテンツMIMEタイプを無効にできます。 デフォルトでは、インターネットサービスはテンプレートのMIMEタイプを「text/html」とレポートします。ただし、enablecontentnegotiationが有効になっている場合、テンプレートは、ネゴシエーションされたコンテンツタイプとしてレポートされます。 |
charset |
<文字セットコード> |
このオプションを使用すると、表示されるコンテンツを特定の文字セットに変換するようにインターネットサービスを設定できます。デフォルトでは、インターネットサービスは、表示されているコンテンツの言語と文字セットに基づいて、適切な表示文字セットを選択します。 このオプションを使用した場合、インターネットサービスは、指定された出力文字セットの適合性を判断しなくなります。要求された文字マッピングで望みどおりの結果が得られるかどうかは、ユーザの責任となります。したがって、インターネットサービスのデフォルトの文字セットを無効にすることは、通常は適切ではありません(ただし、HTTPベースのサードパーティ製アプリケーションとの相互運用性を確保するために必要な場合は除きます)。 インターネットサービスは、UTF-16およびUCS-4のシリアライズをサポートしていません。インターネットサービスのHTTPモジュールが表示をサポートしているユニコードのシリアライズは、UTF-8だけです。 |
requirevalidationkeys |
1 | 0 |
このオプションを使用すると、FirstClassサーバ上のコンテンツの状態を変更する要求には、<X-FC-SESSION VKEY>タグを使って生成したワンタイム検証キーの送信が必要となるようにインターネットサービスを設定できます。これによって、クロスサイトリクエストフォージェリを回避できます。デフォルトでは、このオプションは有効にされています。 |
maxsessidletime |
<秒数> |
このオプションを使用すると、HTTPクライアントからのアクセスがない場合にインターネットサービスがログインセッションを維持する最長時間を設定できます。 ただし、この設定に関わらず、ユーザの非アクティブ状態の時間制限や1日のログイン時間制限など他の要因によって、セッションのキャッシュ時間が短縮されることがあります。 この設定は、「ログアウト」コマンドを元々サポートしていないWebDAVクライアントなどのHTTPプロトコルで使用するためのもので、再接続することのないクライアントによって残される「ゾンビ」セッションの数を減らすことができます。 <秒数>の値を0に設定すると、ユーザまたはサーバによってログアウトされるまで、セッションはアイドルモードで維持されます。 <秒数>の値を0より小さい値に設定すると、インターネットサービスは最後のHTTPクライアントが切断された直後にセッションを切断します。 |
commontemplates |
<テンプレートエイリアス> = <フォールバック> |
この共通テンプレート用オプションでは、テンプレートがサイトのフォルダの直下にない場合に使用されるフォールバック用テンプレートフォルダを指定できます。 デフォルトでは、共通テンプレートのフォールバックは設定されていません。 <テンプレートのエイリアス>は、有効なテンプレートエイリアスの名前です(「.Templates」、「Mobile.Templates」など)。 <フォールバック>は、クラスタの[Config]フォルダから適切な共通フォールバックテンプレートフォルダへのパスです(「WWW/Template Sets/Standard Templates」、「WWW/Template Sets/Mobile Templates」など)。 このスイッチは、評価パスの<テンプレートエイリアス>ごとに一度使用できます。 |
.templates |
<テンプレートセット名> |
このオプションを使用すると、現在の要求に対する応答の表示に使用するテンプレートセットエイリアスの名前を指定できます。インターネットサービスは、応答を表示するために、ここで指定した名前を使用して、サイトのルートにあるフォルダから適切なテンプレートを選択します。エイリアスがサイトに存在しない場合は、[commontemplates]フォルダにフォールバックされます。このオプションのデフォルト値は「.templates」です。 |
plugin |
<プラグイン名> |
このオプションを使用すると、現在の要求に対する応答を、特定のプラグインテンプレートセットから呼び出したテンプレートを使用して表示できます。デフォルトでは、優先的に適用されるプラグインセットは設定されていません。 |
defaulttemplateextension |
<拡張子> |
このオプションを使用すると、インターネットサービスがテンプレートを検索するときに使用するデフォルトのファイル名拡張子を指定できます。このスイッチを「enablecontentnegotiation」スイッチと組み合わせて使用する場合は、デフォルトのテンプレートの拡張子と代替Content-Typeのテンプレートの拡張子との間に不一致がないように注意してください。 デフォルトでは、テンプレートの拡張子は設定されていません。 |
icons |
<アイコンのリソースファイル名> |
このオプションを使用すると、言語非依存のアイコンを呼び出す代替リソースファイルを指定できます。デフォルトでは、言語非依存のアイコンは「icons.rez」ファイルから呼び出されます。 |
pictures |
<画像のリソースファイル名> |
このオプションを使用すると、言語非依存の画像を呼び出す代替リソースファイルを指定できます。デフォルトでは、言語非依存の画像は「pictures.rez」から呼び出されます。 |
sounds |
<サウンドのリソースファイル名> |
このオプションを使用すると、言語非依存のサウンドを呼び出す代替リソースファイルを指定できます。デフォルトでは、言語非依存のサウンドは「sounds.rez」ファイルから呼び出されます。 |
calview |
<テンプレートID> |
このオプションを使用すると、インターネットサービスがカレンダーの表示に使用するデフォルトのテンプレートを無効にできます。デフォルトでは、インターネットサービスは、クライアントによってカレンダーのレイアウト情報に保存された表示を使用します。 |
calendaroptions |
<カレンダーオプションの16進数のビットマスク>> | ( [!] <カレンダーオプション> [ , [!] <カレンダーオプション> ]* ) |
このオプションを使用すると、カレンダーのさまざまな表示オプションを有効または無効にできます。カレンダーオプションの一覧、そのビット値、およびデフォルトの状態については、「カレンダーのオプション」を参照してください。 |
legacybodyfontsize |
1 | 0 |
このオプションを使用すると、FirstClassクライアントを使用してWebコンテンツを見た目通りに編集できるようにするために、インターネットサービスがフォントサイズの変更をFirstClassの本文領域のコンテンツに適用するかどうかを設定できます。 デフォルトでは、フォントサイズの変更は有効にされています。 |
legacyfileurls |
1 | 0 |
アップロードファイル用のURLで、仮想フォルダを使用して所定のファイルに固有にマッピングするURLを生成する一方で、ブラウザの[別名で保存]ダイアログに正しいファイル名を表示させる場合に、そのURLをインターネットサービスがサポートするかどうかをこのオプションで設定できます。 デフォルトではこのオプションは無効にされており、インターネットサービスは、URLパラメータを使用して、ファイル名のURLが固有であることを確認します。 |
forcedircontacts |
1 | 0 |
このオプションを使用すると、ディレクトリの検索要求にコンタクトが含まれていない場合にもコンタクトを含むようにインターネットサービスを設定できます。デフォルトでは、このオプションは無効にされています。 |
urlspaceversion |
<バージョン番号> |
このオプションでは、使用するインターネットサービスのURL空間のバージョンを設定できます。URL空間の各バージョンおよびバージョン間の違いについては、FirstClassのWeb管理者用[FAQs]フォルダを参照してください(FirstClassオンラインの[Conferences]>[Peer to Peer Supports]>[FirstClass Webmasterss]>[FAQs]フォルダにあるIS URL Space BNFドキュメント)。 デフォルトのURL空間のバージョンは1です。 |
unixdates |
1 | 0 |
このオプションを使用すると、1970年1月1日午前0時以前にフォームのPOSTで送信されたすべての日付を、内部計算のために時刻ゼロとして処理するようにインターネットサービスを設定できます。デフォルトでは、このオプションは無効にされています。 |
fatalhtmlparseerrors |
<パーサーエラーの16進数のビットマスク> | ( [!] <パーサーエラー> [ , [!] <パーサーエラー> ]* ) |
このオプションを使用すると、「致命的な」パーサーエラーと判断する受信HTMLの構造を指定し、HTMLの生データがFirstClassサーバに保存されないようにすることができます。 パーサーエラーのリスト、そのビットマスク値、およびデフォルトで「致命的」とみなされるエラーについては、「HTMLパーサーエラー」を参照してください。 |
disablenonsecuresharedcontent |
1 | 0 |
このオプションを使用すると、URL出力用のX-FCタグで、HTTPSより安全性の低いHTTPを使用して共有アイコンや他の共有リソースを出力するかどうかを設定できます。 HTTPSではなくHTTPを使用して共有リソースをロードすると、パフォーマンスを大きく高めることができる上、実際に安全性を損なうことはほとんどありません。ただし、一部のブラウザ(特にInternet Explorer) では、ページが表示されたときに「mixed content」という警告が表示されることがあります。デフォルトでは、このスイッチは無効にされています。 |
インターネットサービスのHTTPサーバのオプション機能を有効化および設定するSETオプション
オプション |
利用可能な値 |
注意 |
enablewebdavfeatures |
<WebDAV機能の16進数のビットマスク> | ( [!] <WebDAV機能> [ , [!] <WebDAV機能> ]* ) |
このオプションを使用すると、インターネットサービスでWebDAVファイルプロトコルを有効にし、サポートするWebDAV機能の種類を選択できます。 WebDAV機能のリスト、そのビットマスク値、およびデフォルトで有効にされている機能については、「WebDAVの機能」を参照してください。 |
proppatchmultistatusresponse |
1 | 0 |
このオプションを使用すると、成功したWebDAV PROPPATCHコマンドに対してインターネットサービスが207/Multi-Status応答または200/OK応答を返すようにするかどうかを設定できます。 WebDAVの最新バージョンの仕様では、207応答が正しい応答として推奨されているため(RFC 4918のsection 9.2を参照)、207応答がインターネットサービスのデフォルト設定になっています。 WebDAVコンソーシアムのテストパッケージである「litmus」など一部のWebDAVクライアントでは、成功したPROPPATCHコマンドに対するMulti-Status応答を正しく処理しません。このようなクライアントの場合は、このスイッチを「0」に設定します。 PROPPATCHコマンドが失敗した場合は常に207/Multi-Status応答が返され、失敗の原因となったプロパティアップデートの種類が通知されます。 |
webdavobjectfilter |
<WebDAVオブジェクトタイプ一覧フィルタのビットマスク> | ( [!] <オブジェクトタイプ> [ , [1] <オブジェクトタイプ> ]* ) |
このオプションを使用すると、WebDAV PROPFINDコマンドによって返される結果をフィルタリングできます。これにより、不要なオブジェクトタイプをWebDAVからマスクし、ユーザに対してファイルを特定の場所に保存するよう推奨できます。 |
httpclientenable |
enable | disable | auth |
このオプションを使用すると、インターネットサービスのHTTPクライアントモジュールを有効または無効にできます。「auth」スイッチを使用すると、ユーザがログインしている場合にだけHTTPクライアントモジュールを使用できるようになります。このオプションのデフォルト値は「auth」です。 |
httpclientauthenitcation |
all | none | basic | digest |
このオプションを使用すると、HTTPクライアントモジュールの使用時にインターネットサービスが使用するHTTP認証方法を設定できます。 「all」を選択すると、インターネットサービスは使用可能な任意のHTTP認証方法を使用するようになります。 「none」を選択すると、インターネットサービスはHTTPクライアントモジュールでどの認証方法も使用しなくなります。 「basic」を選択すると、インターネットサービスはHTTPクライアントモジュールでHTTP基本認証のみを使用するようになります。 「digest」を選択すると、インターネットサービスはHTTPクライアントモジュールでHTTPダイジェスト認証のみを使用するようになります。 このオプションのデフォルト値は「digest」です。 |
httpclientacceptcookies |
no | session |
このオプションを使用すると、要求から返されたクッキーをユーザのログインセッション中にHTTPクライアントモジュールで保持するかどうかを設定できます。 このオプションのデフォルト値は「session」です。 |
httpclientwebdav |
1 | 0 |
このオプションを使用すると、HTTPクライアントモジュールでWebDAVコマンドをサポートするかどうかを設定できます。 このオプションのデフォルト値では、サポートが有効にされています。 |
httpclientwhitelist httpclientblacklist |
<一覧名> <一覧名> |
httpclientwhitelistオプションとhttpclientblacklistオプションを使用すると、HTTPクライアントモジュールが要求を作成できる元となるサイトを制限できます。この2つのオプションのうち、一度に使用できるのはどちらか1つだけです。 Httpclientwhitelistを使用すると、インターネットサービスはHTTPクライアントモジュールに対し、このホワイトリストに登録されているドメインまたはIPアドレスへの接続のみを許可します。 httpclientblacklistを使用すると、インターネットサービスはHTTPクライアントモジュールに対し、このブラックリストに登録されていないドメインまたはIPアドレスへの接続のみを許可します。 ホワイトリストとブラックリストは、インターネットサービスの[Filters]フォルダにFirstClassドキュメントとして保存し、このフォルダにある他のフィルタリング用ドキュメントと同じ書式で記述します。HTTPクライアントのフィルタリング用ドキュメントには「httpclient.」で始まる名前を付け、SMTPフィルタとして使用するドキュメントではないことを明確にしておく必要があります。 デフォルトでは、インターネットサービスは、HTTPクライアントモジュールが接続できるサイトを制限していません。 |
httpclientsecurelist |
<一覧名> |
httpclientsecurelistオプションを使用すると、HTTPクライアントモジュールが接続できるサイトを、有効なSSL証明書で暗号化された安全な接続を提供するサイトのみに限定できます。 安全なサイトのリストは、インターネットサービスの[Filters]フォルダにFirstClassドキュメントとして保存し、このフォルダにある他のフィルタリング用ドキュメントと同じ書式で記述します。HTTPクライアントのフィルタリング用ドキュメントには「httpclient.」で始まる名前を付け、SMTPフィルタとして使用するドキュメントではないことを明確にしておく必要があります。 このオプションをホワイトリストと同時に使用すると、安全なサイトのリストに登録されているサイトは、自動的にホワイトリストのサイトとみなされます。 一方、ブラックリストと同時に使用すると、ブラックリストと安全なサイトのリストの両方に登録されているサイトは、依然としてブラックリストのサイトとみなされます。 デフォルトでは、インターネットサービスは、HTTPクライアントの使用時に安全な接続をサイトに要求しません。また、安全に接続するためにSSL証明書のサイトを検証することもありません。 |
httpclientttl |
<秒数> |
このオプションを使用すると、HTTPクライアントが動作を完了したときに、インターネットサービスがその動作結果をメモリに保持する時間を設定できます。デフォルトでは、インターネットサービスは、HTTPクライアントで実行された動作の結果を、認証済みユーザによる動作の場合は300秒(5分)間、認証されていないユーザは5秒間保持します。 |
インターネットサービスがFirstClassサーバとやり取りする方法を設定するSETオプション
オプション |
利用可能な値 |
注意 |
clientlogintype |
<モード番号> |
このオプションを使用すると、現在選択されているインタフェースがどのような種類のWebクライアントとしてFirstClassサーバにログインするかを設定できます。 このオプションのデフォルト値は0で、通常のFirstClassとして表されます。1にすると、BlueField/OTSMとして表されます。 |
認証モード
ここでは、インターネットサービスのバージョン10.0がサポートしているさまざまな認証モード、そのビット値、およびデフォルトで有効にされている状態について説明します。
使用するSETスイッチは、allowedauthmodes、addauthmodes、およびremoveauthmodesです。
トークンは発生した順に左から右に処理されるため、複数の認証モードを設定した状態で開始してから、無効トークン(!)を使用して一部の認証モードを無効化できます。
例えば、「Form_Login, Allow_Saved_Password, !Session_Key_URLHash」のallowedauthmodes値には、有効にされている正味の値(0x1BC0)が含まれるか、またはすべてのフォームモジュール(0x03C0)、保存されているパスワードモード(0x1000)、およびクッキーベースのセッションキー(0x0800)が含まれます。ただし、Form_Loginスイッチが有効にされているにも関わらず、URLHashベースのセッションキーが後半の!Session_Key_URLHashトークンで無効にされているため、URLHashベースのセッションキー(0x0400)は含まれません。
スイッチ |
ビット値(16進数) |
有効化 |
注意 |
Browser_Basic |
0x0001 |
有効化されている |
RFC2616のブラウザ基本認証です。安全性が非常に低いため、SSLを使用しない場合はこの認証モードを無効にすることをお勧めします。 |
Browser_Digest |
0x0002 |
有効化されている |
RFC2617のブラウザダイジェスト認証です(MD5セッション)。安全性は高いものの、一部のよく知られたHTTPクライアント(Firefox、Microsoft WebDAV Redirector)ではバグが発生します。 |
URLParam_PlainText |
0x0004 |
有効化されている |
URLパラメータでプレーンテキストのパスワードが渡されます。SSLを使用しても安全ではありません。セキュリティの心配が全くない場合以外には、決して使用しないでください。 |
URLParam_MD5 |
0x0008 |
有効化されている |
URLパラメータでMD5ダイジェストのパスワードが渡されます。安全性はかなり高いものの、通常は、可能であればForm_MD5を使用してダイジェストが表示されないようにする方が適切です。 |
URLParam_SHA1 |
0x0010 |
有効化されている |
URLパラメータでSHA1ダイジェストのパスワードが渡されます。MD5よりも安全性はやや高いものの、可能であればForm_SHA1を使用する方が適切です。 |
URLParam_Ticket |
0x0020 |
有効化されている |
URLパラメータで、インターネットサービス以外の一部アプリケーションから提供されたチケットが渡されます。セキュリティのレベルはチケットによって決まりますが、チケットが多目的の場合、チケットの有効期間によってはブラウザがそのチケットを履歴に保存できるため、危険になる場合があります。この危険を回避するには、Form_Ticketを使用します。 |
Form_PlainText |
0x0040 |
有効化されている |
フォームのPOSTでプレーンテキストのパスワードが渡されます。安全ではありませんが、JavaScriptに非対応のデバイスをサポートするために必要となる場合があります。SSLを利用すれば、危険性は小さくなります。 |
Form_MD5 |
0x0080 |
有効化されている |
フォームのPOSTでMD5ダイジェストが渡されます。安全性に問題はありません。 |
Form_SHA1 |
0x0100 |
有効化されている |
フォームのPOSTでSHA1ダイジェストが渡されます。ブラウザのサポートを必要としない最適な認証方法です。 |
Form_Ticket |
0x0200 |
有効化されている |
フォームのPOSTで、インターネットサービス以外の一部アプリケーションから提供されたチケットが渡されます。セキュリティのレベルはチケットによって決まります。 |
Session_Key_URLHash |
0x0400 |
有効化されている |
セッションキーを「Login」URLで保持できます。安全性はそれほど高くありませんが、クロスアプリケーションのURLのパッシングを可能にしたり、クッキーを無効にしているかまたはサポートしていないクライアントを使用したりするために必要となる場合があります。 |
Session_Key_Cookie |
0x0800 |
有効化されている |
セッションキーをクッキーに保持できます。Session_Key_URLHashより安全性は高いものの、SSLと同時に使用しなければ危険です。 |
Allow_Saved_Passwords |
0x1000 |
有効化されている |
2段階のSHA1ダイジェストパスワードが保存されます。Form_SHA1またはURLParam_SHA1のどちらかを有効にする必要があります。 |
Browser_All |
0x0003 |
不適用 |
すべてのブラウザのネイティブの認証モード(基本およびダイジェスト)を有効にします。 |
URLParam_All |
0x003C |
不適用 |
すべてのURLパラメータの認証モードを有効にします。 |
Form_All |
0x03C0 |
不適用 |
すべてのフォームの認証モードを有効にします。 |
Session_Key_All |
0x0C00 |
不適用 |
すべてのセッションキーのモードを有効にします。 |
URLParam_Login |
0x0C3C |
不適用 |
すべてのURLパラメータおよびセッションキーの認証モードを有効にします。 |
Form_Login |
0x0FC0 |
不適用 |
すべてのフォームおよびセッションキーの認証モードを有効にします。 |
Legacy_91 |
0x1FFE |
不適用 |
インターネットサービスのバージョン9.1で使用できるすべての認証モードを有効にします。 |
Secure |
0x0B20 |
不適用 |
適切な安全性を確保しながら、ほとんどのテンプレートセットおよびHTTPクライアントでサポートされる認証モードセットを有効にします。 SSLとともに使用して認証済みセッションの接続を暗号化すれば、安全性は非常に高くなります。ただし、機能の低いユーザエージェントや古いテンプレートセットでは問題が発生することがあります。また、Webブラウザでネイティブサポートされていない埋め込みコンテンツ(オーディオやビデオなど)に対する相互運用性が確保されないことがあります。 |
None |
0x0000 |
不適用 |
すべての認証モードを無効にします。allowedauthmodesセットを使用してどの認証モードも有効にしない状態で開始してから、addauthmodesスイッチを使用して一部の認証モードを有効にする場合に適しています。 |
いずれか |
0x7FFF |
不適用 |
すべての認証モードを有効にします。 |
Default |
0x7FFF |
不適用 |
デフォルトの認証モードセットを有効にします(現在のリリースではすべての認証モードが含まれますが、将来のリリースで変更される可能性があります)。 |
認証モードについての注意事項
URLParamおよびFormの認証モードでは、セッションを保持するために少なくとも1つのSession_Keyモードを使用する必要があります。少なくとも1つのセッションキーを有効にしないと、1回のヒットでセッションがログアウトされるため、2番目のHTTP要求を実行するためにもう一度認証が必要になります。これは、現在の環境では、機能していないのと事実上同じことになります。ブラウザネイティブではないセッションキーを使用するマイナス面は、セッションを動的にすることが難しくなる(つまり、すべての要求で同じセッションキーが使用される)ため、攻撃によってセッションを「盗聴」され、乗っ取られやすくなることです。サポートされている2つのセッションキー方式のうち、Session_Key_URLHashを使用すると、認証済みドメインのオブジェクトへのURLをアプリケーション間で渡す場合の相互運用性は最も高くなりますが、セッションキーがURL自体に保存されるため、盗聴に対する脆弱性が非常に高くなります。Session_Key_Cookieはセッションキーを見えない状態にしますが、アプリケーション間で渡すことができないため、WireSharkなどパケットスニッファを使用した盗聴を仕掛けられる可能性があります。パケットスニッファによるセッションキーの盗聴を防ぐには、SSLを使用してブラウザとインターネットサービスの接続を暗号化します。
Browser_Digestは、HTTPを使用せずにWebインタフェースを表示する非ブラウザのクライアント(WebDAVクライアントなど)にとって(セキュリティの面で)最適な認証モードで、SSLで保護されていないブラウザ接続のセキュリティも高めます。Browser_Digestでは、安全なダイジェストパスワードハッシュアルゴリズム(MD5)を、パケットスニファを使用した侵入を防ぐプロトコル駆動型セッションキー方式と組み合わせて使用します。こうした利点がある一方で、残念ながらBrowser_Digestには2つの大きなセキュリティ上の問題があります。1つ目の問題は、ログアウトコマンドがないというすべてのHTTP定義済み認証モードに共通の問題です。このため、ユーザの資格情報が無期限に(通常はクライアントアプリケーションが閉じられるまで)クライアントに保存されてしまいます。したがって、ユーザがブラウザを開いたままコンピュータから離れると、Webインタフェースのログアウトボタンが押されていても、誰かがそのコンピュータの所にやって来てそのアカウントにログインできます。プロトコルレベルのログアウトコマンドがないということは、ユーザエージェントに現在ログイン中のユーザを「忘れさせる」には、コンピュータのシャットダウンしか方法がないことになります(公共の場や「図書館」にあるコンピュータでは、シャットダウンもできないことがあります)。2つ目の重大な問題は、多くのHTTPクライアントがHTTPダイジェスト認証を十分に実装していないため、HTTPダイジェスト認証は実用的ではないことです。残念ながら、このことは特にWebDAVクライアントであてはまるため、RFC定義の認証方式を使用するしか方法はありません。インターネットサービスの開発チームが多数のWebDAVクライアントをテストした結果、Mac OSX 10.5のFinderとWindows XP上のMS Office 2007だけは、WebDAVモジュールで完全に機能するHTTPダイジェストを実装していました。主要なブラウザでは、Firefoxは長い間HTTPダイジェストの実装にバグを抱えているため(「Bugzilla 270447」を参照)、HTTPダイジェスト認証の使用は実用的ではありません。MicrosoftのInternet ExplorerおよびAppleのSafariでは、最新バージョンに実装されたHTTPダイジェスト認証が機能します。
Webインタフェースを実行するブラウザで最も高いセキュリティを確保するには、SSL保護された接続でForm_SHA1およびSession_Key_Cookieを使用します。
通常、フォーム認証はURLパラメータ認証よりも安全です。これは、URLパラメータ認証ではブラウザの履歴に資格情報が保存されてしまうためです。ダイジェストベースの資格情報はそれほど問題はありませんが、インターネットサービスでは、反射攻撃を防ぐためにダイジェストチャレンジ文字列の使用を一度しか許可しません。そのため、プレーンテキストのパスワードをブラウザの履歴に残せるようにすると、パスワードをあらゆる場所に公開するのと同じことになります。チケットにも、長期間保存してさまざまな目的で使用できるものがあります。そのため、ブラウザの履歴にチケットを保存できるようにすることは、セキュリティの観点からお勧めしません。
HTMLパーサーエラー
以下は、インターネットサービスのバージョン10.0のHTMLパーサーで検出されるように設定されているエラー、そのビット値、またはそのエラーが「致命的」かどうか(生HTMLが保存されるかどうか)の判断を示しています。
「致命的な」HTMLパーサーエラーが発見されると、インターネットサービスは、元のHTMLストリームではなく、そのHTMLコンテンツのダイジェスト版を保存します。パーサーエラーには、通常2つのクラスがあります。1つは受信HTMLマークアップの構文エラーにより発生したエラーで、出力時にページエラーが発生したり、不正な表示が行われたりする可能性があります。もう1つはHTML機能の使用に関する警告で、スクリプトの実行や外部サーバ上のコンテンツへのアクセスなど、セキュリティまたはプライバシに危険を及ぼす可能性があります。
「致命的な」パーサーエラーのデフォルト設定は非常に厳密に定義されており、不正な形式のHTML、FirstClassクライアントで表示できないHTML、および疑わしい外部コンテンツを含むHTMLはすべて拒否されます。
以下のフラグは、fatalhtmlparseerrorsSETスイッチで使用します。
トークンは発生した順に左から右に処理されるため、複数の致命的なエラーを設定した状態で開始してから、一部の致命的なエラーを無効トークン(!)によって無効化できます。
フラグ |
ビット値(16進数) |
有効化 |
注意 |
Error_UnknownTags |
0x00000001 |
有効化されている |
インターネットサービスのHTMLパーサーが認識できないタグがコンテンツに含まれていることを示します。 インターネットサービスは現在、HTML 4/XHTML 1.1仕様のすべてのタグ、およびより一般的なブラウザ拡張を認識します。 インターネットサービスは、本格的なXMLパーサーではなく(DTD参照およびDTD検証は行いません)、HTMLだけを処理します。 |
Error_Malformed |
0x00000002 |
有効化されている |
不正な形式のマークアップが含まれています(閉じられていないタグ、不正な文字など) |
Error_InvalidTable |
0x00000004 |
有効化されていない |
不正な形式のHTMLテーブルが含まれているコンテンツです。 |
Warning_ExternCSS |
0x00010000 |
有効化されている |
1つまたは複数の外部スプレッドシートを参照しているコンテンツです(中程度のプライバシ/フィッシング/クロスサイトリクエストフォージェリの危険性あり)。 |
Warning_ExternImages |
0x00020000 |
有効化されている |
1つまたは複数の外部画像を参照しているコンテンツです(中程度のプライバシ/フィッシング/クロスサイトリクエストフォージェリの危険性あり)。 |
Warning_Script |
0x00040000 |
有効化されている |
スクリプトが含まれているコンテンツです(セキュリティの危険性は低いものの、FirstClassクライアントでは表示できません)。 |
Warning_Forms |
0x00080000 |
有効化されている |
HTMLフォームが含まれているコンテンツです(セキュリティの危険性は低いものの、FirstClassクライアントでは表示できません)。 |
Warning_Framesets |
0x00100000 |
有効化されている |
HTMLフレームセットが含まれているコンテンツです(FirstClassクライアントでは表示できず、フレームが外部サイトを参照している場合はセキュリティまたはプライバシの危険あり)。 |
Warning_IFrames |
0x00200000 |
有効化されている |
HTMLアイフレームまたはアイレイヤが含まれているコンテンツです(FirstClassクライアントでは表示できず、フレームが外部サイトを参照している場合はセキュリティまたはプライバシの危険あり)。 |
Warning_EmbeddedApp |
0x00400000 |
有効化されている |
埋め込みアプリケーションまたはアプレットが含まれているコンテンツです(中程度のセキュリティ上の危険性あるほか、ユーザのマシン上で任意のコードを実行している場合にはウイルスの可能性あり)。 |
Warning_ImageMaps |
0x00800000 |
有効化されている |
HTMLイメージマップが含まれているコンテンツです(FirstClassクライアントでは表示できず、マップが外部サイトを参照している場合はセキュリティまたはプライバシの危険あり)。 |
Warning_ExternEmbeddedApp |
0x01000000 |
有効化されている |
外部の埋め込みアプリケーションまたはアプレットが含まれているコンテンツです(セキュリティ上の危険が高く、EmbeddedAppと同程度の危険あるほか、アプリケーションが外部サーバから呼び出されている)。 |
Warning_UnsupportedTags |
0x80000000 |
有効化されている |
インターネットサービスのパーサーがサポートしていないHTMLタグが含まれているコンテンツです。 |
Errors |
0x00000007 |
不適用 |
不正な形式のHTMLおよび無効なHTMLをすべて拒否します。 |
ClientCompatible |
0x81FF0003 |
不適用 |
FirstClassクライアントで処理できないものをすべて拒否します。 |
ExternalContent |
0x01070000 |
不適用 |
外部Webサイトを参照するものをすべて拒否します。 |
None |
0x00000000 |
不適用 |
すべてのHTMLコンテンツをサニタイズ処理なしに承認します。 |
All |
0xFFFFFFFF |
不適用 |
「サニタイズ処理」されていないHTMLコンテンツを承認します。 |
Default |
0x81FF0003 |
不適用 |
パーラーエラーのデフォルトを設定します(現時点では、ClientCompatibleと同じです)。 |
WebDAVの機能
ここでは、インターネットサービスのバージョン10.0がサポートしているWebDAV機能、そのビット値、およびデフォルトで有効にされている状態について説明します。
以下の機能は、enablewebdavfeaturesSETスイッチで使用します。
トークンは発生した順に左から右に処理されるため、複数の機能を設定した状態で開始してから、無効トークン(!)を使用して一部の機能を無効化できます。
機能 |
ビット値(16進数) |
有効化 |
注意 |
WebDAV_Basic |
0x0001 |
有効化されている |
基本的なWebDAVプロトコルを有効にします。他のすべてのスイッチで、この機能を有効にして動作するようにしておく必要があります。 |
WebDAV_Locking |
0x0002 |
有効化されている |
基本WebDAV仕様のオプションのロック機能を有効にします(RFC 4918のsection 18を参照)。 |
無効にする |
0x0000 |
不適用 |
WebDAVを完全に無効にします。 |
All |
0xFFFF |
不適用 |
現在サポートされているすべてのWebDAV機能を有効にします。 |
Default |
0x0003 |
不適用 |
WebDAV機能のデフォルトセットを有効にします。 |
WebDAVオブジェクトフィルタの種類
オブジェクトの種類 |
ビット値(16進数) |
有効化 |
注意 |
Conferences |
0x00000001 |
有効化されている |
カレンダーやコミュニティなど入力された会議室を含みます。 |
フォルダ |
0x00000002 |
有効化されている |
ContactDBなど入力されたフォルダを含みます。 |
Files |
0x00000010 |
有効化されている |
|
Calendars |
0x00010000 |
有効化されている |
|
ContactDBs |
0x00020000 |
有効化されている |
|
Communities |
0x00040000 |
有効化されている |
FirstClassコミュニティーズのユーザのみです。 |
All |
0xFFFFFFFF |
不適用 |
|
None |
0x00000000 |
不適用 |
|
Default |
0x00000013 |
不適用 |
デフォルトのフィルタは、すべての会議室、すべてのフォルダ、およびすべてのファイルです。 |
カレンダーオプション
ここでは、インターネットサービスのバージョン10.0がサポートしているデフォルトのカレンダー表示オプション、およびデフォルトで有効にされている状態について説明します。
以下のオプションは、calendaroptionsSETスイッチで使用します。
トークンは発生した順に左から右に処理されるため、複数のオプションを設定した状態で開始してから、無効トークン(!)を使用して一部のオプションを無効化できます。
オプション |
ビット値(16進数) |
有効化 |
注意 |
VerboseFieldData |
0x0001 |
有効化されていない |
カレンダーの構造ではなく、フィールドデータ内で計算されたカレンダーデータを限定的に保存します(X-FC-CALENDAR-ITEMではなく、X-FC-FIELDでアクセスする必要があります)。 |
FirstDayOfWeek |
0x0002 |
有効化されている |
カレンダー表示の時間範囲を計算するときに、ユーザの[週の最初の曜日]設定を優先します。 |
AllDayEvents |
0x0004 |
有効化されている |
終日の予定を計算します。 |
PunchThrough |
0x0008 |
有効化されている |
サブカレンダー(「パンチスルー」カレンダー)のアイテムをインポートします。 |
MonthViewDaySpan |
0x0010 |
有効化されていない |
月表示で予定の列幅に関する情報を計算します。 |
IncludeAllItems |
0x0020 |
有効化されていない |
すべてのカレンダー表示にあるすべての種類のアイテムを含めます。 |
Legacy55 |
0x0021 |
不適用 |
FirstClassのバージョン7.0より前のバージョンでリリースされたテンプレートが使用するカレンダーオプションのセットです。 |
Legacy70 |
0x0022 |
不適用 |
FirstClassのバージョン7.0~8.0(ただし8.0は含まず)でリリースされたテンプレートが使用するカレンダーオプションのセットです。 |
Legacy80 |
0x0026 |
不適用 |
FirstClassのバージョン8.0~9.0(ただし9.0は含まず)でリリースされたテンプレートが使用するカレンダーオプションのセットです。 |
Default |
0x000E |
不適用 |
カレンダーオプションのデフォルトセットです。 |
|