Amazon MQ 上の RabbitMQ の設定可能な値 - Amazon MQ

Amazon MQ 上の RabbitMQ の設定可能な値

AWS マネジメントコンソールでブローカー設定ファイルを変更することで、以下のブローカー設定オプションの値を設定できます。

次の表で説明する値に加えて、Amazon MQ は OAuth 2.0 に関連するブローカー設定オプションをサポートしています。これらの設定オプションの詳細については、以下のセクション、「OAuth 2.0 の設定」を参照してください。

設定 デフォルト値 推奨値 適用可能なバージョン 説明
consumer_timeout 1800000 ミリ秒 (30 分) 1800000 ミリ秒 (30 分) 0~2,147,483,647 ミリ秒。Amazon MQ は、「無限」を意味する値 0 をサポートします。 すべてのバージョン コンシューマーの配信承認のタイムアウト。コンシューマーが配信を受け付けない状況を検出するために使用されます。
heartbeat 60 秒 60 秒 60~3600 秒 すべてのバージョン RabbitMQ で接続が利用できないと見なされるまでの時間を定義します。
management.restrictions.operator _policy_changes.disabled true true true、false 3.11 以降 オペレーターポリシーへの変更を無効にします。この変更を行う場合は、HA プロパティを独自のオペレーターポリシーに含めることを強くお勧めします。
quorum_queue.property_equivalence.relaxed _checks_on_redeclaration true true true、false 3.13 以降 TRUE に設定すると、アプリケーションはクォーラムキューを再宣言するときのチャネル例外を回避します。
secure.management.http.headers.enabled 2024 年 7 月 9 日以降に作成された 3.10 のブローカーでは true。2024 年 7 月 9 日より前に作成されたブローカーでは false true true または false 3.10 以降 変更不可能な HTTP セキュリティヘッダーを有効にします。

OAuth 2.0 認証と認可の設定

Amazon MQ for RabbitMQ は、RabbitMQ OAuth 2.0 プラグインで設定可能なすべての変数をサポートしますが、以下の例外があります。

  • auth_oauth2.https.cacertfile

  • auth_oauth2.oauth_providers.{id/index}.https.cacertfile

  • management.oauth_client_secret

    Amazon MQ はこのキーをサポートしていないため、UAA は IdP としてサポートされません。

  • management.oauth_resource_servers.{id/index}.oauth_client_secret

  • auth_oauth2.signing_keys.{id/index}

Amazon MQ では、OAuth 2.0 認証に次の追加の検証も適用されます。

  • すべての URL は https:// で始まる必要があります。

  • サポートされている署名アルゴリズム: Ed25519Ed25519phEd448Ed448phEdDSAES256KES256ES384ES512HS256HS384HS512PS256PS384PS512RS256RS384RS512

OAuth 2.0 認証の設定の詳細については、「OAuth 2.0 の認証と認可の使用」を参照してください。

コンシューマーの配信承認の設定

consumer_timeout を設定すると、コンシューマーから配信承認が届かない状況を検出できます。コンシューマーがタイムアウト値の時間内に承認を送信しない場合、チャネルは閉じられます。例えば、デフォルト値の 1800000 ミリ秒を使用している場合は、コンシューマーが 1800000 ミリ秒以内に配信承認を送信しないとチャネルが閉じられます。

ハートビートの設定

ハートビートタイムアウトを設定すると、接続の中断や失敗が発生したときに検出できます。ハートビート値は、接続がダウンと見なされるまでの時間制限を定義します。

オペレーターポリシーの設定

各仮想ホストのデフォルトのオペレーターポリシーには、以下の推奨される HA プロパティがあります。

{ "name": "default_operator_policy_AWS_managed", "pattern": ".*", "apply-to": "all", "priority": 0, "definition": { "ha-mode": "all", "ha-sync-mode": "automatic" } }

AWS マネジメントコンソールまたは管理 API によるオペレーターポリシーの変更は、デフォルトでは使用できません。ブローカー設定に次の行を追加することで変更を有効にすることができます。

management.restrictions.operator_policy_changes.disabled=false

この変更を行う場合は、HA プロパティを独自のオペレーターポリシーに含めることを強くお勧めします。

キューの宣言時の緩和チェックの設定

従来のキューをクォーラムキューに移行してもクライアントコードを更新していない場合は、quorum_queue.property_equivalence.relaxed_checks_on_redeclaration を true に設定することで、クォーラムキューを再宣言するときのチャネル例外を回避できます。

HTTP セキュリティヘッダーの設定

secure.management.http.headers.enabled 設定は、次の HTTP セキュリティヘッダーを有効にします。

  • X-Content-Type-Options: nosniff: ブラウザによるコンテンツスニッフィングの実行を防ぎます。コンテンツスニッフィングは、ウェブサイトのファイル形式を推定するために使用されるアルゴリズムです。

  • X-Frame-Options: DENY: 第三者が独自のウェブサイト上のフレームに管理プラグインを埋め込んで他者をだますことを防ぎます。

  • Strict-Transport-Security: max-age=47304000; includeSubDomains: ウェブサイトとそのサブドメインに接続を行うときに、今後長期間 (1.5 年) にわたって HTTPS を使用するようにブラウザに強制します。

バージョン 3.10 以降で作成された Amazon MQ for RabbitMQ ブローカーでは、デフォルトで secure.management.http.headers.enabledtrue に設定されます。secure.management.http.headers.enabledtrue に設定すると、これらの HTTP セキュリティヘッダーが有効になります。これらの HTTP セキュリティヘッダーからオプトアウトする場合は、secure.management.http.headers.enabledfalse に設定します。