{
    "id": "mysql146-x-connection-checklist",
    "title": "Отличить рабочий X Protocol от отказа порта и проверить TLS",
    "columns": [
        "Наблюдение",
        "Результат"
    ],
    "rows": [
        [
            "Первый контрольный SELECT",
            1
        ],
        [
            "X Protocol использует TLS",
            true
        ],
        [
            "Версия TLS",
            "TLSv1.3"
        ],
        [
            "Шифр X Protocol",
            "TLS_AES_256_GCM_SHA384"
        ],
        [
            "Код отказа неслушающего порта",
            2002
        ],
        [
            "Рабочее соединение после отказа",
            1
        ]
    ],
    "checks": {
        "real_query_succeeded": true,
        "x_protocol_tls_observed": true,
        "bounded_expected_failure": true,
        "original_session_still_usable": true,
        "no_schema_objects_created": true,
        "owned_objects_removed": true
    },
    "observations": {
        "schema_absence_before": {
            "phpmanualx146alpha": true,
            "phpmanualx146beta": true
        },
        "schema_absence_after": {
            "phpmanualx146alpha": true,
            "phpmanualx146beta": true
        },
        "first_query": [
            {
                "ready": 1
            }
        ],
        "x_protocol_tls": {
            "active": "ON",
            "cipher": "TLS_AES_256_GCM_SHA384",
            "version": "TLSv1.3"
        },
        "failed_endpoint": {
            "host": "127.0.0.1",
            "port": 14602,
            "bound_without_listen": true,
            "connect_timeout_ms": 1000,
            "failure": [
                {
                    "class": "mysql_xdevapi\\Exception",
                    "code": 2002,
                    "message": "[2002][HY000] Подключение не установлено, т.к. конечный компьютер отверг запрос на подключение"
                }
            ]
        },
        "last_query": [
            {
                "ready": 1
            }
        ],
        "uri_omitted": true
    },
    "runtime": {
        "php": "8.3.35",
        "extension": "8.0.30",
        "server_version": 80413,
        "schema": null,
        "host": "127.0.0.1",
        "port": 33140
    },
    "schema_absence_before": {
        "phpmanualx146alpha": true,
        "phpmanualx146beta": true
    },
    "schema_absence_after": {
        "phpmanualx146alpha": true,
        "phpmanualx146beta": true
    },
    "owned_objects": [],
    "removed_objects": []
}
