<?xml version="1.0" encoding="Shift_JIS"?>
<!--
  Copyright 2004 The Apache Software Foundation.

  Licensed under the Apache License, Version 2.0 (the "License");
  you may not use this file except in compliance with the License.
  You may obtain a copy of the License at

     http://www.apache.org/licenses/LICENSE-2.0

  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License.

  $Id: SecureLinkTool.xml,v 1.6 2005/03/19 07:58:22 nekop Exp $
-->
<document>

    <properties>
        <title>SecureLinkTool</title>
        <author email="marino@apache.org">Marino A. Jonsson</author>
        <projectfile>xdocs-ja/struts/menu.xml</projectfile>
        <translator email="shinobu@ieee.org">Shinobu Kawai</translator>
        <translator email="nekop@programmers.jp">木村 貴由</translator>
        <original>SecureLinkTool</original>
     </properties>

    <body>

    <section name="SecureLinkTool Reference Documentation" alias="SecureLinkTool リファレンスドキュメント">

        <primary>
        <p>The SecureLinkTool extends the standard
        <a href="../view/LinkTool.html">LinkTool</a> and has the exact same interface as
        <a href="StrutsLinkTool.html">StrutsLinkTool</a> and the same function.  It should
        substitute the <a href="StrutsLinkTool.html">StrutsLinkTool</a> in the toolbox if
        <a href="http://sslext.sourceforge.net">SSL Ext</a> is installed.
        It's functionality is a subset of the functionality provided by the
        sslext tag library for JSP.</p>
        </primary>
        <p>SecureLinkToolは<a href="../view/LinkTool.html">LinkTool</a>を拡張し、
        <a href="StrutsLinkTool.html">StrutsLinkTool</a>と全く同じインターフェイスと機能を持ちます。
        <a href="http://sslext.sourceforge.net">SSL Ext</a>がインストールされている場合、
        toolboxの<a href="StrutsLinkTool.html">StrutsLinkTool</a>を置き換えます。
        提供する機能はJSPのsslextタグライブラリの機能のサブセットです。</p>

        <primary>
        <p>The SSL Ext. Struts extension package makes it possible to declare Struts actions
        secure, non-secure, or neutral in the struts config like so:</p>
        </primary>
        <p>SSL Ext. Struts拡張パッケージはStrutsのアクションをセキュア、セキュアでない、
        またはどちらでもと宣言することを可能にします。struts定義には次のように記述します:</p>

        <sourcecode>
        &lt;action path="/someSecurePath" type="some.important.Action"&gt;
            &lt;set-property property="secure" value="true"/&gt;
            &lt;forward name="success" path="/somePage.vm" /&gt;
        &lt;/action&gt;
        </sourcecode>

        <primary>
        <p>If an action is declared secure the SecureLinkTool will render the relevant link
        as https (if not already in ssl-mode).  In the same way, if an action is declared
        non-secure the SecureLinkTool will render the relevant link as http (if in ssl-mode).
        If the action is declared as neutral (with a "secure" property of "any") then the
        SecureLinkTool won't force a protocol change either way.<br/>  If the custom
        request processor is also used then a request will be redirected to the correct
        protocol if an action URL is manually entered into the browser with the wrong protocol</p>
        </primary>
        <p>アクションがセキュアと宣言された場合、SecureLinkToolはリンクを(既にsslモードでない場合)
        httpsとして処理します。同様に、アクションがセキュアでないと宣言された場合、
        SecureLinkToolはリンクを(sslモードの場合)httpとして処理します。
        アクションが("secure"プロパティに"any"を指定して)どちらでもと宣言された場合、
        SecureLinkToolはどちらの場合においてもプロトコルの変更をしません。<br/>
        カスタムのリクエストプロセッサが使用されている場合、
        ブラウザに手でアクションURLを間違ったプロトコルで入力した場合、
        要求を正しいプロトコルにリダイレクトします。</p>

        <primary>
        <p>These are the steps needed to enable SSL Ext:</p>
        <ul>
            <li>SSL connections need to be enabled on the webserver.</li>
            <li>The Java Secure Socket Extension (JSSE) package needs to be in place (it's
            	integrated into the Java 2 SDK Standard Edition, v. 1.4 but optional for earlier
            	versions)</li>
            <li>In toolbox.xml the SecureLinkTool should substitute the StrutsLinkTool</li>
            <li>In struts-conf.xml the custom action-mapping class needs to be specified</li>
            <li>In struts-conf.xml the custom controller class can optionally be specified
            (if the redirect feature is wanted)</li>
            <li>In struts-conf.xml the SecurePlugIn needs to be added</li>
            <li>In struts-conf.xml, when using Tiles, the SecureTilesPlugin substitues both the
            	TilesPlugin and the SecurePlugIn and it also takes care of setting the correct
                controller so there is no need to specify the custom controller.</li>
        </ul>
        </primary>
        <p>SSL Extを有効にするために必要な手順です:</p>
        <ul>
            <li>Web サーバ上でSSL接続を有効にします。</li>
            <li>Java Secure Socket Extension (JSSE)パッケージが必要です。
              (Java 2 SDK Standard Edition, v. 1.4には統合されていますが、
              以前のバージョンではオプションとなっています)</li>
            <li>toolbox.xmlにて、StrutsLinkToolをSecureLinkToolで置き換えます。</li>
            <li>struts-conf.xmlにて、カスタムのアクションマッピングクラスを指定します。</li>
            <li>struts-conf.xmlにて、オプションでカスタムのコントローラクラスを指定します。
            (リダイレクト機能を使用したい場合)</li>
            <li>struts-conf.xmlにて、SecurePlugInを追加します。</li>
            <li>Tilesを使用する場合、struts-conf.xmlにて、
               TilesPluginとSecurePlugIn両方をSecureTilesPluginで置き換えます。
               正しいコントローラをセットしてくれますので、
               カスタムコントローラを指定する必要はありません。</li>
        </ul>

        <primary>
        <see>SSL Ext. <a href="http://sslext.sourceforge.net">project home</a></see>
        </primary>
        <see>SSL Ext. <a href="http://sslext.sourceforge.net">プロジェクトホーム</a></see>

        <toolinfo>
            <version>@@@version@@@, @@@date@@@</version>
            <clazz>org.apache.velocity.tools.struts.SecureLinkTool</clazz>
            <name>$link</name>
            <author email="marinoj@centrum.is">Marino A. Jonsson</author>
            <config-example>&lt;tool&gt;
  &lt;key&gt;link&lt;/key&gt;
  &lt;scope&gt;request&lt;/scope&gt;
  &lt;class&gt;org.apache.velocity.tools.struts.SecureLinkTool&lt;/class&gt;
&lt;/tool&gt;</config-example>
        </toolinfo>

    </section>

 </body>
</document>

