@robinmordasiewicz/f5xc-api-mcp 2.0.5-2601050335 → 2.0.10-2601051503
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/generator/domain-metadata.d.ts +161 -0
- package/dist/generator/domain-metadata.d.ts.map +1 -1
- package/dist/generator/domain-metadata.js +263 -0
- package/dist/generator/domain-metadata.js.map +1 -1
- package/dist/generator/naming/acronyms.d.ts +9 -2
- package/dist/generator/naming/acronyms.d.ts.map +1 -1
- package/dist/generator/naming/acronyms.js +35 -129
- package/dist/generator/naming/acronyms.js.map +1 -1
- package/dist/generator/naming/index.d.ts +1 -1
- package/dist/generator/naming/index.d.ts.map +1 -1
- package/dist/generator/naming/index.js +1 -1
- package/dist/generator/naming/index.js.map +1 -1
- package/dist/prompts/error-resolution.d.ts +7 -24
- package/dist/prompts/error-resolution.d.ts.map +1 -1
- package/dist/prompts/error-resolution.js +94 -296
- package/dist/prompts/error-resolution.js.map +1 -1
- package/dist/prompts/index.d.ts +2 -2
- package/dist/prompts/index.d.ts.map +1 -1
- package/dist/prompts/index.js +3 -3
- package/dist/prompts/index.js.map +1 -1
- package/dist/prompts/workflows.d.ts +8 -16
- package/dist/prompts/workflows.d.ts.map +1 -1
- package/dist/prompts/workflows.js +100 -306
- package/dist/prompts/workflows.js.map +1 -1
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +9 -7
- package/dist/server.js.map +1 -1
- package/dist/tools/discovery/best-practices.d.ts +1 -0
- package/dist/tools/discovery/best-practices.d.ts.map +1 -1
- package/dist/tools/discovery/best-practices.js +135 -226
- package/dist/tools/discovery/best-practices.js.map +1 -1
- package/dist/tools/discovery/cost-estimator.d.ts.map +1 -1
- package/dist/tools/discovery/cost-estimator.js +16 -4
- package/dist/tools/discovery/cost-estimator.js.map +1 -1
- package/dist/tools/generated/dependency-graph.json +1 -1
- package/dist/version.d.ts +2 -2
- package/dist/version.d.ts.map +1 -1
- package/dist/version.js +2 -2
- package/dist/version.js.map +1 -1
- package/manifest.json +1 -1
- package/package.json +1 -1
- package/specs/domains/admin_console_and_ui.json +25 -25
- package/specs/domains/ai_services.json +21 -21
- package/specs/domains/api.json +173 -173
- package/specs/domains/authentication.json +45 -45
- package/specs/domains/bigip.json +94 -94
- package/specs/domains/billing_and_usage.json +63 -63
- package/specs/domains/blindfold.json +109 -109
- package/specs/domains/bot_and_threat_defense.json +65 -65
- package/specs/domains/cdn.json +177 -177
- package/specs/domains/ce_management.json +111 -111
- package/specs/domains/certificates.json +75 -75
- package/specs/domains/cloud_infrastructure.json +112 -112
- package/specs/domains/container_services.json +91 -91
- package/specs/domains/data_and_privacy_security.json +66 -66
- package/specs/domains/data_intelligence.json +62 -62
- package/specs/domains/ddos.json +154 -154
- package/specs/domains/dns.json +148 -148
- package/specs/domains/managed_kubernetes.json +85 -85
- package/specs/domains/marketplace.json +103 -103
- package/specs/domains/network.json +230 -230
- package/specs/domains/network_security.json +187 -187
- package/specs/domains/nginx_one.json +62 -62
- package/specs/domains/object_storage.json +12 -12
- package/specs/domains/observability.json +102 -102
- package/specs/domains/rate_limiting.json +52 -52
- package/specs/domains/secops_and_incident_response.json +36 -36
- package/specs/domains/service_mesh.json +119 -119
- package/specs/domains/shape.json +313 -313
- package/specs/domains/sites.json +349 -349
- package/specs/domains/statistics.json +225 -225
- package/specs/domains/support.json +108 -108
- package/specs/domains/telemetry_and_insights.json +72 -72
- package/specs/domains/tenant_and_identity.json +268 -268
- package/specs/domains/threat_campaign.json +66 -66
- package/specs/domains/users.json +66 -66
- package/specs/domains/virtual.json +244 -244
- package/specs/domains/vpm_and_node_management.json +1 -1
- package/specs/domains/waf.json +139 -139
- package/specs/index.json +1661 -3
package/specs/index.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
|
-
"version": "2.0.
|
|
3
|
-
"timestamp": "2026-01-
|
|
2
|
+
"version": "2.0.10",
|
|
3
|
+
"timestamp": "2026-01-05T14:39:24.398741+00:00",
|
|
4
4
|
"specifications": [
|
|
5
5
|
{
|
|
6
6
|
"domain": "admin_console_and_ui",
|
|
@@ -2892,5 +2892,1663 @@
|
|
|
2892
2892
|
"aws_vpc_site",
|
|
2893
2893
|
"azure_vnet_site",
|
|
2894
2894
|
"gcp_vpc_site"
|
|
2895
|
-
]
|
|
2895
|
+
],
|
|
2896
|
+
"x-f5xc-error-resolution": {
|
|
2897
|
+
"version": "1.0.0",
|
|
2898
|
+
"http_errors": {
|
|
2899
|
+
"400": {
|
|
2900
|
+
"code": 400,
|
|
2901
|
+
"name": "Bad Request",
|
|
2902
|
+
"description": "The request was malformed or contains invalid data",
|
|
2903
|
+
"common_causes": [
|
|
2904
|
+
"Invalid JSON syntax in request body",
|
|
2905
|
+
"Missing required fields",
|
|
2906
|
+
"Invalid field values or formats",
|
|
2907
|
+
"Malformed resource references"
|
|
2908
|
+
],
|
|
2909
|
+
"diagnostic_steps": [
|
|
2910
|
+
{
|
|
2911
|
+
"step": 1,
|
|
2912
|
+
"action": "Validate JSON syntax",
|
|
2913
|
+
"description": "Check if request body is valid JSON",
|
|
2914
|
+
"command": "echo '$REQUEST_BODY' | jq ."
|
|
2915
|
+
},
|
|
2916
|
+
{
|
|
2917
|
+
"step": 2,
|
|
2918
|
+
"action": "Check required fields",
|
|
2919
|
+
"description": "Verify all required fields from OpenAPI spec are present"
|
|
2920
|
+
},
|
|
2921
|
+
{
|
|
2922
|
+
"step": 3,
|
|
2923
|
+
"action": "Validate field formats",
|
|
2924
|
+
"description": "Check string patterns, enum values, and data types"
|
|
2925
|
+
},
|
|
2926
|
+
{
|
|
2927
|
+
"step": 4,
|
|
2928
|
+
"action": "Verify references",
|
|
2929
|
+
"description": "Ensure referenced resources exist and are properly formatted"
|
|
2930
|
+
}
|
|
2931
|
+
],
|
|
2932
|
+
"prevention": [
|
|
2933
|
+
"Use schema validation before submission",
|
|
2934
|
+
"Validate JSON with jq or similar tools",
|
|
2935
|
+
"Reference OpenAPI spec for required fields and formats"
|
|
2936
|
+
],
|
|
2937
|
+
"related_errors": [
|
|
2938
|
+
422
|
|
2939
|
+
]
|
|
2940
|
+
},
|
|
2941
|
+
"401": {
|
|
2942
|
+
"code": 401,
|
|
2943
|
+
"name": "Unauthorized",
|
|
2944
|
+
"description": "Authentication credentials are missing or invalid",
|
|
2945
|
+
"common_causes": [
|
|
2946
|
+
"Missing Authorization header",
|
|
2947
|
+
"Expired API token",
|
|
2948
|
+
"Invalid API token format",
|
|
2949
|
+
"Token revoked or disabled"
|
|
2950
|
+
],
|
|
2951
|
+
"diagnostic_steps": [
|
|
2952
|
+
{
|
|
2953
|
+
"step": 1,
|
|
2954
|
+
"action": "Check Authorization header",
|
|
2955
|
+
"description": "Verify Authorization header is present and uses correct format"
|
|
2956
|
+
},
|
|
2957
|
+
{
|
|
2958
|
+
"step": 2,
|
|
2959
|
+
"action": "Validate token format",
|
|
2960
|
+
"description": "Ensure token starts with correct prefix (APIToken, Bearer)"
|
|
2961
|
+
},
|
|
2962
|
+
{
|
|
2963
|
+
"step": 3,
|
|
2964
|
+
"action": "Check token expiry",
|
|
2965
|
+
"description": "Verify token has not expired",
|
|
2966
|
+
"command": "Check token creation date in console"
|
|
2967
|
+
},
|
|
2968
|
+
{
|
|
2969
|
+
"step": 4,
|
|
2970
|
+
"action": "Test with fresh token",
|
|
2971
|
+
"description": "Generate new API token and retry"
|
|
2972
|
+
}
|
|
2973
|
+
],
|
|
2974
|
+
"prevention": [
|
|
2975
|
+
"Store tokens securely in environment variables",
|
|
2976
|
+
"Implement token refresh logic",
|
|
2977
|
+
"Monitor token expiry dates",
|
|
2978
|
+
"Use service accounts for automation"
|
|
2979
|
+
],
|
|
2980
|
+
"related_errors": [
|
|
2981
|
+
403
|
|
2982
|
+
]
|
|
2983
|
+
},
|
|
2984
|
+
"403": {
|
|
2985
|
+
"code": 403,
|
|
2986
|
+
"name": "Forbidden",
|
|
2987
|
+
"description": "Authentication succeeded but authorization denied",
|
|
2988
|
+
"common_causes": [
|
|
2989
|
+
"Insufficient role permissions",
|
|
2990
|
+
"Resource outside allowed namespaces",
|
|
2991
|
+
"Operation not permitted for user type",
|
|
2992
|
+
"Tenant-level restrictions"
|
|
2993
|
+
],
|
|
2994
|
+
"diagnostic_steps": [
|
|
2995
|
+
{
|
|
2996
|
+
"step": 1,
|
|
2997
|
+
"action": "Check user roles",
|
|
2998
|
+
"description": "Verify current user's role assignments",
|
|
2999
|
+
"command": "GET /api/web/custom/namespaces/{namespace}/whoami"
|
|
3000
|
+
},
|
|
3001
|
+
{
|
|
3002
|
+
"step": 2,
|
|
3003
|
+
"action": "Verify namespace access",
|
|
3004
|
+
"description": "Confirm user has access to target namespace"
|
|
3005
|
+
},
|
|
3006
|
+
{
|
|
3007
|
+
"step": 3,
|
|
3008
|
+
"action": "Check resource permissions",
|
|
3009
|
+
"description": "Verify user has permission for specific resource type"
|
|
3010
|
+
},
|
|
3011
|
+
{
|
|
3012
|
+
"step": 4,
|
|
3013
|
+
"action": "Review RBAC policies",
|
|
3014
|
+
"description": "Audit role-based access control configuration"
|
|
3015
|
+
}
|
|
3016
|
+
],
|
|
3017
|
+
"prevention": [
|
|
3018
|
+
"Request appropriate role assignments",
|
|
3019
|
+
"Verify RBAC policies before operations",
|
|
3020
|
+
"Use least privilege access principles"
|
|
3021
|
+
],
|
|
3022
|
+
"related_errors": [
|
|
3023
|
+
401
|
|
3024
|
+
]
|
|
3025
|
+
},
|
|
3026
|
+
"404": {
|
|
3027
|
+
"code": 404,
|
|
3028
|
+
"name": "Not Found",
|
|
3029
|
+
"description": "The requested resource does not exist",
|
|
3030
|
+
"common_causes": [
|
|
3031
|
+
"Resource was deleted",
|
|
3032
|
+
"Incorrect resource name or ID",
|
|
3033
|
+
"Wrong namespace specified",
|
|
3034
|
+
"Typo in resource path"
|
|
3035
|
+
],
|
|
3036
|
+
"diagnostic_steps": [
|
|
3037
|
+
{
|
|
3038
|
+
"step": 1,
|
|
3039
|
+
"action": "List resources",
|
|
3040
|
+
"description": "List all resources of this type to verify existence",
|
|
3041
|
+
"command": "GET /api/.../namespaces/{namespace}/{resource_type}"
|
|
3042
|
+
},
|
|
3043
|
+
{
|
|
3044
|
+
"step": 2,
|
|
3045
|
+
"action": "Check namespace",
|
|
3046
|
+
"description": "Verify operating in correct namespace"
|
|
3047
|
+
},
|
|
3048
|
+
{
|
|
3049
|
+
"step": 3,
|
|
3050
|
+
"action": "Verify resource name",
|
|
3051
|
+
"description": "Check for typos in resource name"
|
|
3052
|
+
},
|
|
3053
|
+
{
|
|
3054
|
+
"step": 4,
|
|
3055
|
+
"action": "Check deletion status",
|
|
3056
|
+
"description": "Verify resource was not recently deleted"
|
|
3057
|
+
}
|
|
3058
|
+
],
|
|
3059
|
+
"prevention": [
|
|
3060
|
+
"List resources before attempting operations",
|
|
3061
|
+
"Use tab completion or autocomplete",
|
|
3062
|
+
"Implement existence checks in scripts"
|
|
3063
|
+
],
|
|
3064
|
+
"related_errors": [
|
|
3065
|
+
410
|
|
3066
|
+
]
|
|
3067
|
+
},
|
|
3068
|
+
"409": {
|
|
3069
|
+
"code": 409,
|
|
3070
|
+
"name": "Conflict",
|
|
3071
|
+
"description": "The request conflicts with current resource state",
|
|
3072
|
+
"common_causes": [
|
|
3073
|
+
"Resource with same name already exists",
|
|
3074
|
+
"Concurrent modification detected",
|
|
3075
|
+
"Resource in transitional state",
|
|
3076
|
+
"Dependency conflict"
|
|
3077
|
+
],
|
|
3078
|
+
"diagnostic_steps": [
|
|
3079
|
+
{
|
|
3080
|
+
"step": 1,
|
|
3081
|
+
"action": "Check resource existence",
|
|
3082
|
+
"description": "Verify if resource already exists",
|
|
3083
|
+
"command": "GET /api/.../namespaces/{namespace}/{resource_type}/{name}"
|
|
3084
|
+
},
|
|
3085
|
+
{
|
|
3086
|
+
"step": 2,
|
|
3087
|
+
"action": "Check resource state",
|
|
3088
|
+
"description": "Verify resource is not in a transitional state"
|
|
3089
|
+
},
|
|
3090
|
+
{
|
|
3091
|
+
"step": 3,
|
|
3092
|
+
"action": "Review dependencies",
|
|
3093
|
+
"description": "Check for conflicting dependent resources"
|
|
3094
|
+
},
|
|
3095
|
+
{
|
|
3096
|
+
"step": 4,
|
|
3097
|
+
"action": "Use unique naming",
|
|
3098
|
+
"description": "Try with a different resource name"
|
|
3099
|
+
}
|
|
3100
|
+
],
|
|
3101
|
+
"prevention": [
|
|
3102
|
+
"Check existence before creation",
|
|
3103
|
+
"Use unique naming conventions",
|
|
3104
|
+
"Implement retry logic with backoff",
|
|
3105
|
+
"Add timestamps or UUIDs to names"
|
|
3106
|
+
],
|
|
3107
|
+
"related_errors": [
|
|
3108
|
+
423
|
|
3109
|
+
]
|
|
3110
|
+
},
|
|
3111
|
+
"422": {
|
|
3112
|
+
"code": 422,
|
|
3113
|
+
"name": "Unprocessable Entity",
|
|
3114
|
+
"description": "The request is well-formed but contains semantic errors",
|
|
3115
|
+
"common_causes": [
|
|
3116
|
+
"Business logic validation failure",
|
|
3117
|
+
"Invalid resource configuration",
|
|
3118
|
+
"Incompatible field combinations",
|
|
3119
|
+
"Referenced resources don't meet requirements"
|
|
3120
|
+
],
|
|
3121
|
+
"diagnostic_steps": [
|
|
3122
|
+
{
|
|
3123
|
+
"step": 1,
|
|
3124
|
+
"action": "Review error details",
|
|
3125
|
+
"description": "Check response body for specific validation errors"
|
|
3126
|
+
},
|
|
3127
|
+
{
|
|
3128
|
+
"step": 2,
|
|
3129
|
+
"action": "Validate configuration",
|
|
3130
|
+
"description": "Compare configuration against documentation requirements"
|
|
3131
|
+
},
|
|
3132
|
+
{
|
|
3133
|
+
"step": 3,
|
|
3134
|
+
"action": "Check dependencies",
|
|
3135
|
+
"description": "Verify referenced resources meet all requirements"
|
|
3136
|
+
},
|
|
3137
|
+
{
|
|
3138
|
+
"step": 4,
|
|
3139
|
+
"action": "Review constraints",
|
|
3140
|
+
"description": "Check field-level constraints and requirements"
|
|
3141
|
+
}
|
|
3142
|
+
],
|
|
3143
|
+
"prevention": [
|
|
3144
|
+
"Use configuration templates",
|
|
3145
|
+
"Validate against OpenAPI spec",
|
|
3146
|
+
"Review minimum configuration requirements"
|
|
3147
|
+
],
|
|
3148
|
+
"related_errors": [
|
|
3149
|
+
400
|
|
3150
|
+
]
|
|
3151
|
+
},
|
|
3152
|
+
"429": {
|
|
3153
|
+
"code": 429,
|
|
3154
|
+
"name": "Too Many Requests",
|
|
3155
|
+
"description": "Rate limit exceeded",
|
|
3156
|
+
"common_causes": [
|
|
3157
|
+
"Too many requests in time window",
|
|
3158
|
+
"Batch operations without delays",
|
|
3159
|
+
"Parallel operations exceeding limits",
|
|
3160
|
+
"Shared rate limit pool exhausted"
|
|
3161
|
+
],
|
|
3162
|
+
"diagnostic_steps": [
|
|
3163
|
+
{
|
|
3164
|
+
"step": 1,
|
|
3165
|
+
"action": "Check Retry-After header",
|
|
3166
|
+
"description": "Note the suggested wait time from response headers"
|
|
3167
|
+
},
|
|
3168
|
+
{
|
|
3169
|
+
"step": 2,
|
|
3170
|
+
"action": "Review request rate",
|
|
3171
|
+
"description": "Count requests made in recent time window"
|
|
3172
|
+
},
|
|
3173
|
+
{
|
|
3174
|
+
"step": 3,
|
|
3175
|
+
"action": "Implement backoff",
|
|
3176
|
+
"description": "Add exponential backoff between requests"
|
|
3177
|
+
}
|
|
3178
|
+
],
|
|
3179
|
+
"prevention": [
|
|
3180
|
+
"Implement exponential backoff",
|
|
3181
|
+
"Add delays between batch operations",
|
|
3182
|
+
"Use parallel request limits",
|
|
3183
|
+
"Cache responses where appropriate"
|
|
3184
|
+
],
|
|
3185
|
+
"related_errors": [
|
|
3186
|
+
503
|
|
3187
|
+
]
|
|
3188
|
+
},
|
|
3189
|
+
"500": {
|
|
3190
|
+
"code": 500,
|
|
3191
|
+
"name": "Internal Server Error",
|
|
3192
|
+
"description": "An unexpected server error occurred",
|
|
3193
|
+
"common_causes": [
|
|
3194
|
+
"Temporary service issue",
|
|
3195
|
+
"Bug in request handling",
|
|
3196
|
+
"Backend service failure",
|
|
3197
|
+
"Resource constraint"
|
|
3198
|
+
],
|
|
3199
|
+
"diagnostic_steps": [
|
|
3200
|
+
{
|
|
3201
|
+
"step": 1,
|
|
3202
|
+
"action": "Retry request",
|
|
3203
|
+
"description": "Wait a moment and retry the request"
|
|
3204
|
+
},
|
|
3205
|
+
{
|
|
3206
|
+
"step": 2,
|
|
3207
|
+
"action": "Check service status",
|
|
3208
|
+
"description": "Verify F5 XC service health status"
|
|
3209
|
+
},
|
|
3210
|
+
{
|
|
3211
|
+
"step": 3,
|
|
3212
|
+
"action": "Simplify request",
|
|
3213
|
+
"description": "Try with minimal configuration"
|
|
3214
|
+
},
|
|
3215
|
+
{
|
|
3216
|
+
"step": 4,
|
|
3217
|
+
"action": "Contact support",
|
|
3218
|
+
"description": "If persistent, open support ticket with request ID"
|
|
3219
|
+
}
|
|
3220
|
+
],
|
|
3221
|
+
"prevention": [
|
|
3222
|
+
"Implement retry logic",
|
|
3223
|
+
"Monitor service status pages",
|
|
3224
|
+
"Use health check endpoints"
|
|
3225
|
+
],
|
|
3226
|
+
"related_errors": [
|
|
3227
|
+
502,
|
|
3228
|
+
503
|
|
3229
|
+
]
|
|
3230
|
+
},
|
|
3231
|
+
"502": {
|
|
3232
|
+
"code": 502,
|
|
3233
|
+
"name": "Bad Gateway",
|
|
3234
|
+
"description": "Upstream service returned invalid response",
|
|
3235
|
+
"common_causes": [
|
|
3236
|
+
"Upstream service unavailable",
|
|
3237
|
+
"Network connectivity issues",
|
|
3238
|
+
"Timeout from backend services"
|
|
3239
|
+
],
|
|
3240
|
+
"diagnostic_steps": [
|
|
3241
|
+
{
|
|
3242
|
+
"step": 1,
|
|
3243
|
+
"action": "Retry request",
|
|
3244
|
+
"description": "Wait and retry the request"
|
|
3245
|
+
},
|
|
3246
|
+
{
|
|
3247
|
+
"step": 2,
|
|
3248
|
+
"action": "Check connectivity",
|
|
3249
|
+
"description": "Verify network connectivity to API endpoint"
|
|
3250
|
+
},
|
|
3251
|
+
{
|
|
3252
|
+
"step": 3,
|
|
3253
|
+
"action": "Check service status",
|
|
3254
|
+
"description": "Verify F5 XC service availability"
|
|
3255
|
+
}
|
|
3256
|
+
],
|
|
3257
|
+
"prevention": [
|
|
3258
|
+
"Implement retry logic with backoff",
|
|
3259
|
+
"Use multiple endpoints for redundancy"
|
|
3260
|
+
],
|
|
3261
|
+
"related_errors": [
|
|
3262
|
+
500,
|
|
3263
|
+
503
|
|
3264
|
+
]
|
|
3265
|
+
},
|
|
3266
|
+
"503": {
|
|
3267
|
+
"code": 503,
|
|
3268
|
+
"name": "Service Unavailable",
|
|
3269
|
+
"description": "Service is temporarily unavailable",
|
|
3270
|
+
"common_causes": [
|
|
3271
|
+
"Service maintenance",
|
|
3272
|
+
"Overload condition",
|
|
3273
|
+
"Deployment in progress",
|
|
3274
|
+
"Regional outage"
|
|
3275
|
+
],
|
|
3276
|
+
"diagnostic_steps": [
|
|
3277
|
+
{
|
|
3278
|
+
"step": 1,
|
|
3279
|
+
"action": "Check Retry-After header",
|
|
3280
|
+
"description": "Note suggested retry time if present"
|
|
3281
|
+
},
|
|
3282
|
+
{
|
|
3283
|
+
"step": 2,
|
|
3284
|
+
"action": "Wait and retry",
|
|
3285
|
+
"description": "Implement exponential backoff"
|
|
3286
|
+
},
|
|
3287
|
+
{
|
|
3288
|
+
"step": 3,
|
|
3289
|
+
"action": "Check status page",
|
|
3290
|
+
"description": "Verify service status for maintenance windows"
|
|
3291
|
+
}
|
|
3292
|
+
],
|
|
3293
|
+
"prevention": [
|
|
3294
|
+
"Implement circuit breaker pattern",
|
|
3295
|
+
"Subscribe to status page updates",
|
|
3296
|
+
"Build in retry logic with backoff"
|
|
3297
|
+
],
|
|
3298
|
+
"related_errors": [
|
|
3299
|
+
500,
|
|
3300
|
+
502
|
|
3301
|
+
]
|
|
3302
|
+
},
|
|
3303
|
+
"504": {
|
|
3304
|
+
"code": 504,
|
|
3305
|
+
"name": "Gateway Timeout",
|
|
3306
|
+
"description": "Request timed out waiting for response",
|
|
3307
|
+
"common_causes": [
|
|
3308
|
+
"Long-running operation",
|
|
3309
|
+
"Backend overloaded",
|
|
3310
|
+
"Network latency issues",
|
|
3311
|
+
"Large payload processing"
|
|
3312
|
+
],
|
|
3313
|
+
"diagnostic_steps": [
|
|
3314
|
+
{
|
|
3315
|
+
"step": 1,
|
|
3316
|
+
"action": "Reduce payload size",
|
|
3317
|
+
"description": "Try with smaller request payload"
|
|
3318
|
+
},
|
|
3319
|
+
{
|
|
3320
|
+
"step": 2,
|
|
3321
|
+
"action": "Check operation status",
|
|
3322
|
+
"description": "For async operations, check status separately"
|
|
3323
|
+
},
|
|
3324
|
+
{
|
|
3325
|
+
"step": 3,
|
|
3326
|
+
"action": "Retry with longer timeout",
|
|
3327
|
+
"description": "If client-controlled, increase timeout"
|
|
3328
|
+
}
|
|
3329
|
+
],
|
|
3330
|
+
"prevention": [
|
|
3331
|
+
"Use pagination for large requests",
|
|
3332
|
+
"Break large operations into smaller batches",
|
|
3333
|
+
"Use async operation patterns"
|
|
3334
|
+
],
|
|
3335
|
+
"related_errors": [
|
|
3336
|
+
408,
|
|
3337
|
+
503
|
|
3338
|
+
]
|
|
3339
|
+
}
|
|
3340
|
+
},
|
|
3341
|
+
"resource_errors": {
|
|
3342
|
+
"dns_zone": [
|
|
3343
|
+
{
|
|
3344
|
+
"error_code": 400,
|
|
3345
|
+
"pattern": "invalid record",
|
|
3346
|
+
"resolution": "Verify DNS record format matches record type requirements"
|
|
3347
|
+
},
|
|
3348
|
+
{
|
|
3349
|
+
"error_code": 409,
|
|
3350
|
+
"pattern": "zone exists",
|
|
3351
|
+
"resolution": "Use existing zone or delete before recreation"
|
|
3352
|
+
}
|
|
3353
|
+
],
|
|
3354
|
+
"http_loadbalancer": [
|
|
3355
|
+
{
|
|
3356
|
+
"error_code": 400,
|
|
3357
|
+
"pattern": "origin_pool.*not found",
|
|
3358
|
+
"resolution": "Create the referenced origin pool before creating the load balancer"
|
|
3359
|
+
},
|
|
3360
|
+
{
|
|
3361
|
+
"error_code": 400,
|
|
3362
|
+
"pattern": "certificate.*invalid",
|
|
3363
|
+
"resolution": "Verify certificate format and upload a valid certificate first"
|
|
3364
|
+
},
|
|
3365
|
+
{
|
|
3366
|
+
"error_code": 409,
|
|
3367
|
+
"pattern": "already exists",
|
|
3368
|
+
"resolution": "Use a unique name or delete the existing load balancer"
|
|
3369
|
+
}
|
|
3370
|
+
],
|
|
3371
|
+
"origin_pool": [
|
|
3372
|
+
{
|
|
3373
|
+
"error_code": 400,
|
|
3374
|
+
"pattern": "invalid port",
|
|
3375
|
+
"resolution": "Specify a valid port number between 1-65535"
|
|
3376
|
+
},
|
|
3377
|
+
{
|
|
3378
|
+
"error_code": 400,
|
|
3379
|
+
"pattern": "invalid.*address",
|
|
3380
|
+
"resolution": "Verify IP address format or DNS name resolution"
|
|
3381
|
+
}
|
|
3382
|
+
],
|
|
3383
|
+
"waf": [
|
|
3384
|
+
{
|
|
3385
|
+
"error_code": 400,
|
|
3386
|
+
"pattern": "invalid rule",
|
|
3387
|
+
"resolution": "Validate WAF rule syntax against rule specification"
|
|
3388
|
+
},
|
|
3389
|
+
{
|
|
3390
|
+
"error_code": 409,
|
|
3391
|
+
"pattern": "already attached",
|
|
3392
|
+
"resolution": "Detach existing WAF policy before attaching new one"
|
|
3393
|
+
}
|
|
3394
|
+
]
|
|
3395
|
+
}
|
|
3396
|
+
},
|
|
3397
|
+
"x-f5xc-guided-workflows": {
|
|
3398
|
+
"version": "1.0.0",
|
|
3399
|
+
"total_workflows": 7,
|
|
3400
|
+
"domains": [
|
|
3401
|
+
"virtual",
|
|
3402
|
+
"waf",
|
|
3403
|
+
"dns",
|
|
3404
|
+
"cdn",
|
|
3405
|
+
"origin_pool",
|
|
3406
|
+
"sites"
|
|
3407
|
+
],
|
|
3408
|
+
"workflows": [
|
|
3409
|
+
{
|
|
3410
|
+
"id": "enable_cdn_distribution",
|
|
3411
|
+
"name": "Enable CDN Distribution",
|
|
3412
|
+
"description": "Configure CDN for content delivery",
|
|
3413
|
+
"complexity": "medium",
|
|
3414
|
+
"estimated_steps": 5,
|
|
3415
|
+
"prerequisites": [
|
|
3416
|
+
"Existing origin server or load balancer",
|
|
3417
|
+
"Content cacheable via HTTP headers"
|
|
3418
|
+
],
|
|
3419
|
+
"steps": [
|
|
3420
|
+
{
|
|
3421
|
+
"order": 1,
|
|
3422
|
+
"action": "create_origin",
|
|
3423
|
+
"name": "Define Origin",
|
|
3424
|
+
"description": "Configure origin server for CDN",
|
|
3425
|
+
"resource": "cdn_origin",
|
|
3426
|
+
"required_fields": [
|
|
3427
|
+
"name",
|
|
3428
|
+
"origin_address"
|
|
3429
|
+
]
|
|
3430
|
+
},
|
|
3431
|
+
{
|
|
3432
|
+
"order": 2,
|
|
3433
|
+
"action": "configure_cache_rules",
|
|
3434
|
+
"name": "Configure Cache Rules",
|
|
3435
|
+
"description": "Define caching behavior per content type",
|
|
3436
|
+
"tips": [
|
|
3437
|
+
"Set longer TTL for static assets",
|
|
3438
|
+
"Use vary headers appropriately"
|
|
3439
|
+
]
|
|
3440
|
+
},
|
|
3441
|
+
{
|
|
3442
|
+
"order": 3,
|
|
3443
|
+
"action": "create_distribution",
|
|
3444
|
+
"name": "Create Distribution",
|
|
3445
|
+
"description": "Configure CDN distribution",
|
|
3446
|
+
"resource": "cdn_distribution",
|
|
3447
|
+
"depends_on": [
|
|
3448
|
+
1
|
|
3449
|
+
]
|
|
3450
|
+
},
|
|
3451
|
+
{
|
|
3452
|
+
"order": 4,
|
|
3453
|
+
"action": "configure_ssl",
|
|
3454
|
+
"name": "Configure SSL",
|
|
3455
|
+
"description": "Set up HTTPS for CDN endpoints",
|
|
3456
|
+
"optional": true
|
|
3457
|
+
},
|
|
3458
|
+
{
|
|
3459
|
+
"order": 5,
|
|
3460
|
+
"action": "verify_caching",
|
|
3461
|
+
"name": "Verify Caching",
|
|
3462
|
+
"description": "Test CDN cache behavior",
|
|
3463
|
+
"verification": [
|
|
3464
|
+
"Check X-Cache headers",
|
|
3465
|
+
"Verify content delivery from edge"
|
|
3466
|
+
]
|
|
3467
|
+
}
|
|
3468
|
+
],
|
|
3469
|
+
"domain": "cdn"
|
|
3470
|
+
},
|
|
3471
|
+
{
|
|
3472
|
+
"id": "configure_dns_zone",
|
|
3473
|
+
"name": "Configure DNS Zone",
|
|
3474
|
+
"description": "Set up authoritative DNS zone with records",
|
|
3475
|
+
"complexity": "low",
|
|
3476
|
+
"estimated_steps": 4,
|
|
3477
|
+
"prerequisites": [
|
|
3478
|
+
"Domain name ownership",
|
|
3479
|
+
"NS delegation configured at registrar"
|
|
3480
|
+
],
|
|
3481
|
+
"steps": [
|
|
3482
|
+
{
|
|
3483
|
+
"order": 1,
|
|
3484
|
+
"action": "create_dns_zone",
|
|
3485
|
+
"name": "Create DNS Zone",
|
|
3486
|
+
"description": "Create authoritative zone for domain",
|
|
3487
|
+
"resource": "dns_zone",
|
|
3488
|
+
"required_fields": [
|
|
3489
|
+
"name",
|
|
3490
|
+
"domain"
|
|
3491
|
+
]
|
|
3492
|
+
},
|
|
3493
|
+
{
|
|
3494
|
+
"order": 2,
|
|
3495
|
+
"action": "add_dns_records",
|
|
3496
|
+
"name": "Add DNS Records",
|
|
3497
|
+
"description": "Create A, CNAME, and other records",
|
|
3498
|
+
"resource": "dns_record",
|
|
3499
|
+
"depends_on": [
|
|
3500
|
+
1
|
|
3501
|
+
],
|
|
3502
|
+
"tips": [
|
|
3503
|
+
"Use appropriate TTL values",
|
|
3504
|
+
"Add MX records for email"
|
|
3505
|
+
]
|
|
3506
|
+
},
|
|
3507
|
+
{
|
|
3508
|
+
"order": 3,
|
|
3509
|
+
"action": "enable_dnssec",
|
|
3510
|
+
"name": "Enable DNSSEC",
|
|
3511
|
+
"description": "Configure DNS security extensions",
|
|
3512
|
+
"optional": true,
|
|
3513
|
+
"depends_on": [
|
|
3514
|
+
1
|
|
3515
|
+
]
|
|
3516
|
+
},
|
|
3517
|
+
{
|
|
3518
|
+
"order": 4,
|
|
3519
|
+
"action": "verify_resolution",
|
|
3520
|
+
"name": "Verify DNS Resolution",
|
|
3521
|
+
"description": "Test DNS queries",
|
|
3522
|
+
"verification": [
|
|
3523
|
+
"Query records from public DNS",
|
|
3524
|
+
"Verify propagation"
|
|
3525
|
+
]
|
|
3526
|
+
}
|
|
3527
|
+
],
|
|
3528
|
+
"domain": "dns"
|
|
3529
|
+
},
|
|
3530
|
+
{
|
|
3531
|
+
"id": "configure_origin_pool",
|
|
3532
|
+
"name": "Configure Origin Pool",
|
|
3533
|
+
"description": "Set up backend server pool with health checks",
|
|
3534
|
+
"complexity": "low",
|
|
3535
|
+
"estimated_steps": 3,
|
|
3536
|
+
"prerequisites": [
|
|
3537
|
+
"Backend server addresses",
|
|
3538
|
+
"Network connectivity to origins"
|
|
3539
|
+
],
|
|
3540
|
+
"steps": [
|
|
3541
|
+
{
|
|
3542
|
+
"order": 1,
|
|
3543
|
+
"action": "create_origin_pool",
|
|
3544
|
+
"name": "Create Origin Pool",
|
|
3545
|
+
"description": "Define backend servers",
|
|
3546
|
+
"resource": "origin_pool",
|
|
3547
|
+
"required_fields": [
|
|
3548
|
+
"name",
|
|
3549
|
+
"origin_servers",
|
|
3550
|
+
"port"
|
|
3551
|
+
]
|
|
3552
|
+
},
|
|
3553
|
+
{
|
|
3554
|
+
"order": 2,
|
|
3555
|
+
"action": "add_healthcheck",
|
|
3556
|
+
"name": "Add Health Check",
|
|
3557
|
+
"description": "Configure health monitoring",
|
|
3558
|
+
"resource": "healthcheck",
|
|
3559
|
+
"optional": true
|
|
3560
|
+
},
|
|
3561
|
+
{
|
|
3562
|
+
"order": 3,
|
|
3563
|
+
"action": "verify_connectivity",
|
|
3564
|
+
"name": "Verify Connectivity",
|
|
3565
|
+
"description": "Test origin pool health",
|
|
3566
|
+
"verification": [
|
|
3567
|
+
"All origins showing healthy",
|
|
3568
|
+
"Connection pooling working"
|
|
3569
|
+
]
|
|
3570
|
+
}
|
|
3571
|
+
],
|
|
3572
|
+
"domain": "origin_pool"
|
|
3573
|
+
},
|
|
3574
|
+
{
|
|
3575
|
+
"id": "register_site",
|
|
3576
|
+
"name": "Register Customer Edge Site",
|
|
3577
|
+
"description": "Register and configure a CE site",
|
|
3578
|
+
"complexity": "high",
|
|
3579
|
+
"estimated_steps": 6,
|
|
3580
|
+
"prerequisites": [
|
|
3581
|
+
"Site hardware or VM provisioned",
|
|
3582
|
+
"Network connectivity to F5 XC",
|
|
3583
|
+
"Registration token generated"
|
|
3584
|
+
],
|
|
3585
|
+
"steps": [
|
|
3586
|
+
{
|
|
3587
|
+
"order": 1,
|
|
3588
|
+
"action": "generate_token",
|
|
3589
|
+
"name": "Generate Registration Token",
|
|
3590
|
+
"description": "Create site registration token",
|
|
3591
|
+
"resource": "site_token"
|
|
3592
|
+
},
|
|
3593
|
+
{
|
|
3594
|
+
"order": 2,
|
|
3595
|
+
"action": "configure_site",
|
|
3596
|
+
"name": "Configure Site Settings",
|
|
3597
|
+
"description": "Define site parameters",
|
|
3598
|
+
"resource": "site",
|
|
3599
|
+
"required_fields": [
|
|
3600
|
+
"name",
|
|
3601
|
+
"site_type"
|
|
3602
|
+
]
|
|
3603
|
+
},
|
|
3604
|
+
{
|
|
3605
|
+
"order": 3,
|
|
3606
|
+
"action": "install_software",
|
|
3607
|
+
"name": "Install CE Software",
|
|
3608
|
+
"description": "Deploy F5 XC software on site",
|
|
3609
|
+
"depends_on": [
|
|
3610
|
+
1
|
|
3611
|
+
]
|
|
3612
|
+
},
|
|
3613
|
+
{
|
|
3614
|
+
"order": 4,
|
|
3615
|
+
"action": "complete_registration",
|
|
3616
|
+
"name": "Complete Registration",
|
|
3617
|
+
"description": "Finalize site registration",
|
|
3618
|
+
"depends_on": [
|
|
3619
|
+
2,
|
|
3620
|
+
3
|
|
3621
|
+
]
|
|
3622
|
+
},
|
|
3623
|
+
{
|
|
3624
|
+
"order": 5,
|
|
3625
|
+
"action": "configure_network",
|
|
3626
|
+
"name": "Configure Site Network",
|
|
3627
|
+
"description": "Set up site networking",
|
|
3628
|
+
"depends_on": [
|
|
3629
|
+
4
|
|
3630
|
+
]
|
|
3631
|
+
},
|
|
3632
|
+
{
|
|
3633
|
+
"order": 6,
|
|
3634
|
+
"action": "verify_site",
|
|
3635
|
+
"name": "Verify Site Status",
|
|
3636
|
+
"description": "Confirm site is operational",
|
|
3637
|
+
"verification": [
|
|
3638
|
+
"Site shows online status",
|
|
3639
|
+
"Tunnel connectivity established",
|
|
3640
|
+
"Services deployed successfully"
|
|
3641
|
+
]
|
|
3642
|
+
}
|
|
3643
|
+
],
|
|
3644
|
+
"domain": "sites"
|
|
3645
|
+
},
|
|
3646
|
+
{
|
|
3647
|
+
"id": "deploy_http_loadbalancer",
|
|
3648
|
+
"name": "Deploy HTTP Load Balancer",
|
|
3649
|
+
"description": "Create a fully configured HTTP load balancer with backend origin pool",
|
|
3650
|
+
"complexity": "medium",
|
|
3651
|
+
"estimated_steps": 5,
|
|
3652
|
+
"prerequisites": [
|
|
3653
|
+
"Valid namespace in target tenant",
|
|
3654
|
+
"Backend application reachable via IP or DNS",
|
|
3655
|
+
"SSL certificate (optional for HTTPS)"
|
|
3656
|
+
],
|
|
3657
|
+
"steps": [
|
|
3658
|
+
{
|
|
3659
|
+
"order": 1,
|
|
3660
|
+
"action": "create_origin_pool",
|
|
3661
|
+
"name": "Create Origin Pool",
|
|
3662
|
+
"description": "Define backend servers for the load balancer",
|
|
3663
|
+
"resource": "origin_pool",
|
|
3664
|
+
"required_fields": [
|
|
3665
|
+
"name",
|
|
3666
|
+
"origin_servers",
|
|
3667
|
+
"port"
|
|
3668
|
+
],
|
|
3669
|
+
"tips": [
|
|
3670
|
+
"Use private IPs for internal applications",
|
|
3671
|
+
"Configure health checks for high availability"
|
|
3672
|
+
]
|
|
3673
|
+
},
|
|
3674
|
+
{
|
|
3675
|
+
"order": 2,
|
|
3676
|
+
"action": "create_healthcheck",
|
|
3677
|
+
"name": "Configure Health Check",
|
|
3678
|
+
"description": "Set up health monitoring for origin pool",
|
|
3679
|
+
"resource": "healthcheck",
|
|
3680
|
+
"optional": true,
|
|
3681
|
+
"required_fields": [
|
|
3682
|
+
"name",
|
|
3683
|
+
"http_health_check"
|
|
3684
|
+
],
|
|
3685
|
+
"tips": [
|
|
3686
|
+
"Use application-specific health endpoints",
|
|
3687
|
+
"Set appropriate timeout values"
|
|
3688
|
+
]
|
|
3689
|
+
},
|
|
3690
|
+
{
|
|
3691
|
+
"order": 3,
|
|
3692
|
+
"action": "attach_healthcheck",
|
|
3693
|
+
"name": "Attach Health Check",
|
|
3694
|
+
"description": "Link health check to origin pool",
|
|
3695
|
+
"optional": true,
|
|
3696
|
+
"depends_on": [
|
|
3697
|
+
1,
|
|
3698
|
+
2
|
|
3699
|
+
]
|
|
3700
|
+
},
|
|
3701
|
+
{
|
|
3702
|
+
"order": 4,
|
|
3703
|
+
"action": "create_http_loadbalancer",
|
|
3704
|
+
"name": "Create HTTP Load Balancer",
|
|
3705
|
+
"description": "Configure the load balancer with origin pool",
|
|
3706
|
+
"resource": "http_loadbalancer",
|
|
3707
|
+
"depends_on": [
|
|
3708
|
+
1
|
|
3709
|
+
],
|
|
3710
|
+
"required_fields": [
|
|
3711
|
+
"name",
|
|
3712
|
+
"domains",
|
|
3713
|
+
"http.port"
|
|
3714
|
+
],
|
|
3715
|
+
"tips": [
|
|
3716
|
+
"Use wildcard domains for multi-host routing",
|
|
3717
|
+
"Configure advertise policy for internet exposure"
|
|
3718
|
+
]
|
|
3719
|
+
},
|
|
3720
|
+
{
|
|
3721
|
+
"order": 5,
|
|
3722
|
+
"action": "verify_deployment",
|
|
3723
|
+
"name": "Verify Deployment",
|
|
3724
|
+
"description": "Test load balancer endpoint accessibility",
|
|
3725
|
+
"depends_on": [
|
|
3726
|
+
4
|
|
3727
|
+
],
|
|
3728
|
+
"verification": [
|
|
3729
|
+
"DNS resolution for configured domains",
|
|
3730
|
+
"HTTP response from load balancer VIP",
|
|
3731
|
+
"Backend origin health status"
|
|
3732
|
+
]
|
|
3733
|
+
}
|
|
3734
|
+
],
|
|
3735
|
+
"domain": "virtual"
|
|
3736
|
+
},
|
|
3737
|
+
{
|
|
3738
|
+
"id": "deploy_https_loadbalancer",
|
|
3739
|
+
"name": "Deploy HTTPS Load Balancer with TLS",
|
|
3740
|
+
"description": "Create HTTPS load balancer with SSL/TLS termination",
|
|
3741
|
+
"complexity": "high",
|
|
3742
|
+
"estimated_steps": 7,
|
|
3743
|
+
"prerequisites": [
|
|
3744
|
+
"Valid namespace in target tenant",
|
|
3745
|
+
"SSL certificate and private key",
|
|
3746
|
+
"Backend application reachable"
|
|
3747
|
+
],
|
|
3748
|
+
"steps": [
|
|
3749
|
+
{
|
|
3750
|
+
"order": 1,
|
|
3751
|
+
"action": "upload_certificate",
|
|
3752
|
+
"name": "Upload SSL Certificate",
|
|
3753
|
+
"description": "Upload certificate and private key",
|
|
3754
|
+
"resource": "certificate",
|
|
3755
|
+
"required_fields": [
|
|
3756
|
+
"name",
|
|
3757
|
+
"certificate_chain",
|
|
3758
|
+
"private_key"
|
|
3759
|
+
],
|
|
3760
|
+
"tips": [
|
|
3761
|
+
"Include intermediate certificates in chain",
|
|
3762
|
+
"Use PEM format for certificate data"
|
|
3763
|
+
]
|
|
3764
|
+
},
|
|
3765
|
+
{
|
|
3766
|
+
"order": 2,
|
|
3767
|
+
"action": "create_origin_pool",
|
|
3768
|
+
"name": "Create Origin Pool",
|
|
3769
|
+
"description": "Define backend servers",
|
|
3770
|
+
"resource": "origin_pool",
|
|
3771
|
+
"required_fields": [
|
|
3772
|
+
"name",
|
|
3773
|
+
"origin_servers"
|
|
3774
|
+
]
|
|
3775
|
+
},
|
|
3776
|
+
{
|
|
3777
|
+
"order": 3,
|
|
3778
|
+
"action": "create_healthcheck",
|
|
3779
|
+
"name": "Configure Health Check",
|
|
3780
|
+
"description": "Set up health monitoring",
|
|
3781
|
+
"resource": "healthcheck",
|
|
3782
|
+
"optional": true
|
|
3783
|
+
},
|
|
3784
|
+
{
|
|
3785
|
+
"order": 4,
|
|
3786
|
+
"action": "create_waf_policy",
|
|
3787
|
+
"name": "Configure WAF Policy",
|
|
3788
|
+
"description": "Enable web application firewall",
|
|
3789
|
+
"resource": "app_firewall",
|
|
3790
|
+
"optional": true,
|
|
3791
|
+
"tips": [
|
|
3792
|
+
"Start in monitoring mode",
|
|
3793
|
+
"Use appropriate rule sets"
|
|
3794
|
+
]
|
|
3795
|
+
},
|
|
3796
|
+
{
|
|
3797
|
+
"order": 5,
|
|
3798
|
+
"action": "create_https_loadbalancer",
|
|
3799
|
+
"name": "Create HTTPS Load Balancer",
|
|
3800
|
+
"description": "Configure load balancer with TLS",
|
|
3801
|
+
"resource": "http_loadbalancer",
|
|
3802
|
+
"depends_on": [
|
|
3803
|
+
1,
|
|
3804
|
+
2
|
|
3805
|
+
],
|
|
3806
|
+
"required_fields": [
|
|
3807
|
+
"name",
|
|
3808
|
+
"domains",
|
|
3809
|
+
"https.tls_parameters"
|
|
3810
|
+
]
|
|
3811
|
+
},
|
|
3812
|
+
{
|
|
3813
|
+
"order": 6,
|
|
3814
|
+
"action": "attach_waf",
|
|
3815
|
+
"name": "Attach WAF Policy",
|
|
3816
|
+
"description": "Link WAF to load balancer",
|
|
3817
|
+
"optional": true,
|
|
3818
|
+
"depends_on": [
|
|
3819
|
+
4,
|
|
3820
|
+
5
|
|
3821
|
+
]
|
|
3822
|
+
},
|
|
3823
|
+
{
|
|
3824
|
+
"order": 7,
|
|
3825
|
+
"action": "verify_https",
|
|
3826
|
+
"name": "Verify HTTPS Deployment",
|
|
3827
|
+
"description": "Test secure endpoint",
|
|
3828
|
+
"verification": [
|
|
3829
|
+
"TLS certificate validation",
|
|
3830
|
+
"HTTPS response codes",
|
|
3831
|
+
"WAF policy application"
|
|
3832
|
+
]
|
|
3833
|
+
}
|
|
3834
|
+
],
|
|
3835
|
+
"domain": "virtual"
|
|
3836
|
+
},
|
|
3837
|
+
{
|
|
3838
|
+
"id": "enable_waf_protection",
|
|
3839
|
+
"name": "Enable WAF Protection",
|
|
3840
|
+
"description": "Add web application firewall to existing load balancer",
|
|
3841
|
+
"complexity": "medium",
|
|
3842
|
+
"estimated_steps": 4,
|
|
3843
|
+
"prerequisites": [
|
|
3844
|
+
"Existing HTTP load balancer",
|
|
3845
|
+
"Understanding of application traffic patterns"
|
|
3846
|
+
],
|
|
3847
|
+
"steps": [
|
|
3848
|
+
{
|
|
3849
|
+
"order": 1,
|
|
3850
|
+
"action": "create_app_firewall",
|
|
3851
|
+
"name": "Create Application Firewall",
|
|
3852
|
+
"description": "Define WAF policy with rule sets",
|
|
3853
|
+
"resource": "app_firewall",
|
|
3854
|
+
"required_fields": [
|
|
3855
|
+
"name",
|
|
3856
|
+
"blocking"
|
|
3857
|
+
],
|
|
3858
|
+
"tips": [
|
|
3859
|
+
"Start in monitoring mode for tuning",
|
|
3860
|
+
"Select rules based on application stack"
|
|
3861
|
+
]
|
|
3862
|
+
},
|
|
3863
|
+
{
|
|
3864
|
+
"order": 2,
|
|
3865
|
+
"action": "configure_exclusions",
|
|
3866
|
+
"name": "Configure Exclusions",
|
|
3867
|
+
"description": "Add bypass rules for false positives",
|
|
3868
|
+
"optional": true,
|
|
3869
|
+
"tips": [
|
|
3870
|
+
"Exclude trusted internal IPs",
|
|
3871
|
+
"Add API endpoint exclusions if needed"
|
|
3872
|
+
]
|
|
3873
|
+
},
|
|
3874
|
+
{
|
|
3875
|
+
"order": 3,
|
|
3876
|
+
"action": "attach_to_loadbalancer",
|
|
3877
|
+
"name": "Attach to Load Balancer",
|
|
3878
|
+
"description": "Apply WAF policy to load balancer",
|
|
3879
|
+
"depends_on": [
|
|
3880
|
+
1
|
|
3881
|
+
]
|
|
3882
|
+
},
|
|
3883
|
+
{
|
|
3884
|
+
"order": 4,
|
|
3885
|
+
"action": "monitor_and_tune",
|
|
3886
|
+
"name": "Monitor and Tune",
|
|
3887
|
+
"description": "Review WAF logs and adjust rules",
|
|
3888
|
+
"verification": [
|
|
3889
|
+
"Check security event logs",
|
|
3890
|
+
"Verify no legitimate traffic blocked",
|
|
3891
|
+
"Adjust rules as needed"
|
|
3892
|
+
]
|
|
3893
|
+
}
|
|
3894
|
+
],
|
|
3895
|
+
"domain": "waf"
|
|
3896
|
+
}
|
|
3897
|
+
]
|
|
3898
|
+
},
|
|
3899
|
+
"x-f5xc-acronyms": {
|
|
3900
|
+
"version": "1.0.0",
|
|
3901
|
+
"categories": [
|
|
3902
|
+
"Networking",
|
|
3903
|
+
"Security",
|
|
3904
|
+
"Load Balancing",
|
|
3905
|
+
"Cloud & Infrastructure",
|
|
3906
|
+
"F5 Specific",
|
|
3907
|
+
"Standards & Formats",
|
|
3908
|
+
"Protocols",
|
|
3909
|
+
"Other"
|
|
3910
|
+
],
|
|
3911
|
+
"acronyms": [
|
|
3912
|
+
{
|
|
3913
|
+
"acronym": "TCP",
|
|
3914
|
+
"expansion": "Transmission Control Protocol",
|
|
3915
|
+
"category": "Networking"
|
|
3916
|
+
},
|
|
3917
|
+
{
|
|
3918
|
+
"acronym": "UDP",
|
|
3919
|
+
"expansion": "User Datagram Protocol",
|
|
3920
|
+
"category": "Networking"
|
|
3921
|
+
},
|
|
3922
|
+
{
|
|
3923
|
+
"acronym": "HTTP",
|
|
3924
|
+
"expansion": "Hypertext Transfer Protocol",
|
|
3925
|
+
"category": "Networking"
|
|
3926
|
+
},
|
|
3927
|
+
{
|
|
3928
|
+
"acronym": "HTTPS",
|
|
3929
|
+
"expansion": "Hypertext Transfer Protocol Secure",
|
|
3930
|
+
"category": "Networking"
|
|
3931
|
+
},
|
|
3932
|
+
{
|
|
3933
|
+
"acronym": "DNS",
|
|
3934
|
+
"expansion": "Domain Name System",
|
|
3935
|
+
"category": "Networking"
|
|
3936
|
+
},
|
|
3937
|
+
{
|
|
3938
|
+
"acronym": "IP",
|
|
3939
|
+
"expansion": "Internet Protocol",
|
|
3940
|
+
"category": "Networking"
|
|
3941
|
+
},
|
|
3942
|
+
{
|
|
3943
|
+
"acronym": "IPv4",
|
|
3944
|
+
"expansion": "Internet Protocol version 4",
|
|
3945
|
+
"category": "Networking"
|
|
3946
|
+
},
|
|
3947
|
+
{
|
|
3948
|
+
"acronym": "IPv6",
|
|
3949
|
+
"expansion": "Internet Protocol version 6",
|
|
3950
|
+
"category": "Networking"
|
|
3951
|
+
},
|
|
3952
|
+
{
|
|
3953
|
+
"acronym": "BGP",
|
|
3954
|
+
"expansion": "Border Gateway Protocol",
|
|
3955
|
+
"category": "Networking"
|
|
3956
|
+
},
|
|
3957
|
+
{
|
|
3958
|
+
"acronym": "OSPF",
|
|
3959
|
+
"expansion": "Open Shortest Path First",
|
|
3960
|
+
"category": "Networking"
|
|
3961
|
+
},
|
|
3962
|
+
{
|
|
3963
|
+
"acronym": "VLAN",
|
|
3964
|
+
"expansion": "Virtual Local Area Network",
|
|
3965
|
+
"category": "Networking"
|
|
3966
|
+
},
|
|
3967
|
+
{
|
|
3968
|
+
"acronym": "VPN",
|
|
3969
|
+
"expansion": "Virtual Private Network",
|
|
3970
|
+
"category": "Networking"
|
|
3971
|
+
},
|
|
3972
|
+
{
|
|
3973
|
+
"acronym": "CIDR",
|
|
3974
|
+
"expansion": "Classless Inter-Domain Routing",
|
|
3975
|
+
"category": "Networking"
|
|
3976
|
+
},
|
|
3977
|
+
{
|
|
3978
|
+
"acronym": "NAT",
|
|
3979
|
+
"expansion": "Network Address Translation",
|
|
3980
|
+
"category": "Networking"
|
|
3981
|
+
},
|
|
3982
|
+
{
|
|
3983
|
+
"acronym": "SNAT",
|
|
3984
|
+
"expansion": "Source Network Address Translation",
|
|
3985
|
+
"category": "Networking"
|
|
3986
|
+
},
|
|
3987
|
+
{
|
|
3988
|
+
"acronym": "DNAT",
|
|
3989
|
+
"expansion": "Destination Network Address Translation",
|
|
3990
|
+
"category": "Networking"
|
|
3991
|
+
},
|
|
3992
|
+
{
|
|
3993
|
+
"acronym": "MAC",
|
|
3994
|
+
"expansion": "Media Access Control",
|
|
3995
|
+
"category": "Networking"
|
|
3996
|
+
},
|
|
3997
|
+
{
|
|
3998
|
+
"acronym": "ARP",
|
|
3999
|
+
"expansion": "Address Resolution Protocol",
|
|
4000
|
+
"category": "Networking"
|
|
4001
|
+
},
|
|
4002
|
+
{
|
|
4003
|
+
"acronym": "NIC",
|
|
4004
|
+
"expansion": "Network Interface Card",
|
|
4005
|
+
"category": "Networking"
|
|
4006
|
+
},
|
|
4007
|
+
{
|
|
4008
|
+
"acronym": "MTU",
|
|
4009
|
+
"expansion": "Maximum Transmission Unit",
|
|
4010
|
+
"category": "Networking"
|
|
4011
|
+
},
|
|
4012
|
+
{
|
|
4013
|
+
"acronym": "QoS",
|
|
4014
|
+
"expansion": "Quality of Service",
|
|
4015
|
+
"category": "Networking"
|
|
4016
|
+
},
|
|
4017
|
+
{
|
|
4018
|
+
"acronym": "MPLS",
|
|
4019
|
+
"expansion": "Multiprotocol Label Switching",
|
|
4020
|
+
"category": "Networking"
|
|
4021
|
+
},
|
|
4022
|
+
{
|
|
4023
|
+
"acronym": "GRE",
|
|
4024
|
+
"expansion": "Generic Routing Encapsulation",
|
|
4025
|
+
"category": "Networking"
|
|
4026
|
+
},
|
|
4027
|
+
{
|
|
4028
|
+
"acronym": "VXLAN",
|
|
4029
|
+
"expansion": "Virtual Extensible LAN",
|
|
4030
|
+
"category": "Networking"
|
|
4031
|
+
},
|
|
4032
|
+
{
|
|
4033
|
+
"acronym": "IPsec",
|
|
4034
|
+
"expansion": "Internet Protocol Security",
|
|
4035
|
+
"category": "Networking"
|
|
4036
|
+
},
|
|
4037
|
+
{
|
|
4038
|
+
"acronym": "SSL",
|
|
4039
|
+
"expansion": "Secure Sockets Layer",
|
|
4040
|
+
"category": "Networking"
|
|
4041
|
+
},
|
|
4042
|
+
{
|
|
4043
|
+
"acronym": "TLS",
|
|
4044
|
+
"expansion": "Transport Layer Security",
|
|
4045
|
+
"category": "Networking"
|
|
4046
|
+
},
|
|
4047
|
+
{
|
|
4048
|
+
"acronym": "SNI",
|
|
4049
|
+
"expansion": "Server Name Indication",
|
|
4050
|
+
"category": "Networking"
|
|
4051
|
+
},
|
|
4052
|
+
{
|
|
4053
|
+
"acronym": "mTLS",
|
|
4054
|
+
"expansion": "Mutual Transport Layer Security",
|
|
4055
|
+
"category": "Networking"
|
|
4056
|
+
},
|
|
4057
|
+
{
|
|
4058
|
+
"acronym": "FQDN",
|
|
4059
|
+
"expansion": "Fully Qualified Domain Name",
|
|
4060
|
+
"category": "Networking"
|
|
4061
|
+
},
|
|
4062
|
+
{
|
|
4063
|
+
"acronym": "VIP",
|
|
4064
|
+
"expansion": "Virtual IP Address",
|
|
4065
|
+
"category": "Networking"
|
|
4066
|
+
},
|
|
4067
|
+
{
|
|
4068
|
+
"acronym": "ASN",
|
|
4069
|
+
"expansion": "Autonomous System Number",
|
|
4070
|
+
"category": "Networking"
|
|
4071
|
+
},
|
|
4072
|
+
{
|
|
4073
|
+
"acronym": "WAF",
|
|
4074
|
+
"expansion": "Web Application Firewall",
|
|
4075
|
+
"category": "Security"
|
|
4076
|
+
},
|
|
4077
|
+
{
|
|
4078
|
+
"acronym": "DDoS",
|
|
4079
|
+
"expansion": "Distributed Denial of Service",
|
|
4080
|
+
"category": "Security"
|
|
4081
|
+
},
|
|
4082
|
+
{
|
|
4083
|
+
"acronym": "XSS",
|
|
4084
|
+
"expansion": "Cross-Site Scripting",
|
|
4085
|
+
"category": "Security"
|
|
4086
|
+
},
|
|
4087
|
+
{
|
|
4088
|
+
"acronym": "CSRF",
|
|
4089
|
+
"expansion": "Cross-Site Request Forgery",
|
|
4090
|
+
"category": "Security"
|
|
4091
|
+
},
|
|
4092
|
+
{
|
|
4093
|
+
"acronym": "SQLi",
|
|
4094
|
+
"expansion": "SQL Injection",
|
|
4095
|
+
"category": "Security"
|
|
4096
|
+
},
|
|
4097
|
+
{
|
|
4098
|
+
"acronym": "OWASP",
|
|
4099
|
+
"expansion": "Open Web Application Security Project",
|
|
4100
|
+
"category": "Security"
|
|
4101
|
+
},
|
|
4102
|
+
{
|
|
4103
|
+
"acronym": "CVE",
|
|
4104
|
+
"expansion": "Common Vulnerabilities and Exposures",
|
|
4105
|
+
"category": "Security"
|
|
4106
|
+
},
|
|
4107
|
+
{
|
|
4108
|
+
"acronym": "JWT",
|
|
4109
|
+
"expansion": "JSON Web Token",
|
|
4110
|
+
"category": "Security"
|
|
4111
|
+
},
|
|
4112
|
+
{
|
|
4113
|
+
"acronym": "OAuth",
|
|
4114
|
+
"expansion": "Open Authorization",
|
|
4115
|
+
"category": "Security"
|
|
4116
|
+
},
|
|
4117
|
+
{
|
|
4118
|
+
"acronym": "OIDC",
|
|
4119
|
+
"expansion": "OpenID Connect",
|
|
4120
|
+
"category": "Security"
|
|
4121
|
+
},
|
|
4122
|
+
{
|
|
4123
|
+
"acronym": "SAML",
|
|
4124
|
+
"expansion": "Security Assertion Markup Language",
|
|
4125
|
+
"category": "Security"
|
|
4126
|
+
},
|
|
4127
|
+
{
|
|
4128
|
+
"acronym": "LDAP",
|
|
4129
|
+
"expansion": "Lightweight Directory Access Protocol",
|
|
4130
|
+
"category": "Security"
|
|
4131
|
+
},
|
|
4132
|
+
{
|
|
4133
|
+
"acronym": "AD",
|
|
4134
|
+
"expansion": "Active Directory",
|
|
4135
|
+
"category": "Security"
|
|
4136
|
+
},
|
|
4137
|
+
{
|
|
4138
|
+
"acronym": "ACL",
|
|
4139
|
+
"expansion": "Access Control List",
|
|
4140
|
+
"category": "Security"
|
|
4141
|
+
},
|
|
4142
|
+
{
|
|
4143
|
+
"acronym": "RBAC",
|
|
4144
|
+
"expansion": "Role-Based Access Control",
|
|
4145
|
+
"category": "Security"
|
|
4146
|
+
},
|
|
4147
|
+
{
|
|
4148
|
+
"acronym": "MFA",
|
|
4149
|
+
"expansion": "Multi-Factor Authentication",
|
|
4150
|
+
"category": "Security"
|
|
4151
|
+
},
|
|
4152
|
+
{
|
|
4153
|
+
"acronym": "SSO",
|
|
4154
|
+
"expansion": "Single Sign-On",
|
|
4155
|
+
"category": "Security"
|
|
4156
|
+
},
|
|
4157
|
+
{
|
|
4158
|
+
"acronym": "PKI",
|
|
4159
|
+
"expansion": "Public Key Infrastructure",
|
|
4160
|
+
"category": "Security"
|
|
4161
|
+
},
|
|
4162
|
+
{
|
|
4163
|
+
"acronym": "CA",
|
|
4164
|
+
"expansion": "Certificate Authority",
|
|
4165
|
+
"category": "Security"
|
|
4166
|
+
},
|
|
4167
|
+
{
|
|
4168
|
+
"acronym": "CRL",
|
|
4169
|
+
"expansion": "Certificate Revocation List",
|
|
4170
|
+
"category": "Security"
|
|
4171
|
+
},
|
|
4172
|
+
{
|
|
4173
|
+
"acronym": "LB",
|
|
4174
|
+
"expansion": "Load Balancer",
|
|
4175
|
+
"category": "Load Balancing"
|
|
4176
|
+
},
|
|
4177
|
+
{
|
|
4178
|
+
"acronym": "SLB",
|
|
4179
|
+
"expansion": "Server Load Balancer",
|
|
4180
|
+
"category": "Load Balancing"
|
|
4181
|
+
},
|
|
4182
|
+
{
|
|
4183
|
+
"acronym": "GLB",
|
|
4184
|
+
"expansion": "Global Load Balancer",
|
|
4185
|
+
"category": "Load Balancing"
|
|
4186
|
+
},
|
|
4187
|
+
{
|
|
4188
|
+
"acronym": "GSLB",
|
|
4189
|
+
"expansion": "Global Server Load Balancing",
|
|
4190
|
+
"category": "Load Balancing"
|
|
4191
|
+
},
|
|
4192
|
+
{
|
|
4193
|
+
"acronym": "ADC",
|
|
4194
|
+
"expansion": "Application Delivery Controller",
|
|
4195
|
+
"category": "Load Balancing"
|
|
4196
|
+
},
|
|
4197
|
+
{
|
|
4198
|
+
"acronym": "NLB",
|
|
4199
|
+
"expansion": "Network Load Balancer",
|
|
4200
|
+
"category": "Load Balancing"
|
|
4201
|
+
},
|
|
4202
|
+
{
|
|
4203
|
+
"acronym": "ALB",
|
|
4204
|
+
"expansion": "Application Load Balancer",
|
|
4205
|
+
"category": "Load Balancing"
|
|
4206
|
+
},
|
|
4207
|
+
{
|
|
4208
|
+
"acronym": "ELB",
|
|
4209
|
+
"expansion": "Elastic Load Balancer",
|
|
4210
|
+
"category": "Load Balancing"
|
|
4211
|
+
},
|
|
4212
|
+
{
|
|
4213
|
+
"acronym": "AWS",
|
|
4214
|
+
"expansion": "Amazon Web Services",
|
|
4215
|
+
"category": "Cloud & Infrastructure"
|
|
4216
|
+
},
|
|
4217
|
+
{
|
|
4218
|
+
"acronym": "GCP",
|
|
4219
|
+
"expansion": "Google Cloud Platform",
|
|
4220
|
+
"category": "Cloud & Infrastructure"
|
|
4221
|
+
},
|
|
4222
|
+
{
|
|
4223
|
+
"acronym": "Azure",
|
|
4224
|
+
"expansion": "Microsoft Azure",
|
|
4225
|
+
"category": "Cloud & Infrastructure"
|
|
4226
|
+
},
|
|
4227
|
+
{
|
|
4228
|
+
"acronym": "VPC",
|
|
4229
|
+
"expansion": "Virtual Private Cloud",
|
|
4230
|
+
"category": "Cloud & Infrastructure"
|
|
4231
|
+
},
|
|
4232
|
+
{
|
|
4233
|
+
"acronym": "VNet",
|
|
4234
|
+
"expansion": "Virtual Network",
|
|
4235
|
+
"category": "Cloud & Infrastructure"
|
|
4236
|
+
},
|
|
4237
|
+
{
|
|
4238
|
+
"acronym": "EC2",
|
|
4239
|
+
"expansion": "Elastic Compute Cloud",
|
|
4240
|
+
"category": "Cloud & Infrastructure"
|
|
4241
|
+
},
|
|
4242
|
+
{
|
|
4243
|
+
"acronym": "EKS",
|
|
4244
|
+
"expansion": "Elastic Kubernetes Service",
|
|
4245
|
+
"category": "Cloud & Infrastructure"
|
|
4246
|
+
},
|
|
4247
|
+
{
|
|
4248
|
+
"acronym": "AKS",
|
|
4249
|
+
"expansion": "Azure Kubernetes Service",
|
|
4250
|
+
"category": "Cloud & Infrastructure"
|
|
4251
|
+
},
|
|
4252
|
+
{
|
|
4253
|
+
"acronym": "GKE",
|
|
4254
|
+
"expansion": "Google Kubernetes Engine",
|
|
4255
|
+
"category": "Cloud & Infrastructure"
|
|
4256
|
+
},
|
|
4257
|
+
{
|
|
4258
|
+
"acronym": "VM",
|
|
4259
|
+
"expansion": "Virtual Machine",
|
|
4260
|
+
"category": "Cloud & Infrastructure"
|
|
4261
|
+
},
|
|
4262
|
+
{
|
|
4263
|
+
"acronym": "K8s",
|
|
4264
|
+
"expansion": "Kubernetes",
|
|
4265
|
+
"category": "Cloud & Infrastructure"
|
|
4266
|
+
},
|
|
4267
|
+
{
|
|
4268
|
+
"acronym": "API",
|
|
4269
|
+
"expansion": "Application Programming Interface",
|
|
4270
|
+
"category": "Cloud & Infrastructure"
|
|
4271
|
+
},
|
|
4272
|
+
{
|
|
4273
|
+
"acronym": "REST",
|
|
4274
|
+
"expansion": "Representational State Transfer",
|
|
4275
|
+
"category": "Cloud & Infrastructure"
|
|
4276
|
+
},
|
|
4277
|
+
{
|
|
4278
|
+
"acronym": "gRPC",
|
|
4279
|
+
"expansion": "gRPC Remote Procedure Call",
|
|
4280
|
+
"category": "Cloud & Infrastructure"
|
|
4281
|
+
},
|
|
4282
|
+
{
|
|
4283
|
+
"acronym": "SDK",
|
|
4284
|
+
"expansion": "Software Development Kit",
|
|
4285
|
+
"category": "Cloud & Infrastructure"
|
|
4286
|
+
},
|
|
4287
|
+
{
|
|
4288
|
+
"acronym": "CLI",
|
|
4289
|
+
"expansion": "Command Line Interface",
|
|
4290
|
+
"category": "Cloud & Infrastructure"
|
|
4291
|
+
},
|
|
4292
|
+
{
|
|
4293
|
+
"acronym": "CDN",
|
|
4294
|
+
"expansion": "Content Delivery Network",
|
|
4295
|
+
"category": "Cloud & Infrastructure"
|
|
4296
|
+
},
|
|
4297
|
+
{
|
|
4298
|
+
"acronym": "SaaS",
|
|
4299
|
+
"expansion": "Software as a Service",
|
|
4300
|
+
"category": "Cloud & Infrastructure"
|
|
4301
|
+
},
|
|
4302
|
+
{
|
|
4303
|
+
"acronym": "PaaS",
|
|
4304
|
+
"expansion": "Platform as a Service",
|
|
4305
|
+
"category": "Cloud & Infrastructure"
|
|
4306
|
+
},
|
|
4307
|
+
{
|
|
4308
|
+
"acronym": "IaaS",
|
|
4309
|
+
"expansion": "Infrastructure as a Service",
|
|
4310
|
+
"category": "Cloud & Infrastructure"
|
|
4311
|
+
},
|
|
4312
|
+
{
|
|
4313
|
+
"acronym": "CRD",
|
|
4314
|
+
"expansion": "Custom Resource Definition",
|
|
4315
|
+
"category": "Cloud & Infrastructure"
|
|
4316
|
+
},
|
|
4317
|
+
{
|
|
4318
|
+
"acronym": "XC",
|
|
4319
|
+
"expansion": "Distributed Cloud",
|
|
4320
|
+
"category": "F5 Specific"
|
|
4321
|
+
},
|
|
4322
|
+
{
|
|
4323
|
+
"acronym": "F5",
|
|
4324
|
+
"expansion": "F5 Networks",
|
|
4325
|
+
"category": "F5 Specific"
|
|
4326
|
+
},
|
|
4327
|
+
{
|
|
4328
|
+
"acronym": "BIG-IP",
|
|
4329
|
+
"expansion": "BIG-IP Application Delivery Controller",
|
|
4330
|
+
"category": "F5 Specific"
|
|
4331
|
+
},
|
|
4332
|
+
{
|
|
4333
|
+
"acronym": "NGINX",
|
|
4334
|
+
"expansion": "NGINX Web Server",
|
|
4335
|
+
"category": "F5 Specific"
|
|
4336
|
+
},
|
|
4337
|
+
{
|
|
4338
|
+
"acronym": "RE",
|
|
4339
|
+
"expansion": "Regional Edge",
|
|
4340
|
+
"category": "F5 Specific"
|
|
4341
|
+
},
|
|
4342
|
+
{
|
|
4343
|
+
"acronym": "CE",
|
|
4344
|
+
"expansion": "Customer Edge",
|
|
4345
|
+
"category": "F5 Specific"
|
|
4346
|
+
},
|
|
4347
|
+
{
|
|
4348
|
+
"acronym": "POP",
|
|
4349
|
+
"expansion": "Point of Presence",
|
|
4350
|
+
"category": "F5 Specific"
|
|
4351
|
+
},
|
|
4352
|
+
{
|
|
4353
|
+
"acronym": "VES",
|
|
4354
|
+
"expansion": "Volterra Edge Services",
|
|
4355
|
+
"category": "F5 Specific"
|
|
4356
|
+
},
|
|
4357
|
+
{
|
|
4358
|
+
"acronym": "JSON",
|
|
4359
|
+
"expansion": "JavaScript Object Notation",
|
|
4360
|
+
"category": "Standards & Formats"
|
|
4361
|
+
},
|
|
4362
|
+
{
|
|
4363
|
+
"acronym": "XML",
|
|
4364
|
+
"expansion": "Extensible Markup Language",
|
|
4365
|
+
"category": "Standards & Formats"
|
|
4366
|
+
},
|
|
4367
|
+
{
|
|
4368
|
+
"acronym": "YAML",
|
|
4369
|
+
"expansion": "YAML Ain't Markup Language",
|
|
4370
|
+
"category": "Standards & Formats"
|
|
4371
|
+
},
|
|
4372
|
+
{
|
|
4373
|
+
"acronym": "CSV",
|
|
4374
|
+
"expansion": "Comma-Separated Values",
|
|
4375
|
+
"category": "Standards & Formats"
|
|
4376
|
+
},
|
|
4377
|
+
{
|
|
4378
|
+
"acronym": "HTML",
|
|
4379
|
+
"expansion": "Hypertext Markup Language",
|
|
4380
|
+
"category": "Standards & Formats"
|
|
4381
|
+
},
|
|
4382
|
+
{
|
|
4383
|
+
"acronym": "CSS",
|
|
4384
|
+
"expansion": "Cascading Style Sheets",
|
|
4385
|
+
"category": "Standards & Formats"
|
|
4386
|
+
},
|
|
4387
|
+
{
|
|
4388
|
+
"acronym": "URL",
|
|
4389
|
+
"expansion": "Uniform Resource Locator",
|
|
4390
|
+
"category": "Standards & Formats"
|
|
4391
|
+
},
|
|
4392
|
+
{
|
|
4393
|
+
"acronym": "URI",
|
|
4394
|
+
"expansion": "Uniform Resource Identifier",
|
|
4395
|
+
"category": "Standards & Formats"
|
|
4396
|
+
},
|
|
4397
|
+
{
|
|
4398
|
+
"acronym": "UUID",
|
|
4399
|
+
"expansion": "Universally Unique Identifier",
|
|
4400
|
+
"category": "Standards & Formats"
|
|
4401
|
+
},
|
|
4402
|
+
{
|
|
4403
|
+
"acronym": "RFC",
|
|
4404
|
+
"expansion": "Request for Comments",
|
|
4405
|
+
"category": "Standards & Formats"
|
|
4406
|
+
},
|
|
4407
|
+
{
|
|
4408
|
+
"acronym": "ISO",
|
|
4409
|
+
"expansion": "International Organization for Standardization",
|
|
4410
|
+
"category": "Standards & Formats"
|
|
4411
|
+
},
|
|
4412
|
+
{
|
|
4413
|
+
"acronym": "UTC",
|
|
4414
|
+
"expansion": "Coordinated Universal Time",
|
|
4415
|
+
"category": "Standards & Formats"
|
|
4416
|
+
},
|
|
4417
|
+
{
|
|
4418
|
+
"acronym": "TTL",
|
|
4419
|
+
"expansion": "Time to Live",
|
|
4420
|
+
"category": "Standards & Formats"
|
|
4421
|
+
},
|
|
4422
|
+
{
|
|
4423
|
+
"acronym": "SMTP",
|
|
4424
|
+
"expansion": "Simple Mail Transfer Protocol",
|
|
4425
|
+
"category": "Protocols"
|
|
4426
|
+
},
|
|
4427
|
+
{
|
|
4428
|
+
"acronym": "IMAP",
|
|
4429
|
+
"expansion": "Internet Message Access Protocol",
|
|
4430
|
+
"category": "Protocols"
|
|
4431
|
+
},
|
|
4432
|
+
{
|
|
4433
|
+
"acronym": "POP3",
|
|
4434
|
+
"expansion": "Post Office Protocol version 3",
|
|
4435
|
+
"category": "Protocols"
|
|
4436
|
+
},
|
|
4437
|
+
{
|
|
4438
|
+
"acronym": "FTP",
|
|
4439
|
+
"expansion": "File Transfer Protocol",
|
|
4440
|
+
"category": "Protocols"
|
|
4441
|
+
},
|
|
4442
|
+
{
|
|
4443
|
+
"acronym": "SFTP",
|
|
4444
|
+
"expansion": "SSH File Transfer Protocol",
|
|
4445
|
+
"category": "Protocols"
|
|
4446
|
+
},
|
|
4447
|
+
{
|
|
4448
|
+
"acronym": "SSH",
|
|
4449
|
+
"expansion": "Secure Shell",
|
|
4450
|
+
"category": "Protocols"
|
|
4451
|
+
},
|
|
4452
|
+
{
|
|
4453
|
+
"acronym": "RDP",
|
|
4454
|
+
"expansion": "Remote Desktop Protocol",
|
|
4455
|
+
"category": "Protocols"
|
|
4456
|
+
},
|
|
4457
|
+
{
|
|
4458
|
+
"acronym": "SNMP",
|
|
4459
|
+
"expansion": "Simple Network Management Protocol",
|
|
4460
|
+
"category": "Protocols"
|
|
4461
|
+
},
|
|
4462
|
+
{
|
|
4463
|
+
"acronym": "NTP",
|
|
4464
|
+
"expansion": "Network Time Protocol",
|
|
4465
|
+
"category": "Protocols"
|
|
4466
|
+
},
|
|
4467
|
+
{
|
|
4468
|
+
"acronym": "RADIUS",
|
|
4469
|
+
"expansion": "Remote Authentication Dial-In User Service",
|
|
4470
|
+
"category": "Protocols"
|
|
4471
|
+
},
|
|
4472
|
+
{
|
|
4473
|
+
"acronym": "TACACS",
|
|
4474
|
+
"expansion": "Terminal Access Controller Access-Control System",
|
|
4475
|
+
"category": "Protocols"
|
|
4476
|
+
},
|
|
4477
|
+
{
|
|
4478
|
+
"acronym": "CPU",
|
|
4479
|
+
"expansion": "Central Processing Unit",
|
|
4480
|
+
"category": "Other"
|
|
4481
|
+
},
|
|
4482
|
+
{
|
|
4483
|
+
"acronym": "GPU",
|
|
4484
|
+
"expansion": "Graphics Processing Unit",
|
|
4485
|
+
"category": "Other"
|
|
4486
|
+
},
|
|
4487
|
+
{
|
|
4488
|
+
"acronym": "RAM",
|
|
4489
|
+
"expansion": "Random Access Memory",
|
|
4490
|
+
"category": "Other"
|
|
4491
|
+
},
|
|
4492
|
+
{
|
|
4493
|
+
"acronym": "SSD",
|
|
4494
|
+
"expansion": "Solid State Drive",
|
|
4495
|
+
"category": "Other"
|
|
4496
|
+
},
|
|
4497
|
+
{
|
|
4498
|
+
"acronym": "HDD",
|
|
4499
|
+
"expansion": "Hard Disk Drive",
|
|
4500
|
+
"category": "Other"
|
|
4501
|
+
},
|
|
4502
|
+
{
|
|
4503
|
+
"acronym": "IOPS",
|
|
4504
|
+
"expansion": "Input/Output Operations Per Second",
|
|
4505
|
+
"category": "Other"
|
|
4506
|
+
},
|
|
4507
|
+
{
|
|
4508
|
+
"acronym": "I/O",
|
|
4509
|
+
"expansion": "Input/Output",
|
|
4510
|
+
"category": "Other"
|
|
4511
|
+
},
|
|
4512
|
+
{
|
|
4513
|
+
"acronym": "ID",
|
|
4514
|
+
"expansion": "Identifier",
|
|
4515
|
+
"category": "Other"
|
|
4516
|
+
},
|
|
4517
|
+
{
|
|
4518
|
+
"acronym": "OS",
|
|
4519
|
+
"expansion": "Operating System",
|
|
4520
|
+
"category": "Other"
|
|
4521
|
+
},
|
|
4522
|
+
{
|
|
4523
|
+
"acronym": "GUI",
|
|
4524
|
+
"expansion": "Graphical User Interface",
|
|
4525
|
+
"category": "Other"
|
|
4526
|
+
},
|
|
4527
|
+
{
|
|
4528
|
+
"acronym": "UI",
|
|
4529
|
+
"expansion": "User Interface",
|
|
4530
|
+
"category": "Other"
|
|
4531
|
+
},
|
|
4532
|
+
{
|
|
4533
|
+
"acronym": "UX",
|
|
4534
|
+
"expansion": "User Experience",
|
|
4535
|
+
"category": "Other"
|
|
4536
|
+
},
|
|
4537
|
+
{
|
|
4538
|
+
"acronym": "RTT",
|
|
4539
|
+
"expansion": "Round-Trip Time",
|
|
4540
|
+
"category": "Other"
|
|
4541
|
+
},
|
|
4542
|
+
{
|
|
4543
|
+
"acronym": "SLA",
|
|
4544
|
+
"expansion": "Service Level Agreement",
|
|
4545
|
+
"category": "Other"
|
|
4546
|
+
},
|
|
4547
|
+
{
|
|
4548
|
+
"acronym": "KPI",
|
|
4549
|
+
"expansion": "Key Performance Indicator",
|
|
4550
|
+
"category": "Other"
|
|
4551
|
+
}
|
|
4552
|
+
]
|
|
4553
|
+
}
|
|
2896
4554
|
}
|