---
title: "パスワード暗号化のためのハッシュアルゴリズムを変更する"
slug: "change-the-hash-algorithm-for-password-encryption"
abstract: "弱いSHA1パスワード暗号化アルゴリズムを、Sitecoreのより安全なSHA512オプションに変更する方法。"
---
# パスワード暗号化のためのハッシュアルゴリズムを変更する

**適用対象**

Sitecoreクライアントアクセスが必要な [すべてのコアロール](https://doc.sitecore.com/xp/ja/developers/92/platform-administration-and-architecture/roles-overview.html) (Content ManagementおよびEXM Dispatch)。

**Sitecoreインストールフレームワーク**

ハッシュアルゴリズムはデフォルトで変更 **されていません** 。

**Azure Toolkit**

ハッシュアルゴリズムはデフォルトで変更 **されていません** 。

> !重要ハッシュアルゴリズムの設定を変更し直後、ユーザーがログインを試みる前に、新しいアルゴリズムが効果を発揮するためにSitecore Identity(SI)インスタンスを再起動する必要があります。SIインスタンスが再起動されない場合、ユーザーはASP.NETのメンバーシップからロックアウトされる可能性があります。

ユーザー管理のために、SitecoreはデフォルトでMicrosoft ASP.NETメンバーシッププロバイダーを使用しています。

新しいウェブサイトを作成する際は、ユーザーパスワードの暗号化に使われる弱いデフォルトハッシュアルゴリズム(SHA1)をより強力なアルゴリズムに変更する必要があります。サポートされているハッシュアルゴリズムは、Microsoftの[CryptoConfigクラス](https://msdn.microsoft.com/en-us/library/system.security.cryptography.cryptoconfig\(v=vs.110\).aspx)のドキュメントに記載されています。

ハッシュアルゴリズムを変更するには:

1.  管理者としてログインし、Sitecore XPとアイデンティティサーバーの両方でSHA1の設定を保持してください。
    
2.  設定ファイルをSitecoreとIdentity Serverの両方が同じ設定値を使うように修正してください。
    
    :::文字で
    
    1.  web.configファイルを更新してください。<membership>ノードで**hashAlgorithmType**設定を適切な値に設定してください。SHA512の使用を推奨します。
    2.  Sitecore Identityを使う場合は、Sitecore Identityサーバー上でアルゴリズムも変更する必要があります。アルゴリズムは\\sitecore\\Sitecore.Plugin.IdentityServer\\Config\\identityServer.xmlファイルのPasswordHashAlgorithmノードで指定します。:::
3.  **ユーザーマネージャー**アプリケーションを使って管理者パスワードを変更し、新しいアルゴリズムでハッシュ化します。
    
    > !注ハッシュアルゴリズムを変更した後は、変更したいときに新しい管理者パスワードを入力できなくなります。代わりに、新しいハッシュ化された管理者パスワードを取得するには「生成」をクリックしてください。
    
4.  パスワードを更新して他のユーザー向けに新しいアルゴリズムでハッシュ化させましょう。
    

> !重要MicrosoftのASP.NETメンバーシッププロバイダーは、ユーザーアカウントを作成した後に別のハッシュアルゴリズムにアップグレードする機能を提供していません。ハッシュアルゴリズムを変更すると、既存のユーザーはシステムにログインできなくなり、新しいパスワードを作成しなければなりません。