このページでは、米国国立標準技術研究所(NIST)SP 800-53 標準の事前定義されたポスチャー テンプレートの v1.0 バージョンに含まれる検出ポリシーについて説明します。このテンプレートには、NIST SP 800-53 基準を遵守する必要があるワークロードに適用される Security Health Analytics 検出項目を定義するポリシーセットが含まれています。
このポスチャー テンプレートは、変更を加えることなくデプロイできます。
Security Health Analytics の検出機能
次の表に、このポスチャー テンプレートに含まれる Security Health Analytics の検出機能を示します。
検出項目の名前 | 説明 |
---|---|
BIGQUERY_TABLE_CMEK_DISABLED |
この検出機能は、BigQuery テーブルが顧客管理の暗号鍵(CMEK)を使用するように構成されていないかどうかを確認します。詳細については、データセットの脆弱性の検出結果をご覧ください。 |
PUBLIC_DATASET |
この検出機能は、データセットが一般公開のアクセスを受け入れるように構成されているかどうかを確認します。詳細については、データセットの脆弱性の検出結果をご覧ください。 |
SQL_CROSS_DB_OWNERSHIP_CHAINING |
この検出機能は、Cloud SQL for SQL Server の |
INSTANCE_OS_LOGIN_DISABLED |
この検出機能は、OS Login が有効になっていないかどうかを確認します。 |
SQL_SKIP_SHOW_DATABASE_DISABLED |
この検出機能は、Cloud SQL for MySQL の |
SQL_EXTERNAL_SCRIPTS_ENABLED |
この検出機能は、Cloud SQL for SQL Server の |
VPC_FLOW_LOGS_SETTINGS_NOT_RECOMMENDED |
この検出機能は、VPC フローログが有効になっていないかどうかを確認します。 |
API_KEY_EXISTS |
この検出機能は、プロジェクトが標準認証ではなく API キーを使用しているかどうかを確認します。 |
SQL_LOG_MIN_ERROR_STATEMENT_SEVERITY |
この検出機能は、Cloud SQL for PostgreSQL の |
COMPUTE_SERIAL_PORTS_ENABLED |
この検出機能は、シリアルポートが有効になっているかどうかを確認します。 |
SQL_LOG_DISCONNECTIONS_DISABLED |
この検出機能は、Cloud SQL for PostgreSQL の |
COMPUTE_PROJECT_WIDE_SSH_KEYS_ALLOWED |
この検出機能は、プロジェクト全体の SSH 認証鍵が使用されているかどうかを確認します。 |
KMS_PROJECT_HAS_OWNER |
この検出機能は、キーを含むプロジェクトに対するオーナー権限がユーザーに付与されているかどうかを確認します。 |
KMS_KEY_NOT_ROTATED |
この検出機能は、Cloud Key Management Service の暗号化のローテーションが有効になっていないかどうかを確認します。 |
ESSENTIAL_CONTACTS_NOT_CONFIGURED |
この検出機能は、重要な連絡先が 1 つ以上存在するかどうかを確認します。 |
AUDIT_LOGGING_DISABLED |
この検出機能は、リソースの監査ロギングがオフになっているかどうかを確認します。 |
LOCKED_RETENTION_POLICY_NOT_SET |
この検出機能は、ロックされた保持ポリシーがログに設定されているかどうかを確認します。 |
DNS_LOGGING_DISABLED |
この検出機能は、VPC ネットワークで DNS ロギングが有効になっているかどうかを確認します。 |
LOG_NOT_EXPORTED |
この検出機能は、リソースにログシンクが構成されていないかどうかをチェックします。 |
KMS_ROLE_SEPARATION |
この検出機能は、Cloud KMS 鍵の職掌分散を確認します。 |
DISK_CSEK_DISABLED |
この検出機能は、VM で顧客指定の暗号鍵(CSEK)のサポートがオフになっているかどうかを確認します。 |
SQL_USER_CONNECTIONS_CONFIGURED |
この検出機能は、Cloud SQL for SQL Server の |
API_KEY_APIS_UNRESTRICTED |
この検出機能は、API キーが広すぎる範囲で使用されているかどうかを確認します。 |
SQL_LOG_MIN_MESSAGES |
この検出機能は、Cloud SQL for PostgreSQL の |
SQL_LOCAL_INFILE |
この検出機能は、Cloud SQL for MySQL の |
SQL_LOG_MIN_DURATION_STATEMENT_ENABLED |
この検出機能は、Cloud SQL for PostgreSQL の |
DATASET_CMEK_DISABLED |
この検出機能は、BigQuery データセットに対して CMEK のサポートがオフになっているかどうかを確認します。 |
OPEN_SSH_PORT |
この検出機能は、一般的なアクセスを許可する開いている SSH ポートがファイアウォールにあるかどうかを確認します。詳しくは、ファイアウォールの脆弱性の検出結果をご覧ください。 |
FIREWALL_NOT_MONITORED |
この検出機能は、ログ指標とアラートが VPC ファイアウォール ルールの変更をモニタリングするように構成されていないかどうかを確認します。 |
SQL_LOG_STATEMENT |
この検出機能は、Cloud SQL for PostgreSQL サーバーの |
SQL_PUBLIC_IP |
この検出機能は、Cloud SQL データベースに外部 IP アドレスがあるかどうかを確認します。 |
IP_FORWARDING_ENABLED |
この検出機能は、IP 転送が有効になっているかどうかを確認します。 |
DATAPROC_CMEK_DISABLED |
この検出機能は、Dataproc クラスタに対して CMEK のサポートがオフになっているかどうかを確認します。 |
CONFIDENTIAL_COMPUTING_DISABLED |
この検出機能は、Confidential Computing がオフになっているかどうかを確認します。 |
KMS_PUBLIC_KEY |
この検出機能は、Cloud Key Management Service 暗号鍵が一般公開されているかどうかを確認します。詳細については、KMS の脆弱性の検出結果をご覧ください。 |
SQL_INSTANCE_NOT_MONITORED |
この検出機能は、Cloud SQL の構成変更に対するロギングがオフになっているかどうかを確認します。 |
SQL_TRACE_FLAG_3625 |
この検出機能は、Cloud SQL for SQL Server の |
DEFAULT_NETWORK |
この検出機能は、プロジェクトにデフォルト ネットワークが存在するかどうかを確認します。 |
DNSSEC_DISABLED |
この検出機能は、Cloud DNS で DNS セキュリティ(DNSSEC)がオフになっているかどうかを確認します。詳細については、DNS の脆弱性の検出結果をご覧ください。 |
API_KEY_NOT_ROTATED |
この検出機能は、API キーが過去 90 日以内にローテーションされているかどうかを確認します。 |
SQL_LOG_CONNECTIONS_DISABLED |
この検出機能は、Cloud SQL for PostgreSQL の |
LEGACY_NETWORK |
この検出機能は、プロジェクトに以前のネットワークが存在するかどうかを確認します。 |
IAM_ROOT_ACCESS_KEY_CHECK |
この検出機能は、IAM ルートアクセス鍵にアクセスできるかどうかを確認します。 |
PUBLIC_IP_ADDRESS |
この検出機能は、インスタンスに外部 IP アドレスがあるかどうかを確認します。 |
OPEN_RDP_PORT |
この検出機能は、開いている RDP ポートがファイアウォールにあるかどうかを確認します。 |
INSTANCE_OS_LOGIN_DISABLED |
この検出機能は、OS Login が有効になっていないかどうかを確認します。 |
ADMIN_SERVICE_ACCOUNT |
この検出機能は、サービス アカウントに管理者、オーナー、または編集者の権限が付与されているかどうかを確認します。 |
SQL_USER_OPTIONS_CONFIGURED |
この検出機能は、Cloud SQL for SQL Server に |
FULL_API_ACCESS |
この検出機能は、インスタンスがすべての Google Cloud API への完全アクセス権を持つデフォルトのサービス アカウントを使用しているかどうかを確認します。 |
DEFAULT_SERVICE_ACCOUNT_USED |
この検出機能は、デフォルトのサービス アカウントが使用されているかどうかを確認します。 |
NETWORK_NOT_MONITORED |
この検出機能は、ログ指標とアラートが VPC ネットワークの変更をモニタリングするように構成されていないかどうかを確認します。 |
SQL_CONTAINED_DATABASE_AUTHENTICATION |
この検出機能は、Cloud SQL for SQL Server の |
PUBLIC_BUCKET_ACL |
この検出機能は、バケットが一般公開されているかどうかを確認します。 |
LOAD_BALANCER_LOGGING_DISABLED |
この検出機能は、ロードバランサのロギングがオフになっているかどうかを確認します。 |
OVER_PRIVILEGED_SERVICE_ACCOUNT_USER |
この検出機能は、ユーザーが特定のサービス アカウントではなく、プロジェクト レベルでサービス アカウント ロールを持っているかどうかを確認します。 |
SQL_REMOTE_ACCESS_ENABLED |
この検出機能は、Cloud SQL for SQL Server の |
CUSTOM_ROLE_NOT_MONITORED |
この検出機能は、カスタムロールを変更する際にロギングがオフになっているかどうかを確認します。 |
AUTO_BACKUP_DISABLED |
この検出機能は、Cloud SQL データベースで自動バックアップが有効になっていないかどうかを確認します。 |
RSASHA1_FOR_SIGNING |
この検出機能は、Cloud DNS ゾーンで RSASHA1 が鍵の署名に使用されているかどうかを確認します。 |
CLOUD_ASSET_API_DISABLED |
この検出機能は、Cloud Asset Inventory がオフになっているかどうかを確認します。 |
SQL_LOG_ERROR_VERBOSITY |
この検出機能は、Cloud SQL for PostgreSQL の |
ROUTE_NOT_MONITORED |
この検出機能は、ログ指標とアラートが VPC ネットワーク ルートの変更をモニタリングするように構成されていないかどうかを確認します。 |
BUCKET_POLICY_ONLY_DISABLED |
この検出機能は、バケットレベルのアクセスが均一に構成されているかどうかを確認します。 |
BUCKET_IAM_NOT_MONITORED |
この検出機能は、Cloud Storage で IAM 権限を変更する際にロギングがオフになっているかどうかを確認します。 |
PUBLIC_SQL_INSTANCE |
この検出機能は、Cloud SQL がすべての IP アドレスからの接続を許可しているかどうかを確認します。 |
SERVICE_ACCOUNT_ROLE_SEPARATION |
この検出機能は、サービス アカウント キーの職掌分散を確認します。 |
AUDIT_CONFIG_NOT_MONITORED |
この検出機能は、監査構成の変更がモニタリングされているかどうかを確認します。 |
OWNER_NOT_MONITORED |
この検出機能は、プロジェクトの所有権の割り当てと変更でロギングがオフになっているかどうかを確認します。 |
YAML 定義
NIST 800-53 のポスチャー テンプレートの YAML 定義は次のとおりです。
name: organizations/123/locations/global/postureTemplates/nist_800_53
description: Posture Template to make your workload NIST800-53 compliant.
revision_id: v.1.0
state: ACTIVE
policy_sets:
- policy_set_id: NIST800-53 detective policy set
description: 68 SHA modules that new customers can automatically enable.
policies:
- policy_id: BigQuery table CMEK disabled
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: BIGQUERY_TABLE_CMEK_DISABLED
- policy_id: Public dataset
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: PUBLIC_DATASET
- policy_id: SQl cross db ownership
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: SQL_CROSS_DB_OWNERSHIP_CHAINING
- policy_id: Instance OS login disabled
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: INSTANCE_OS_LOGIN_DISABLED
- policy_id: SQL skip show database disabled
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: SQL_SKIP_SHOW_DATABASE_DISABLED
- policy_id: SQL external scripts enabled
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: SQL_EXTERNAL_SCRIPTS_ENABLED
- policy_id: VPC flow logs settings not recommended
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: VPC_FLOW_LOGS_SETTINGS_NOT_RECOMMENDED
- policy_id: API key exists
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: API_KEY_EXISTS
- policy_id: SQL log min error statement severity
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: SQL_LOG_MIN_ERROR_STATEMENT_SEVERITY
- policy_id: Compute serial ports enabled
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: COMPUTE_SERIAL_PORTS_ENABLED
- policy_id: SQL log disconnections disabled
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: SQL_LOG_DISCONNECTIONS_DISABLED
- policy_id: Compute project wide SHH keys allowed
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: COMPUTE_PROJECT_WIDE_SSH_KEYS_ALLOWED
- policy_id: KMS project has owner
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: KMS_PROJECT_HAS_OWNER
- policy_id: KMS key not rotated
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: KMS_KEY_NOT_ROTATED
- policy_id: Essential contacts not configured
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: ESSENTIAL_CONTACTS_NOT_CONFIGURED
- policy_id: Audit logging disabled
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: AUDIT_LOGGING_DISABLED
- policy_id: Locked retention policy not set
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: LOCKED_RETENTION_POLICY_NOT_SET
- policy_id: DNS logging disabled
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: DNS_LOGGING_DISABLED
- policy_id: Log not exported
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: LOG_NOT_EXPORTED
- policy_id: KMS role separation
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: KMS_ROLE_SEPARATION
- policy_id: Disk CSEK disabled
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: DISK_CSEK_DISABLED
- policy_id: SQL user connections configured
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: SQL_USER_CONNECTIONS_CONFIGURED
- policy_id: API key APIs unrestricted
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: API_KEY_APIS_UNRESTRICTED
- policy_id: SQL log min messages
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: SQL_LOG_MIN_MESSAGES
- policy_id: SQL log infile
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: SQL_LOCAL_INFILE
- policy_id: SQL log min duration statement enabled
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: SQL_LOG_MIN_DURATION_STATEMENT_ENABLED
- policy_id: Dataset CMEK disabled
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: DATASET_CMEK_DISABLED
- policy_id: Open SSH port
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: OPEN_SSH_PORT
- policy_id: Firewall not monitored
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: FIREWALL_NOT_MONITORED
- policy_id: SQL log statement
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: SQL_LOG_STATEMENT
- policy_id: SQL public IP
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: SQL_PUBLIC_IP
- policy_id: IP forwarding enabled
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: IP_FORWARDING_ENABLED
- policy_id: Dataproc CMEK disabled
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: DATAPROC_CMEK_DISABLED
- policy_id: Confidential computing disabled
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: CONFIDENTIAL_COMPUTING_DISABLED
- policy_id: KMS public key
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: KMS_PUBLIC_KEY
- policy_id: SQL instance not monitored
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: SQL_INSTANCE_NOT_MONITORED
- policy_id: SQL trace flag 3625
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: SQL_TRACE_FLAG_3625
- policy_id: Default network
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: DEFAULT_NETWORK
- policy_id: DNSSEC disabled
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: DNSSEC_DISABLED
- policy_id: API key not rotated
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: API_KEY_NOT_ROTATED
- policy_id: SQL log connections disabled
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: SQL_LOG_CONNECTIONS_DISABLED
- policy_id: Legacy network
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: LEGACY_NETWORK
- policy_id: IAM root access key check
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: IAM_ROOT_ACCESS_KEY_CHECK
- policy_id: Public IP address
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: PUBLIC_IP_ADDRESS
- policy_id: Open RDP port
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: OPEN_RDP_PORT
- policy_id: OS login disabled
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: OS_LOGIN_DISABLED
- policy_id: Admin service account
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: ADMIN_SERVICE_ACCOUNT
- policy_id: SQL user options configured
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: SQL_USER_OPTIONS_CONFIGURED
- policy_id: Full API access
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: FULL_API_ACCESS
- policy_id: Default service account used
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: DEFAULT_SERVICE_ACCOUNT_USED
- policy_id: Network not monitored
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: NETWORK_NOT_MONITORED
- policy_id: SQL contained database authentication
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: SQL_CONTAINED_DATABASE_AUTHENTICATION
- policy_id: Public bucket ACL
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: PUBLIC_BUCKET_ACL
- policy_id: Load balancer logging disabled
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: LOAD_BALANCER_LOGGING_DISABLED
- policy_id: Over privileged service account user
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: OVER_PRIVILEGED_SERVICE_ACCOUNT_USER
- policy_id: SQL remote access enabled
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: SQL_REMOTE_ACCESS_ENABLED
- policy_id: Custom role not monitored
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: CUSTOM_ROLE_NOT_MONITORED
- policy_id: Auto backup disabled
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: AUTO_BACKUP_DISABLED
- policy_id: RSASHA1 for signing
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: RSASHA1_FOR_SIGNING
- policy_id: Cloud asset API disabled
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: CLOUD_ASSET_API_DISABLED
- policy_id: SQL log error verbosity
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: SQL_LOG_ERROR_VERBOSITY
- policy_id: Route not monitored
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: ROUTE_NOT_MONITORED
- policy_id: Bucket policy only disabled
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: BUCKET_POLICY_ONLY_DISABLED
- policy_id: Bucket IAM not monitored
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: BUCKET_IAM_NOT_MONITORED
- policy_id: Publc SQL instance
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: PUBLIC_SQL_INSTANCE
- policy_id: Service account role separation
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: SERVICE_ACCOUNT_ROLE_SEPARATION
- policy_id: Audit config not monitored
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: AUDIT_CONFIG_NOT_MONITORED
- policy_id: Owner not monitored
constraint:
securityHealthAnalyticsModule:
moduleEnablementState: ENABLED
moduleName: OWNER_NOT_MONITORED