Product Detection
What is Product Detection?
Product Detection is the mechanism the Cisco In-Product Support Extension uses to determine whether a user is currently on a supported (onboarded) product.
It ensures that the In-Product Support extension features and CDAP-powered overlays are only activated in the correct Cisco product environments, protecting user privacy and maintaining operational scope in compliance with the Cisco Secure Development Lifecycle (CSDL).
Targeted Operation
The Cisco In-Product Support is engineered to function exclusively on Cisco product portals. It identifies these portals through a combination of signature matches, including URL patterns and specific HTML parameters. This selective operation not only ensures that the extension functions within its intended scope but also protects user privacy by not interacting with non-Cisco websites.
- An onboarded product is one that has been registered with the In-Product Support extension.
- The extension runs detection whenever a user visits a webpage.
- If the product detection rules match, the extension activates and unlocks the extension features.
How the Browser Extension Works
Product Detection
-
Detection Process:
- Each time a page loads, our browser extension examines the page URL and DOM tree.
- Predefined product detection rules are checked. If the conditions are met, the product is identified as supported.
- This information is cached in the extension's session storage
-
Handling Unsupported Products:
- If the page fails to meet detection criteria, the extension disables itself automatically. No further data scraping or processing occurs.
-
Privacy-First Design:
- Processing of unclassified portals is conducted locally within the extension without transmitting data to backend systems. Only verified supported products are processed further.
-
Exception Handling:
-
Unsupported domains are maintained in a product exception array. If a domain exists in this array, detection logic does not run:
[ "google.com", "bing.com", "yahoo.com" ]
-
-
Custom Strategies:
- Detection logic supports URL matching, DOM value matching, and custom strategies using logical operators (
AND,OR) to combine multiple conditions.
- Detection logic supports URL matching, DOM value matching, and custom strategies using logical operators (
How the Native Embed Functionality Works
For certain Cisco products, the native script is pre-injected into the product pages, making product detection unnecessary. The script supports native functionality through predefined configurations:
const productConfigurations = {
"name": "PRODUCT_NAME",
"caseOpen": { "enabled": true, "session_history": true },
"screenRecording": { "enabled": true },
"harCollect": { "enabled": false },
"guidedWorkflow": { "enabled": true }
};Governance Framework for Detection Rules
To ensure accuracy and reliability, a comprehensive governance framework is implemented:
-
Rule Registration & Review:
- Each Cisco product team registers detection rules in a standardized repository.
- Rules are reviewed for specificity to reduce false positives.
-
Validation by SMEs:
- Subject Matter Experts validate rules for contextual relevance and alignment with product requirements.
-
Testing & Monitoring:
- Automated regression testing prevents overlaps between detection rules for different products.
- Continuous monitoring ensures real-world effectiveness.
-
Change Control Process:
- Any modifications to detection rules undergo testing, cross-product analysis, and approval by a governance committee.
-
Periodic Audits:
- Existing rules are audited to ensure they remain precise and aligned with product updates.
Privacy and Security Commitments
-
Localized Processing:
- All initial detection processing occurs locally within the CSA extension.
-
Data Transmission Restrictions:
- Only verified supported product data is processed or transmitted.
-
Operational Transparency:
- The extension disables itself for unsupported products to safeguard user data and maintain trust.