この記事は翻訳者によって翻訳されたものです。 記事の文章にポインターを重ねると、原文のテキストが表示されます。
訳文
原文
このトピックはまだ評価されていません - このトピックを評価する

アプリケーション間のフォーム認証

ASP.NET は、1 つのサーバー上または Web ファーム内のアプリケーション間における分散環境でのフォーム認証をサポートします。 フォーム認証を複数の ASP.NET アプリケーション間で有効にすると、ユーザーはアプリケーションを切り替える際に再認証を受ける必要がなくなります。

アプリケーション間でフォーム認証を構成するには、Web.config ファイルの forms セクションと machineKey セクションの属性を、共有されているフォーム認証に参加するすべてのアプリケーションで同じ値に設定します。

Web.config ファイルの Authentication セクションを次の例に示します。 別の記述がない限り、nameprotectionpathvalidationKeyvalidationdecryptionKey、および decryption の各属性は、すべてのアプリケーションで同じにする必要があります。 同様に、認証チケット (Cookie データ) に使用される暗号キーと検証キーの値、および暗号化スキームと検証スキームは、一致する必要があります。 設定が一致しないと、認証チケットを共有できません。 validationKey 属性と decryptionKey 属性の値を生成する方法の詳細については、「How To: ASP.NET 2.0 で MachineKey を構成する方法」を参照してください (このトピックは、ASP.NET Version 2.0 以降のバージョンに適用されます)。

メモメモ

各 ASP.NET Version 2.0 (以降) アプリケーションの machineKey 要素に decryption="3DES" を含めると、ASP.NET Version 2.0 以降を実行するアプリケーションは以前のバージョンの ASP.NET とフォーム認証チケット情報を共有できます。

<configuration>
  <system.web>
    <authentication mode="Forms" >
      <!-- The name, protection, and path attributes must match 
           exactly in each Web.config file. -->
      <forms loginUrl="login.aspx"
        name=".ASPXFORMSAUTH" 
        protection="All"  
        path="/" 
        domain="contoso.com" 
        timeout="30" />
    </authentication>

    <!-- Validation and decryption keys must exactly match and cannot
         be set to "AutoGenerate". The validation and decryption
         algorithms must also be the same. -->
    <machineKey
      validationKey="C50B3C89CB21F4F1422FF158A5B42D0E8DB8CB5CDA1742572A487D9401E3400267682B202B746511891C1BAF47F8D25C07F6C39A104696DB51F17C529AD3CABE" 
      decryptionKey="8A9BE8FD67AF6979E7D20198CFEA50DD3D3799C77AF2B72F" 
      validation="SHA1" />
  </system.web>
</configuration>
メモメモ

サーバーに存在する Web サイトが 1 つだけの場合は、forms タグの domain 属性を省略できます。

認証チケット (Cookie) が発行された後は、Cookie 自身に含まれる Expires の値を使用して、Cookie の有効期限が追跡されます。 2 つのアプリケーションの Timeout 属性が異なる場合は、各 Cookie の有効期限全体を通して有効期限と元のタイムスタンプが維持されます。 Cookie が更新されるときは、Cookie の最初の有効期限を使用して、新しい有効期限が計算されます。 構成の Timeout 値が使用されるのは、Cookie が最初に作成されるときだけです。

認証サービスを使用して、アプリケーション間でユーザーを認証することもできます。 認証サービスを使用すると、SOAP 形式でメッセージを送信および処理できる任意のアプリケーションからフォーム認証を使用できます。 詳細については、「Windows Communication Foundation の認証サービスの概要」を参照してください。

この情報は役に立ちましたか。
(残り 1500 文字)

コミュニティの追加

追加
© 2013 Microsoft. All rights reserved.