addappfwprofile

Use this method to creates an application firewall profile, which specifies how the application firewall should protect a given type of web content. (A profile is equivalent to an action in other Citrix ADC features.)

Syntax



Parameters

name

Name for the profile. Must begin with a letter, number, or the underscore character (_), and must contain only letters, numbers, and the hyphen (-), period (.), pound (#), space ( ), at (@), equals (=), colon (:), and underscore (_) characters. Cannot be changed after the profile is added. The following requirement applies only to the Citrix ADC CLI: If the name includes one or more spaces, enclose the name in double or single quotation marks (for example, "my profile" or 'my profile').
This is mandatory parameter.

defaults

Default configuration to apply to the profile. Basic defaults are intended for standard content that requires little further configuration, such as static web site content. Advanced defaults are intended for specialized content that requires significant specialized configuration, such as heavily scripted or dynamic content. CLI users: When adding an application firewall profile, you can set either the defaults or the type, but not both. To set both options, create the profile by using the add appfw profile method, and then use the set appfw profile method to configure the other option.

builtintype

Type of built-in profile. Determines which security checks and settings are used for the profile. (The type specified by the HTML XML setting is also called "Web 2.0.") CLI users: When adding an application firewall profile, you can set either the defaults or the type, but not both. To set both options, create the profile by using the add appfw profile method, and then use the set appfw profile method to configure the other option.

starturlaction

One or more Start URL actions. Available settings function as follows: * Block - Block connections that violate this security check. * Learn - Use the learning engine to generate a list of exceptions to this security check. * Log - Log violations of this security check. * Stats - Generate statistics for this security check. * None - Disable all actions for this security check. CLI users: To enable one or more actions, type "set appfw profile -startURLaction" followed by the actions to be enabled. To turn off all actions, type "set appfw profile -startURLaction none".
Default value = AS_DEFAULT_DISPOSITION.

infercontenttypexmlpayloadaction

One or more infer content type payload actions. Available settings function as follows: * Block - Block connections that have mismatch in content-type header and payload. * Log - Log connections that have mismatch in content-type header and payload. The mismatched content-type in HTTP request header will be logged for the request. * Stats - Generate statistics when there is mismatch in content-type header and payload. * None - Disable all actions for this security check. CLI users: To enable one or more actions, type "set appfw profile -inferContentTypeXMLPayloadAction" followed by the actions to be enabled. To turn off all actions, type "set appfw profile -inferContentTypeXMLPayloadAction none". Please note "none" action cannot be used with any other action type.
Default value = AS_INFER_CONTENT_TYPE_XML_PAYLOAD_DEFAULT_DISPOSITION.

contenttypeaction

One or more Content-type actions. Available settings function as follows: * Block - Block connections that violate this security check. * Learn - Use the learning engine to generate a list of exceptions to this security check. * Log - Log violations of this security check. * Stats - Generate statistics for this security check. * None - Disable all actions for this security check. CLI users: To enable one or more actions, type "set appfw profile -contentTypeaction" followed by the actions to be enabled. To turn off all actions, type "set appfw profile -contentTypeaction none".
Default value = AS_DEFAULT_CONTENT_TYPE_DISPOSITION.

inspectcontenttypes

One or more InspectContentType lists. * application/x-www-form-urlencoded * multipart/form-data * text/x-gwt-rpc CLI users: To enable, type "set appfw profile -InspectContentTypes" followed by the content types to be inspected.
Default value = AS_DEFAULT_INSPECTION_CONTENT_TYPE.

starturlclosure

Toggle the state of Start URL Closure.
Default value = OFF.

denyurlaction

One or more Deny URL actions. Available settings function as follows: * Block - Block connections that violate this security check. * Log - Log violations of this security check. * Stats - Generate statistics for this security check. * None - Disable all actions for this security check. NOTE: The Deny URL check takes precedence over the Start URL check. If you enable blocking for the Deny URL check, the application firewall blocks any URL that is explicitly blocked by a Deny URL, even if the same URL would otherwise be allowed by the Start URL check. CLI users: To enable one or more actions, type "set appfw profile -denyURLaction" followed by the actions to be enabled. To turn off all actions, type "set appfw profile -denyURLaction none".
Default value = AS_DEFAULT_DISPOSITION.

refererheadercheck

Enable validation of Referer headers. Referer validation ensures that a web form that a user sends to your web site originally came from your web site, not an outside attacker. Although this parameter is part of the Start URL check, referer validation protects against cross-site request forgery (CSRF) attacks, not Start URL attacks.
Default value = AS_HEADER_CHECK_OFF.

cookieconsistencyaction

One or more Cookie Consistency actions. Available settings function as follows: * Block - Block connections that violate this security check. * Learn - Use the learning engine to generate a list of exceptions to this security check. * Log - Log violations of this security check. * Stats - Generate statistics for this security check. * None - Disable all actions for this security check. CLI users: To enable one or more actions, type "set appfw profile -cookieConsistencyAction" followed by the actions to be enabled. To turn off all actions, type "set appfw profile -cookieConsistencyAction none".
Default value = AS_NONE.

cookiehijackingaction

One or more actions to prevent cookie hijacking. Available settings function as follows: * Block - Block connections that violate this security check. * Log - Log violations of this security check. * Stats - Generate statistics for this security check. * None - Disable all actions for this security check. NOTE: Cookie Hijacking feature is not supported for TLSv1.3 CLI users: To enable one or more actions, type "set appfw profile -cookieHijackingAction" followed by the actions to be enabled. To turn off all actions, type "set appfw profile -cookieHijackingAction none".
Default value = AS_NONE.

cookietransforms

Perform the specified type of cookie transformation. Available settings function as follows: * Encryption - Encrypt cookies. * Proxying - Mask contents of server cookies by sending proxy cookie to users. * Cookie flags - Flag cookies as HTTP only to prevent scripts on user's browser from accessing and possibly modifying them. CAUTION: Make sure that this parameter is set to ON if you are configuring any cookie transformations. If it is set to OFF, no cookie transformations are performed regardless of any other settings.
Default value = OFF.

cookieencryption

Type of cookie encryption. Available settings function as follows: * None - Do not encrypt cookies. * Decrypt Only - Decrypt encrypted cookies, but do not encrypt cookies. * Encrypt Session Only - Encrypt session cookies, but not permanent cookies. * Encrypt All - Encrypt all cookies.
Default value = AS_CKI_ENCRYPT_NONE.

cookieproxying

Cookie proxy setting. Available settings function as follows: * None - Do not proxy cookies. * Session Only - Proxy session cookies by using the Citrix ADC session ID, but do not proxy permanent cookies.
Default value = AS_CKI_PROXY_NONE.

addcookieflags

Add the specified flags to cookies. Available settings function as follows: * None - Do not add flags to cookies. * HTTP Only - Add the HTTP Only flag to cookies, which prevents scripts from accessing cookies. * Secure - Add Secure flag to cookies. * All - Add both HTTPOnly and Secure flags to cookies.
Default value = AS_ADD_CKI_FLAGS_NONE.

fieldconsistencyaction

One or more Form Field Consistency actions. Available settings function as follows: * Block - Block connections that violate this security check. * Learn - Use the learning engine to generate a list of exceptions to this security check. * Log - Log violations of this security check. * Stats - Generate statistics for this security check. * None - Disable all actions for this security check. CLI users: To enable one or more actions, type "set appfw profile -fieldConsistencyaction" followed by the actions to be enabled. To turn off all actions, type "set appfw profile -fieldConsistencyAction none".
Default value = AS_NONE.

csrftagaction

One or more Cross-Site Request Forgery (CSRF) Tagging actions. Available settings function as follows: * Block - Block connections that violate this security check. * Learn - Use the learning engine to generate a list of exceptions to this security check. * Log - Log violations of this security check. * Stats - Generate statistics for this security check. * None - Disable all actions for this security check. CLI users: To enable one or more actions, type "set appfw profile -CSRFTagAction" followed by the actions to be enabled. To turn off all actions, type "set appfw profile -CSRFTagAction none".
Default value = AS_NONE.

crosssitescriptingaction

One or more Cross-Site Scripting (XSS) actions. Available settings function as follows: * Block - Block connections that violate this security check. * Learn - Use the learning engine to generate a list of exceptions to this security check. * Log - Log violations of this security check. * Stats - Generate statistics for this security check. * None - Disable all actions for this security check. CLI users: To enable one or more actions, type "set appfw profile -crossSiteScriptingAction" followed by the actions to be enabled. To turn off all actions, type "set appfw profile -crossSiteScriptingAction none".
Default value = AS_DEFAULT_DISPOSITION.

crosssitescriptingtransformunsafehtml

Transform cross-site scripts. This setting configures the application firewall to disable dangerous HTML instead of blocking the request. CAUTION: Make sure that this parameter is set to ON if you are configuring any cross-site scripting transformations. If it is set to OFF, no cross-site scripting transformations are performed regardless of any other settings.
Default value = OFF.

crosssitescriptingcheckcompleteurls

Check complete URLs for cross-site scripts, instead of just the query portions of URLs.
Default value = OFF.

sqlinjectionaction

One or more HTML SQL Injection actions. Available settings function as follows: * Block - Block connections that violate this security check. * Learn - Use the learning engine to generate a list of exceptions to this security check. * Log - Log violations of this security check. * Stats - Generate statistics for this security check. * None - Disable all actions for this security check. CLI users: To enable one or more actions, type "set appfw profile -SQLInjectionAction" followed by the actions to be enabled. To turn off all actions, type "set appfw profile -SQLInjectionAction none".
Default value = AS_DEFAULT_DISPOSITION.

cmdinjectionaction

Command injection action. Available settings function as follows: * Block - Block connections that violate this security check. * Log - Log violations of this security check. * Stats - Generate statistics for this security check. * None - Disable all actions for this security check. CLI users: To enable one or more actions, type "set appfw profile -cmdInjectionAction" followed by the actions to be enabled. To turn off all actions, type "set appfw profile -cmdInjectionAction none".
Default value = AS_NONE.

cmdinjectiontype

Available CMD injection types. -CMDSplChar : Checks for CMD Special Chars -CMDKeyword : Checks for CMD Keywords -CMDSplCharANDKeyword : Checks for both and blocks if both are found -CMDSplCharORKeyword : Checks for both and blocks if anyone is found, -None : Disables checking using both CMD Special Char and Keyword
Default value = AS_CMDINJECTION_TYPE_CHAR_AND_KEYWORD.

sqlinjectiongrammar

Check for SQL injection using SQL grammar
Default value = OFF.

cmdinjectiongrammar

Check for CMD injection using CMD grammar
Default value = OFF.

fieldscan

Check if formfield limit scan is ON or OFF.
Default value = OFF.

fieldscanlimit

Field scan limit value for HTML
Default value = AS_DEFAULT_FIELD_SCAN_LIMIT.
Maximum value = AS_MAX_FIELD_SCAN_LIMIT.

jsonfieldscan

Check if JSON field limit scan is ON or OFF.
Default value = OFF.

jsonfieldscanlimit

Field scan limit value for JSON
Default value = AS_DEFAULT_FIELD_SCAN_LIMIT.
Maximum value = AS_MAX_FIELD_SCAN_LIMIT.

messagescan

Check if HTML message limit scan is ON or OFF
Default value = OFF.

messagescanlimit

Message scan limit value for HTML
Default value = AS_DEFAULT_MESSAGE_SCAN_LIMIT.
Maximum value = AS_MAX_MESSAGE_SCAN_LIMIT.

jsonmessagescan

Check if JSON message limit scan is ON or OFF
Default value = OFF.

jsonmessagescanlimit

Message scan limit value for JSON
Default value = AS_DEFAULT_MESSAGE_SCAN_LIMIT.
Maximum value = AS_MAX_MESSAGE_SCAN_LIMIT.

messagescanlimitcontenttypes

Enable Message Scan Limit for following content types.
Default value = AS_MSG_SCAN_LIMIT_NONE.

sqlinjectiontransformspecialchars

Transform injected SQL code. This setting configures the application firewall to disable SQL special strings instead of blocking the request. Since most SQL servers require a special string to activate an SQL keyword, in most cases a request that contains injected SQL code is safe if special strings are disabled. CAUTION: Make sure that this parameter is set to ON if you are configuring any SQL injection transformations. If it is set to OFF, no SQL injection transformations are performed regardless of any other settings.
Default value = OFF.

sqlinjectiontype

Available SQL injection types. -SQLSplChar : Checks for SQL Special Chars -SQLKeyword : Checks for SQL Keywords -SQLSplCharANDKeyword : Checks for both and blocks if both are found -SQLSplCharORKeyword : Checks for both and blocks if anyone is found -None : Disables checking using both SQL Special Char and Keyword
Default value = AS_SQLINJECTION_TYPE_CHAR_AND_KEYWORD.

sqlinjectionchecksqlwildchars

Check for form fields that contain SQL wild chars .
Default value = OFF.

fieldformataction

One or more Field Format actions. Available settings function as follows: * Block - Block connections that violate this security check. * Learn - Use the learning engine to generate a list of suggested web form fields and field format assignments. * Log - Log violations of this security check. * Stats - Generate statistics for this security check. * None - Disable all actions for this security check. CLI users: To enable one or more actions, type "set appfw profile -fieldFormatAction" followed by the actions to be enabled. To turn off all actions, type "set appfw profile -fieldFormatAction none".
Default value = AS_DEFAULT_DISPOSITION.

defaultfieldformattype

Designate a default field type to be applied to web form fields that do not have a field type explicitly assigned to them.

defaultfieldformatminlength

Minimum length, in characters, for data entered into a field that is assigned the default field type. To disable the minimum and maximum length settings and allow data of any length to be entered into the field, set this parameter to zero (0).
Default value = AS_DEFAULTFIELDFORMAT_DEFAULT_MIN_LEN.
Minimum value = AS_DEFAULTFIELDFORMAT_MIN_LEN.
Maximum value = AS_FIELDFORMAT_MAX_LEN.

defaultfieldformatmaxlength

Maximum length, in characters, for data entered into a field that is assigned the default field type.
Default value = AS_DEFAULTFIELDFORMAT_DEFAULT_MAX_LEN.
Minimum value = 1.
Maximum value = AS_FIELDFORMAT_MAX_LEN.

defaultfieldformatmaxoccurrences

Maxiumum allowed occurrences of the form field name in a request.
Default value = AS_FIELDFORMAT_MAX_OCCURRENCE.
Minimum value = 0.
Maximum value = AS_FIELDFORMAT_MAX_OCCURRENCE.

bufferoverflowaction

One or more Buffer Overflow actions. Available settings function as follows: * Block - Block connections that violate this security check. * Log - Log violations of this security check. * Stats - Generate statistics for this security check. * None - Disable all actions for this security check. CLI users: To enable one or more actions, type "set appfw profile -bufferOverflowAction" followed by the actions to be enabled. To turn off all actions, type "set appfw profile -bufferOverflowAction none".
Default value = AS_DEFAULT_DISPOSITION.

grpcaction

gRPC validation
Default value = AS_DEFAULT_GRPC_DISPOSITION.

restaction

rest validation
Default value = AS_DEFAULT_GRPC_DISPOSITION.

bufferoverflowmaxurllength

Maximum length, in characters, for URLs on your protected web sites. Requests with longer URLs are blocked.
Default value = AS_BUFFEROVERFLOW_DEFAULT_MAX_URL_LEN.
Minimum value = AS_BUFFEROVERFLOW_MIN_URL_LEN.
Maximum value = AS_MAX_INT_LEN.

bufferoverflowmaxheaderlength

Maximum length, in characters, for HTTP headers in requests sent to your protected web sites. Requests with longer headers are blocked.
Default value = AS_BUFFEROVERFLOW_DEFAULT_MAX_HDR_LEN.
Minimum value = AS_BUFFEROVERFLOW_MIN_HDR_LEN.
Maximum value = AS_MAX_INT_LEN.

bufferoverflowmaxcookielength

Maximum length, in characters, for cookies sent to your protected web sites. Requests with longer cookies are blocked.
Default value = AS_BUFFEROVERFLOW_DEFAULT_MAX_COOKIE_LEN.
Minimum value = AS_BUFFEROVERFLOW_MIN_COOKIE_LEN.
Maximum value = AS_MAX_INT_LEN.

bufferoverflowmaxquerylength

Maximum length, in bytes, for query string sent to your protected web sites. Requests with longer query strings are blocked.
Default value = AS_MAX_INT_LEN.
Minimum value = AS_BUFFEROVERFLOW_MIN_QUERY_LEN.
Maximum value = AS_MAX_INT_LEN.

bufferoverflowmaxtotalheaderlength

Maximum length, in bytes, for the total HTTP header length in requests sent to your protected web sites. The minimum value of this and maxHeaderLen in httpProfile will be used. Requests with longer length are blocked.
Default value = AS_MAX_INT_LEN.
Minimum value = AS_BUFFEROVERFLOW_MIN_TOTAL_HDR_LEN.
Maximum value = AS_MAX_INT_LEN.

creditcardaction

One or more Credit Card actions. Available settings function as follows: * Block - Block connections that violate this security check. * Log - Log violations of this security check. * Stats - Generate statistics for this security check. * None - Disable all actions for this security check. CLI users: To enable one or more actions, type "set appfw profile -creditCardAction" followed by the actions to be enabled. To turn off all actions, type "set appfw profile -creditCardAction none".
Default value = AS_NONE.

creditcard

Credit card types that the application firewall should protect.
Default value = AS_CCARD_DEFAULT_CARD_TYPE.

creditcardmaxallowed

This parameter value is used by the block action. It represents the maximum number of credit card numbers that can appear on a web page served by your protected web sites. Pages that contain more credit card numbers are blocked.
Minimum value = 0.
Maximum value = AS_CCARD_MAX_COMMERCEMAXALLOWED.

creditcardxout

Mask any credit card number detected in a response by replacing each digit, except the digits in the final group, with the letter "X."
Default value = OFF.

dosecurecreditcardlogging

Setting this option logs credit card numbers in the response when the match is found.
Default value = ON.

streaming

Setting this option converts content-length form submission requests (requests with content-type "application/x-www-form-urlencoded" or "multipart/form-data") to chunked requests when atleast one of the following protections : Signatures, SQL injection protection, XSS protection, form field consistency protection, starturl closure, CSRF tagging, JSON SQL, JSON XSS, JSON DOS is enabled. Please make sure that the backend server accepts chunked requests before enabling this option. Citrix recommends enabling this option for large request sizes(>20MB).
Default value = OFF.

trace

Toggle the state of trace
Default value = OFF.

requestcontenttype

Default Content-Type header for requests. A Content-Type header can contain 0-255 letters, numbers, and the hyphen (-) and underscore (_) characters.
Default value = NS_S_AS_DEFAULT_REQUEST_CONTENT_TYPE.

responsecontenttype

Default Content-Type header for responses. A Content-Type header can contain 0-255 letters, numbers, and the hyphen (-) and underscore (_) characters.
Default value = NS_S_AS_DEFAULT_RESPONSE_CONTENT_TYPE.

jsonerrorobject

Name to the imported JSON Error Object to be set on application firewall profile. The following requirement applies only to the Citrix ADC CLI: If the name includes one or more spaces, enclose the name in double or single quotation marks \(for example, "my JSON error object" or 'my JSON error object'\).
Default value = NS_S_AS_ERROR_OBJECT_DEFAULT.

apispec

Name of the API Specification.
Default value = NS_S_APISPEC_DEFAULT.

protofileobject

Name of the imported proto file.
Default value = NS_S_AS_PROTOFILE_OBJECT_DEFAULT.

jsonerrorstatuscode

Response status code associated with JSON error page. Non-empty JSON error object must be imported to the application firewall profile for the status code.
Default value = AS_ERROR_CODE_DEFAULT.
Minimum value = 1.
Maximum value = AS_ERROR_CODE_MAX.

jsonerrorstatusmessage

Response status message associated with JSON error page
Default value = NS_S_AS_ERROR_CODE_DESCRIPTION_DEFAULT.

jsondosaction

One or more JSON Denial-of-Service (JsonDoS) actions. Available settings function as follows: * Block - Block connections that violate this security check. * Log - Log violations of this security check. * Stats - Generate statistics for this security check. * None - Disable all actions for this security check. CLI users: To enable one or more actions, type "set appfw profile -JSONDoSAction" followed by the actions to be enabled. To turn off all actions, type "set appfw profile -JSONDoSAction none".
Default value = AS_DEFAULT_DISPOSITION.

jsonsqlinjectionaction

One or more JSON SQL Injection actions. Available settings function as follows: * Block - Block connections that violate this security check. * Log - Log violations of this security check. * Stats - Generate statistics for this security check. * None - Disable all actions for this security check. CLI users: To enable one or more actions, type "set appfw profile -JSONSQLInjectionAction" followed by the actions to be enabled. To turn off all actions, type "set appfw profile -JSONSQLInjectionAction none".
Default value = AS_DEFAULT_DISPOSITION.

jsonsqlinjectiontype

Available SQL injection types. -SQLSplChar : Checks for SQL Special Chars -SQLKeyword : Checks for SQL Keywords -SQLSplCharANDKeyword : Checks for both and blocks if both are found -SQLSplCharORKeyword : Checks for both and blocks if anyone is found, -None : Disables checking using both SQL Special Char and Keyword
Default value = AS_SQLINJECTION_TYPE_CHAR_AND_KEYWORD.

jsonsqlinjectiongrammar

Check for SQL injection using SQL grammar in JSON
Default value = OFF.

jsoncmdinjectionaction

One or more JSON CMD Injection actions. Available settings function as follows: * Block - Block connections that violate this security check. * Log - Log violations of this security check. * Stats - Generate statistics for this security check. * None - Disable all actions for this security check. CLI users: To enable one or more actions, type "set appfw profile -JSONCMDInjectionAction" followed by the actions to be enabled. To turn off all actions, type "set appfw profile -JSONCMDInjectionAction none".
Default value = AS_DEFAULT_DISPOSITION.

jsoncmdinjectiontype

Available CMD injection types. -CMDSplChar : Checks for CMD Special Chars -CMDKeyword : Checks for CMD Keywords -CMDSplCharANDKeyword : Checks for both and blocks if both are found -CMDSplCharORKeyword : Checks for both and blocks if anyone is found, -None : Disables checking using both SQL Special Char and Keyword
Default value = AS_CMDINJECTION_TYPE_CHAR_AND_KEYWORD.

jsoncmdinjectiongrammar

Check for CMD injection using CMD grammar in JSON
Default value = OFF.

jsonxssaction

One or more JSON Cross-Site Scripting actions. Available settings function as follows: * Block - Block connections that violate this security check. * Log - Log violations of this security check. * Stats - Generate statistics for this security check. * None - Disable all actions for this security check. CLI users: To enable one or more actions, type "set appfw profile -JSONXssAction" followed by the actions to be enabled. To turn off all actions, type "set appfw profile -JSONXssAction none".
Default value = AS_DEFAULT_DISPOSITION.

xmldosaction

One or more XML Denial-of-Service (XDoS) actions. Available settings function as follows: * Block - Block connections that violate this security check. * Learn - Use the learning engine to generate a list of exceptions to this security check. * Log - Log violations of this security check. * Stats - Generate statistics for this security check. * None - Disable all actions for this security check. CLI users: To enable one or more actions, type "set appfw profile -XMLDoSAction" followed by the actions to be enabled. To turn off all actions, type "set appfw profile -XMLDoSAction none".
Default value = AS_DEFAULT_DISPOSITION.

xmlformataction

One or more XML Format actions. Available settings function as follows: * Block - Block connections that violate this security check. * Log - Log violations of this security check. * Stats - Generate statistics for this security check. * None - Disable all actions for this security check. CLI users: To enable one or more actions, type "set appfw profile -XMLFormatAction" followed by the actions to be enabled. To turn off all actions, type "set appfw profile -XMLFormatAction none".
Default value = AS_DEFAULT_DISPOSITION.

xmlsqlinjectionaction

One or more XML SQL Injection actions. Available settings function as follows: * Block - Block connections that violate this security check. * Log - Log violations of this security check. * Stats - Generate statistics for this security check. * None - Disable all actions for this security check. CLI users: To enable one or more actions, type "set appfw profile -XMLSQLInjectionAction" followed by the actions to be enabled. To turn off all actions, type "set appfw profile -XMLSQLInjectionAction none".
Default value = AS_DEFAULT_DISPOSITION.

xmlsqlinjectiontype

Available SQL injection types. -SQLSplChar : Checks for SQL Special Chars -SQLKeyword : Checks for SQL Keywords -SQLSplCharANDKeyword : Checks for both and blocks if both are found -SQLSplCharORKeyword : Checks for both and blocks if anyone is found
Default value = AS_SQLINJECTION_TYPE_CHAR_AND_KEYWORD.

xmlsqlinjectionchecksqlwildchars

Check for form fields that contain SQL wild chars .
Default value = OFF.

xmlsqlinjectionparsecomments

Parse comments in XML Data and exempt those sections of the request that are from the XML SQL Injection check. You must configure the type of comments that the application firewall is to detect and exempt from this security check. Available settings function as follows: * Check all - Check all content. * ANSI - Exempt content that is part of an ANSI (Mozilla-style) comment. * Nested - Exempt content that is part of a nested (Microsoft-style) comment. * ANSI Nested - Exempt content that is part of any type of comment.
Default value = AS_CHECKALL.

xmlxssaction

One or more XML Cross-Site Scripting actions. Available settings function as follows: * Block - Block connections that violate this security check. * Log - Log violations of this security check. * Stats - Generate statistics for this security check. * None - Disable all actions for this security check. CLI users: To enable one or more actions, type "set appfw profile -XMLXSSAction" followed by the actions to be enabled. To turn off all actions, type "set appfw profile -XMLXSSAction none".
Default value = AS_DEFAULT_DISPOSITION.

xmlwsiaction

One or more Web Services Interoperability (WSI) actions. Available settings function as follows: * Block - Block connections that violate this security check. * Learn - Use the learning engine to generate a list of exceptions to this security check. * Log - Log violations of this security check. * Stats - Generate statistics for this security check. * None - Disable all actions for this security check. CLI users: To enable one or more actions, type "set appfw profile -XMLWSIAction" followed by the actions to be enabled. To turn off all actions, type "set appfw profile -XMLWSIAction none".
Default value = AS_DEFAULT_DISPOSITION.

xmlattachmentaction

One or more XML Attachment actions. Available settings function as follows: * Block - Block connections that violate this security check. * Learn - Use the learning engine to generate a list of exceptions to this security check. * Log - Log violations of this security check. * Stats - Generate statistics for this security check. * None - Disable all actions for this security check. CLI users: To enable one or more actions, type "set appfw profile -XMLAttachmentAction" followed by the actions to be enabled. To turn off all actions, type "set appfw profile -XMLAttachmentAction none".
Default value = AS_DEFAULT_DISPOSITION.

xmlvalidationaction

One or more XML Validation actions. Available settings function as follows: * Block - Block connections that violate this security check. * Log - Log violations of this security check. * Stats - Generate statistics for this security check. * None - Disable all actions for this security check. CLI users: To enable one or more actions, type "set appfw profile -XMLValidationAction" followed by the actions to be enabled. To turn off all actions, type "set appfw profile -XMLValidationAction none".
Default value = AS_DEFAULT_DISPOSITION.

xmlerrorobject

Name to assign to the XML Error Object, which the application firewall displays when a user request is blocked. Must begin with a letter, number, or the underscore character \(_\), and must contain only letters, numbers, and the hyphen \(-\), period \(.\) pound \(\#\), space \( \), at (@), equals \(=\), colon \(:\), and underscore characters. Cannot be changed after the XML error object is added. The following requirement applies only to the Citrix ADC CLI: If the name includes one or more spaces, enclose the name in double or single quotation marks \(for example, "my XML error object" or 'my XML error object'\).
Default value = NS_S_AS_ERROR_OBJECT_DEFAULT.

xmlerrorstatuscode

Response status code associated with XML error page. Non-empty XML error object must be imported to the application firewall profile for the status code.
Default value = AS_ERROR_CODE_DEFAULT.
Minimum value = 1.
Maximum value = AS_ERROR_CODE_MAX.

xmlerrorstatusmessage

Response status message associated with XML error page
Default value = NS_S_AS_ERROR_CODE_DESCRIPTION_DEFAULT.

signatures

Object name for signatures. This check is applicable to Profile Type: HTML, XML.
Default value = NS_S_AS_CUSTOM_OBJECT_DEFAULT.

xmlsoapfaultaction

One or more XML SOAP Fault Filtering actions. Available settings function as follows: * Block - Block connections that violate this security check. * Log - Log violations of this security check. * Stats - Generate statistics for this security check. * None - Disable all actions for this security check. * Remove - Remove all violations for this security check. CLI users: To enable one or more actions, type "set appfw profile -XMLSOAPFaultAction" followed by the actions to be enabled. To turn off all actions, type "set appfw profile -XMLSOAPFaultAction none".
Default value = AS_DEFAULT_DISPOSITION.

usehtmlerrorobject

Send an imported HTML Error object to a user when a request is blocked, instead of redirecting the user to the designated Error URL.
Default value = OFF.

errorurl

URL that application firewall uses as the Error URL.
Default value = NS_S_AS_ERROR_URL_DEFAULT.

htmlerrorobject

Name to assign to the HTML Error Object. Must begin with a letter, number, or the underscore character \(_\), and must contain only letters, numbers, and the hyphen \(-\), period \(.\) pound \(\#\), space \( \), at (@), equals \(=\), colon \(:\), and underscore characters. Cannot be changed after the HTML error object is added. The following requirement applies only to the Citrix ADC CLI: If the name includes one or more spaces, enclose the name in double or single quotation marks \(for example, "my HTML error object" or 'my HTML error object'\).
Default value = NS_S_AS_ERROR_OBJECT_DEFAULT.

htmlerrorstatuscode

Response status code associated with HTML error page. Non-empty HTML error object must be imported to the application firewall profile for the status code.
Default value = AS_ERROR_CODE_DEFAULT.
Minimum value = 1.
Maximum value = AS_ERROR_CODE_MAX.

htmlerrorstatusmessage

Response status message associated with HTML error page
Default value = NS_S_AS_ERROR_CODE_DESCRIPTION_DEFAULT.

logeverypolicyhit

Log every profile match, regardless of security checks results.
Default value = OFF.

striphtmlcomments

Strip HTML comments before forwarding a web page sent by a protected web site in response to a user request.
Default value = AS_STRIP_COMMENT_NONE.

stripxmlcomments

Strip XML comments before forwarding a web page sent by a protected web site in response to a user request.
Default value = AS_STRIP_COMMENT_NONE.

exemptclosureurlsfromsecuritychecks

Exempt URLs that pass the Start URL closure check from SQL injection, cross-site script, field format and field consistency security checks at locations other than headers.
Default value = ON.

defaultcharset

Default character set for protected web pages. Web pages sent by your protected web sites in response to user requests are assigned this character set if the page does not already specify a character set. The character sets supported by the application firewall are: * iso-8859-1 (English US) * big5 (Chinese Traditional) * gb2312 (Chinese Simplified) * sjis (Japanese Shift-JIS) * euc-jp (Japanese EUC-JP) * iso-8859-9 (Turkish) * utf-8 (Unicode) * euc-kr (Korean)
Default value = NS_S_AS_CHARSET_DEFAULT.

clientipexpression

Expression to get the client IP.

dynamiclearning

One or more security checks. Available options are as follows: * SQLInjection - Enable dynamic learning for SQLInjection security check. * CrossSiteScripting - Enable dynamic learning for CrossSiteScripting security check. * fieldFormat - Enable dynamic learning for fieldFormat security check. * None - Disable security checks for all security checks. CLI users: To enable dynamic learning on one or more security checks, type "set appfw profile -dynamicLearning" followed by the security checks to be enabled. To turn off dynamic learning on all security checks, type "set appfw profile -dynamicLearning none".
Default value = AS_DYNAMIC_LEARNING_SECURITY_CHECK_DEFAULT.

postbodylimit

Maximum allowed HTTP post body size, in bytes. Maximum supported value is 10GB. Citrix recommends enabling streaming option for large values of post body limit (>20MB).
Default value = AS_DEFAULT_POSTBODYLIMIT.

postbodylimitaction

One or more Post Body Limit actions. Available settings function as follows: * Block - Block connections that violate this security check. Must always be set. * Log - Log violations of this security check. * Stats - Generate statistics for this security check. CLI users: To enable one or more actions, type "set appfw profile -PostBodyLimitAction block" followed by the other actions to be enabled.
Default value = AS_DEFAULT_POSTBODYLIMIT_DISPOSITION.

postbodylimitsignature

Maximum allowed HTTP post body size for signature inspection for location HTTP_POST_BODY in the signatures, in bytes. Note that the changes in value could impact CPU and latency profile.
Default value = AS_DEFAULT_POSTBODYLIMIT_SIGNATURE.

fileuploadmaxnum

Maximum allowed number of file uploads per form-submission request. The maximum setting (65535) allows an unlimited number of uploads.
Default value = AS_DEFAULT_MAX_FILE_UPLOADS.
Maximum value = AS_MAX_INT_LEN.

canonicalizehtmlresponse

Perform HTML entity encoding for any special characters in responses sent by your protected web sites.
Default value = ON.

enableformtagging

Enable tagging of web form fields for use by the Form Field Consistency and CSRF Form Tagging checks.
Default value = ON.

sessionlessfieldconsistency

Perform sessionless Field Consistency Checks.
Default value = AS_OFF.

sessionlessurlclosure

Enable session less URL Closure Checks. This check is applicable to Profile Type: HTML.
Default value = OFF.

semicolonfieldseparator

Allow ';' as a form field separator in URL queries and POST form bodies.
Default value = OFF.

excludefileuploadfromchecks

Exclude uploaded files from Form checks.
Default value = OFF.

sqlinjectionparsecomments

Parse HTML comments and exempt them from the HTML SQL Injection check. You must specify the type of comments that the application firewall is to detect and exempt from this security check. Available settings function as follows: * Check all - Check all content. * ANSI - Exempt content that is part of an ANSI (Mozilla-style) comment. * Nested - Exempt content that is part of a nested (Microsoft-style) comment. * ANSI Nested - Exempt content that is part of any type of comment.
Default value = AS_DEFAULT_SQLINJECTIONPARSECOMMENTS.

invalidpercenthandling

Configure the method that the application firewall uses to handle percent-encoded names and values. Available settings function as follows: * asp_mode - Microsoft ASP format. * secure_mode - Secure format.
Default value = AS_PERCENT_DECODE_SECURE_MODE.

type

Application firewall profile type, which controls which security checks and settings are applied to content that is filtered with the profile. Available settings function as follows: * HTML - HTML-based web sites. * XML - XML-based web sites and services. * JSON - JSON-based web sites and services. * HTML XML (Web 2.0) - Sites that contain both HTML and XML content, such as ATOM feeds, blogs, and RSS feeds. * HTML JSON - Sites that contain both HTML and JSON content. * XML JSON - Sites that contain both XML and JSON content. * HTML XML JSON - Sites that contain HTML, XML and JSON content.
Default value = AF_PROFILE_TYPE_HTML.

checkrequestheaders

Check request headers as well as web forms for injected SQL and cross-site scripts.
Default value = OFF.

inspectquerycontenttypes

Inspect request query as well as web forms for injected SQL and cross-site scripts for following content types.
Default value = AS_INSPECT_QUERY_DEFAULT.

optimizepartialreqs

Optimize handle of HTTP partial requests i.e. those with range headers. Available settings are as follows: * ON - Partial requests by the client result in partial requests to the backend server in most cases. * OFF - Partial requests by the client are changed to full requests to the backend server
Default value = ON.

urldecoderequestcookies

URL Decode request cookies before subjecting them to SQL and cross-site scripting checks.
Default value = OFF.

comment

Any comments about the purpose of profile, or other useful information about the profile.

percentdecoderecursively

Configure whether the application firewall should use percentage recursive decoding
Default value = ON.

multipleheaderaction

One or more multiple header actions. Available settings function as follows: * Block - Block connections that have multiple headers. * Log - Log connections that have multiple headers. * KeepLast - Keep only last header when multiple headers are present. Request headers inspected: * Accept-Encoding * Content-Encoding * Content-Range * Content-Type * Host * Range * Referer CLI users: To enable one or more actions, type "set appfw profile -multipleHeaderAction" followed by the actions to be enabled.
Default value = AS_MULTIPLE_HEADER_DEFAULT_DISPOSITION.

rfcprofile

Object name of the rfc profile.
Default value = NS_S_AS_RFC_PROFILE_DEFAULT.

fileuploadtypesaction

One or more file upload types actions. Available settings function as follows: * Block - Block connections that violate this security check. * Log - Log violations of this security check. * Stats - Generate statistics for this security check. * None - Disable all actions for this security check. CLI users: To enable one or more actions, type "set appfw profile -fileUploadTypeAction" followed by the actions to be enabled. To turn off all actions, type "set appfw profile -fileUploadTypeAction none".
Default value = AS_DEFAULT_DISPOSITION.

verboseloglevel

Detailed Logging Verbose Log Level.
Default value = AS_VERBOSE_LOG_PATTERN_ONLY.

insertcookiesamesiteattribute

Configure whether application firewall should add samesite attribute for set-cookies
Default value = OFF.

cookiesamesiteattribute

Cookie Samesite attribute added to support adding cookie SameSite attribute for all set-cookies including appfw session cookies. Default value will be "SameSite=Lax".
Default value = NS_SAMESITE_LAX.

sqlinjectionruletype

Specifies SQL Injection rule type: ALLOW/DENY. If ALLOW rule type is configured then allow list rules are used, if DENY rule type is configured then deny rules are used.
Default value = NS_ALLOW.

fakeaccountdetection

Fake account detection flag : ON/OFF. If set to ON fake account detection in enabled on ADC, if set to OFF fake account detection is disabled.
Default value = OFF.

geolocationlogging

Enable Geo-Location Logging in CEF format logs for the profile.

ceflogging

Enable CEF format logs for the profile.

blockkeywordaction

Block Keyword action. Available settings function as follows: * Block - Block connections that violate this security check. * Log - Log violations of this security check. * Stats - Generate statistics for this security check. * None - Disable all actions for this security check. CLI users: To enable one or more actions, type "set appfw profile -blockKeywordAction" followed by the actions to be enabled. To turn off all actions, type "set appfw profile -blockKeywordAction none".
Default value = AS_NONE.

jsonblockkeywordaction

JSON Block Keyword action. Available settings function as follows: * Block - Block connections that violate this security check. * Log - Log violations of this security check. * Stats - Generate statistics for this security check. * None - Disable all actions for this security check. CLI users: To enable one or more actions, type "set appfw profile -JSONBlockKeywordAction" followed by the actions to be enabled. To turn off all actions, type "set appfw profile -JSONBlockKeywordAction none".
Default value = AS_NONE.

bypasslist

Enable bypass list for the profile.
Default value = NS_OFF.

denylist

Enable deny list for the profile.
Default value = NS_OFF.

sessioncookiename

Name of the session cookie that the application firewall uses to track user sessions. Must begin with a letter or number, and can consist of from 1 to 31 letters, numbers, and the hyphen (-) and underscore (_) symbols. The following requirement applies only to the Citrix ADC CLI: If the name includes one or more spaces, enclose the name in double or single quotation marks (for example, "my cookie name" or 'my cookie name').

Return Value

Returns simpleResult

See Also