すべてのプロダクト
Search
ドキュメントセンター

ApsaraDB RDS:カスタムパスワードポリシー

最終更新日:Nov 09, 2025

アカウントのパスワードポリシーは、Windows ホストレイヤーでパスワード設定を管理します。RDS SQL Server では、コンソールまたは API を介してアカウントのパスワードポリシーを設定し、パスワードの有効期間を正確に管理することでセキュリティを強化できます。デフォルトでは、ユーザーアカウントのパスワードは無期限です。ユーザーアカウントには、手動でパスワードポリシーを適用できます。デフォルトでは、ホストアカウントのパスワードは 42 日間のみ有効です。パスワードの有効期限が切れると、ログインに失敗します。事前にパスワードポリシーを設定することをお勧めします。ホストアカウントは、手動で設定しなくても、これらのポリシーを自動的に適用します。

前提条件

RDS インスタンスは、次の要件を満たす必要があります。

  • インスタンスタイプ: 汎用または専用 ( 共有 ではない)

  • 課金方法: サブスクリプションまたは従量課金 ( サーバーレスインスタンス ではない)

  • RDS インスタンスで SQL Server 2008 R2 が実行されていないこと。

注意事項

アカウントを作成し、そのアカウント用に設定したパスワードポリシーを適用する場合、パスワードにアカウントのユーザー名を含めることはできません。たとえば、ユーザー名が Test240903 の場合、パスワードを Test240903abc に設定することはできません。

ステップ 1: アカウントのパスワードポリシーを設定する

  1. インスタンス ページに移動します。上部のナビゲーションバーで、RDS インスタンスが存在するリージョンを選択します。次に、RDS インスタンスを見つけて、インスタンスの ID をクリックします。

  2. 左側のナビゲーションウィンドウで、アカウント管理 をクリックします。

  3. [アカウントパスワードポリシー] をクリックし、次のパラメーターを設定し、ターゲットポリシーを選択してから、[OK] をクリックします。

    パスワードの最大有効期間とパスワードの最小有効期間のパラメーターの一方または両方を設定できます。

    パラメーター

    説明

    有効値 (日)

    パスワードの最大有効期間

    パスワードを変更する必要が生じるまでの、パスワードを使用できる期間。

    0~999

    パスワードの最小有効期間

    パスワードを変更できるようになるまでの、パスワードを使用しなければならない期間。

    説明

    このパラメーターの値は、パスワードの最大有効期間パラメーターの値より大きくすることはできません。

    0~998

    例 1: パスワードの最大有効期間のみを設定する

    パスワードの有効期間を最大 60 日とし、60 日後にユーザーにパスワードの変更を要求する場合は、[パスワードの最大有効期間] を 60 日に設定します。

    image

    例 2: パスワードの最小有効期間のみを設定する

    パスワードを少なくとも 30 日間使用し、30 日以内にユーザーがパスワードを変更できないようにする場合は、[パスワードの最小有効期間] を 30 日に設定します。

    image

    例 3: パスワードの最大有効期間と最小有効期間の両方を設定する

    ユーザーに 90 日ごとにパスワードを変更させ、新しいパスワードを少なくとも 30 日間使用させたい場合は、[パスワードの最大有効期間] を 90 日に、[パスワードの最小有効期間] を 30 日に設定します。

    image

ステップ 2: ユーザーアカウントにパスワードポリシーを適用する

ユーザーアカウントの場合、手動でパスワードポリシーを適用する必要があります。ホストアカウントは、手動で設定しなくてもパスワードポリシーを自動的に適用します

ユーザーアカウント作成時にパスワードポリシーを適用する

[アカウント管理] > [ユーザーアカウント] ページで、標準アカウントまたは特権アカウントを作成するか、SA 権限を持つデータベースアカウントを作成するときにパスワードポリシーを適用します。

image

既存のユーザーアカウントにパスワードポリシーを適用する

[アカウント管理] > [ユーザーアカウント] ページで、既存のアカウントにパスワードポリシーを適用します。

image

よくある質問

RDS SQL Server ホストアカウントのデフォルトのパスワード有効期限はどのくらいですか?

デフォルトでは、ホストアカウントは Windows のパスワードポリシーを使用し、デフォルトの有効期限は 42 日です。RDS SQL Server がホストのログインアカウントを作成した場合、デフォルトで 42 日後にパスワードの有効期限が切れます。有効期限が切れた後は、パスワードをリセットする必要があります。

