MembershipPasswordFormat 列挙型

定義

メンバーシップ ユーザーのパスワードを格納するための暗号化形式について説明します。

public enum class MembershipPasswordFormat
public enum MembershipPasswordFormat
type MembershipPasswordFormat = 
Public Enum MembershipPasswordFormat
継承
MembershipPasswordFormat

フィールド

名前 説明
Clear 0

セキュリティで保護されていません。使用しないでください。 パスワードは暗号化されません。

Hashed 1

パスワードは、SHA1 ハッシュ アルゴリズムを使用して一方向に暗号化されます。 hashAlgorithmType属性を使用して、SHA1 アルゴリズムとは異なるハッシュ アルゴリズムを指定できます。

SHA1 との競合問題のため、Microsoft では SHA256 を推奨しています。

Encrypted 2

セキュリティで保護されていません。使用しないでください。 パスワードは、machineKey 要素構成によって決定される暗号化設定を使用して暗号化されます。

次の例は、ASP.NET アプリケーションの Web.config ファイルの system.web セクションにある machineKey 要素 (ASP.NET Settings Schema) 要素を示しています。 アプリケーションの SqlMembershipProvider インスタンスを指定し、そのパスワード形式を Hashedに設定します。

この例では SHA1 を使用します。 SHA1 との競合問題のため、Microsoft では SHA256 を推奨しています。

<membership defaultProvider="SqlProvider"
  userIsOnlineTimeWindow="20" hashAlgorithmType="SHA1">
  <providers>
    <add name="SqlProvider"
      type="System.Web.Security.SqlMembershipProvider"
      connectionStringName="SqlServices"
      enablePasswordRetrieval="false"
      enablePasswordReset="true"
      requiresQuestionAndAnswer="true"
      passwordFormat="Hashed"
      applicationName="MyApplication" />
  </providers>
</membership>

注釈

SqlMembershipProvider クラスはさまざまなパスワード ストレージ形式をサポートしていますが、Hashedのみを使用する必要があります。ClearEncryptedは安全ではありません。 クリア パスワードはセキュリティで保護されていないため、使用しないでください。 これらはプレーン テキストで格納されます。 暗号化されたパスワードは、データベースの内容を明らかにする侵害によって暗号化キーが公開される可能性もあるので、安全とは見なされません。 つまり、暗号化されたパスワードを復号化して公開できます。 パスワードは保存時に暗号化され、パスワード比較またはパスワード取得のために復号化できます。 ハッシュされたパスワードは、データベースに格納されるときに、一方向の salted ハッシュを使用して暗号化されます。 パスワードが検証されると、そのパスワードは salt 値と組み合わされ、ハッシュされます。 結果は、検証のためにデータベース内の値と比較されます。 ハッシュされたパスワードを取得できません。

Note

ASP.NET のメンバーシップ機能に慣れていない場合は、「 メンバーシップの概要」を 参照してから続行してください。 メンバーシップに関連するその他のトピックの一覧については、「メンバーシップ を使用したユーザーの管理」を参照してください。

適用対象

こちらもご覧ください