SqlMembershipProvider.PasswordFormat プロパティ
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
SQL Server メンバーシップ データベースにパスワードを格納する形式を示す値を取得します。
public:
virtual property System::Web::Security::MembershipPasswordFormat PasswordFormat { System::Web::Security::MembershipPasswordFormat get(); };
public override System.Web.Security.MembershipPasswordFormat PasswordFormat { get; }
member this.PasswordFormat : System.Web.Security.MembershipPasswordFormat
Public Overrides ReadOnly Property PasswordFormat As MembershipPasswordFormat
プロパティ値
SQL Server データベースにパスワードを格納する形式を示す MembershipPasswordFormat 値の 1 つ。
例
次のコード例は、ASP.NET アプリケーションのWeb.config ファイルのセクションのメンバーシップ要素system.web
を示しています。 アプリケーション SqlMembershipProvider のインスタンスを指定し、そのパスワード形式を Hashed
.
<membership defaultProvider="SqlProvider" userIsOnlineTimeWindow="20">
<providers>
<add name="SqlProvider"
type="System.Web.Security.SqlMembershipProvider"
connectionStringName="SqlServices"
enablePasswordRetrieval="false"
enablePasswordReset="true"
requiresQuestionAndAnswer="true"
passwordFormat="Hashed"
applicationName="MyApplication" />
</providers>
</membership>
注釈
使用Hashed
のみでありEncrypted
、Clear
セキュリティで保護されていません。 Hashed
パスワードは、一方向ハッシュ アルゴリズムと、データベースに格納されるときにランダムに生成されたソルト値を使用してハッシュされます。 パスワードを検証するとき、そのパスワードは、データベースの salt 値を使用して検証のためにハッシュされます。 ハッシュされたパスワードを取得することはできません。 Encrypted
パスワードは安全とは見なされません。データベースの内容を明らかにする侵害によって暗号化キーが公開される可能性もあります。 つまり、暗号化されたパスワードを復号化して公開できます。
値はPasswordFormat、ASP.NET アプリケーションのWeb.config ファイルの providers セクションで指定されます。
Encrypted
パスワード Hashed
は、構成の machineKey 要素で指定された情報に基づいて、既定で暗号化またはハッシュされます。 属性の3DES``validation
値を指定した場合、または値が指定されていない場合、ハッシュされたパスワードはアルゴリズムをSHA1使用してハッシュされることに注意してください。
カスタム ハッシュ アルゴリズムは、membership 要素 (ASP.NET 設定 スキーマ) 構成要素の属性を使用してhashAlgorithmType
定義できます。 暗号化を選択した場合、既定のパスワード暗号化では AES が使用されます。 暗号化アルゴリズムを変更するには、machineKey 構成要素の属性を設定decryption
します。 パスワードを暗号化する場合は、machineKey 要素の属性に明示的な値をdecryptionKey
指定する必要があります。 ASP.NET メンバーシップで暗号化されたパスワードをdecryptionKey
使用する場合、属性の既定値AutoGenerate
はサポートされていません。
SHA1 との競合問題のため、Microsoft では SHA256 以上に基づくセキュリティ モデルを推奨しています。