image

image

RDS SQL Server ホストアカウントのデフォルトのパスワード有効期限を変更するにはどうすればよいですか?

RDS SQL Server はカスタムパスワードポリシーをサポートしています。必要に応じて、RDS コンソールでパスワードの最大有効期間または最小有効期間を変更できます。変更後、ホストアカウントは新しいポリシーを自動的に適用し、即時に有効になります。ユーザーアカウントにもパスワードポリシーが適用されている場合、そのポリシーも即時に有効になります。ただし、共有インスタンス、SQL Server 2008 R2 インスタンス、および サーバーレスインスタンスはこの機能をサポートしていないことに注意してください。

image

image

RDS コンソールを介して RDS SQL Server のユーザーアカウント/ホストアカウントのパスワード有効期限ポリシーを設定できますか?

はい。SQL Server 自体は独立したパスワード有効期限ポリシーを管理せず、Windows の設定を継承します。ただし、RDS コンソールを介してアカウントパスワードポリシーを設定するか、Windows ホストに直接ログインしてパスワードポリシーを変更することができます。ただし、共有インスタンス、SQL Server 2008 R2 インスタンス、および サーバーレスインスタンスはこの機能をサポートしていないことに注意してください。

コンソールを介して作成された RDS SQL Server ユーザーアカウントには、デフォルトのパスワード有効期限ポリシーがありますか?有効期限はありますか?

デフォルトでは、RDS コンソールを介して作成されたユーザーアカウントでは、Windows のパスワードポリシーは有効になっていません。パスワード有効期限ポリシーを有効にする必要がある場合は、ユーザーの CHECK_POLICYCHECK_EXPIRATIONON に変更できます。RDS コンソールを介してユーザーにパスワードポリシーを適用すると、対応するアカウントの CHECK_POLICYCHECK_EXPIRATIONON に設定され、Windows ポリシーが使用されるようになります。

たとえば、RDS コンソールを介してパスワードの最小有効期間を 1 日、パスワードの最大有効期間を 2 日に設定した場合、対応する Windows パスワードポリシーでは Minimum password age が 1 日に、Maximum password age が 2 日に設定されます。

image

image

RDS SQL Server でユーザーのパスワードポリシーが有効になっているかどうかを確認するにはどうすればよいですか?たとえば、パスワードの有効期限が切れているか、パスワードが最後に変更されたのはいつかなどです。

次の SQL 検索文を使用して、ユーザーのパスワードポリシーのステータスと関連情報 (ポリシーが有効になっているか、パスワードの有効期限が切れているかなど) を確認できます。

-- ユーザーのパスワードポリシーのステータスと関連情報をクエリする
SELECT 
    name,
    is_policy_checked, -- パスワードの複雑さのポリシーが有効かどうか
    is_expiration_checked, -- パスワードの有効期限ポリシーが有効かどうか
    LOGINPROPERTY(name, 'IsMustChange') AS IsMustChange, -- 次回のログイン時にパスワードを変更する必要があるかどうか
    LOGINPROPERTY(name, 'IsLocked') AS IsLocked, -- アカウントがロックされているかどうか
    LOGINPROPERTY(name, 'LockoutTime') AS LockoutTime, -- アカウントがロックされた時刻 (ロックされていない場合は NULL)
    LOGINPROPERTY(name, 'PasswordLastSetTime') AS PasswordLastSetTime, -- パスワードが最後に変更された時刻
    LOGINPROPERTY(name, 'IsExpired') AS IsExpired, -- パスワードの有効期限が切れているかどうか
    LOGINPROPERTY(name, 'BadPasswordCount') AS BadPasswordCount, -- 不正なパスワード試行回数
    LOGINPROPERTY(name, 'BadPasswordTime') AS BadPasswordTime, -- 最後の不正なパスワード試行の時刻
    LOGINPROPERTY(name, 'HistoryLength') AS HistoryLength, -- パスワード履歴の長さ (古いパスワードの再利用を防止)
    modify_date -- ユーザーアカウントが最後に変更された時刻
FROM 
    sys.sql_logins; -- システムビューから SQL Server ログインユーザー情報をクエリする

image

関連する操作