Skip to content

Commit 4f80c8f

Browse files
committed
Sync with Kendo UI Professional
1 parent 377ed4d commit 4f80c8f

14 files changed

+517
-59
lines changed

docs-aspnet/_config.yml

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -442,15 +442,18 @@ navigation:
442442
"accessibility":
443443
title: "Accessibility"
444444
position: 10
445+
"security":
446+
title: "Security"
447+
position: 11
445448
"deployment":
446449
title: "Deployment"
447-
position: 11
450+
position: 12
448451
"integration-with-other-telerik-products":
449452
title: "Integration with Other Telerik Products"
450-
position: 12
453+
position: 13
451454
"cloud-integration":
452455
title: "Cloud Integration"
453-
position: 13
456+
position: 14
454457
"cloud-integration/amazon-web-services":
455458
title: "Amazon Web Services"
456459
position: 2
@@ -462,7 +465,7 @@ navigation:
462465
position: 4
463466
"backwards-compatibility":
464467
title: "Breaking Changes"
465-
position: 14
468+
position: 15
466469
"*appearance":
467470
title: "Appearance"
468471
"*/binding":

docs-aspnet/html-helpers/helper-basics/security-and-validation.md renamed to docs-aspnet/security/security-and-validation.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,17 @@
11
---
2-
title: Security and Validation
3-
page_title: Security and Validation
2+
title: Useful Tips
3+
page_title: Security and Validation Useful Tips
44
description: "Get started with Telerik UI for {{ site.framework }} and learn the fundamentals for XSS and CSRF attacks."
55
slug: aspnetcore_security_gettingstarted
6-
previous_url: /getting-started/helper-basics/security-and-validation
7-
position: 9
6+
previous_url: /getting-started/helper-basics/security-and-validation, /html-helpers/helper-basics/security-and-validation
7+
position: 2
88
---
99

10-
# Security and Validation
10+
# Security and Validation Useful Tips
1111

1212
Preventing Cross-site scripting (XSS) and implementing validation for Cross-Site Request Forgery(CSRF) tokens can significantly boost the security of the application and prevent malicious script execution.
1313

14-
## Cross-Site Scritping
14+
## Cross-Site Scripting
1515

1616
### XSS Attacks
1717

Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
---
2+
title: FAQ
3+
page_title: Security FAQ
4+
description: "Find answers to common questions about securing {{ site.product }} components, including how to report vulnerabilities, handle third-party dependencies, and receive security fixes."
5+
slug: security_aspnetmvc6_aspnetmvc
6+
position: 3
7+
---
8+
9+
# Frequently Asked Questions (FAQ)
10+
11+
In this article, you will find essential information and resources to help you secure {{ site.product }} components. Whether you need to report vulnerabilities, manage third-party dependencies, or understand how security fixes are delivered, this FAQ provides clear guidance on our security processes. Explore best practices and learn how Progress ensures the highest level of security for its products, from vulnerability reporting to compliance with industry standards.
12+
13+
## How can I submit a security vulnerability report?
14+
15+
If you have identified a potential security vulnerability in a Telerik or Kendo UI product, you can report it through the following channels:
16+
17+
- **For Progress Customers**: Submit a security report by opening a support ticket through the [Technical Support Center](https://www.telerik.com/account/support-center). Provide detailed information, including the steps to reproduce the issue and any relevant reports or screenshots.
18+
19+
- **For Security Researchers**: Ethical hackers and security researchers can report vulnerabilities through our [Bugcrowd Vulnerability Disclosure Program](https://bugcrowd.com/engagements/whatsupgold-vdp). This platform ensures that security issues are addressed efficiently and transparently.
20+
21+
We will review the report and follow up in line with our security processes, making every effort to resolve confirmed vulnerabilities in a timely manner.
22+
23+
---
24+
25+
## What if clients are using a third-party scanning tool and want our assessment?
26+
27+
Clients can open a support ticket through the [Technical Support Center](https://www.telerik.com/account/support-center) for the respective product and submit detailed information, including scan reports (PDF/Word/Excel/Screenshot) triggered against a no-minified version of the scripts and steps to reproduce or evidence of the issue. Our team will review and respond accordingly. We treat Security Vulnerability reports with **highest priority** and we engage with our internal Security Champions for revisions.
28+
29+
> Tip: We recommend running the scan against the latest product version, as the problem may have already been resolved.
30+
31+
---
32+
33+
## What is Progress's policy on handling third-party dependencies?
34+
35+
Progress uses leading commercial tools to automatically monitor and update third-party dependencies in our Telerik and Kendo GitHub projects. Alerts are set up for all GitHub-hosted products, and any identified vulnerable dependencies are addressed by the repository owners and our dedicated security team.
36+
37+
Note: Our definition of "done" includes successful builds that are scanned using top security scanning tools, and the resolution of any security alerts.
38+
39+
---
40+
41+
## Is security integrated into the CI pipeline?
42+
43+
Yes, for example, our CI builds are integrated with some of the leading security scanning tools to ensure that new code commits do not introduce vulnerabilities or insecure code.
44+
45+
---
46+
47+
## How does Progress prioritize security reports?
48+
49+
We prioritize security vulnerability reports with the highest urgency. When we receive an inquiry or vulnerability report, we begin by analyzing the issue to determine whether it's a false positive or a valid concern. If the report is confirmed as valid, we assess its severity using the CVSS (Common Vulnerability Scoring System) and promptly release a patch based on the severity level.
50+
51+
---
52+
53+
## How are security fixes shipped?
54+
55+
Security fixes are typically included in the next product release. Similar to the bug fixes policy, we maintain and commit to support the latest version of the product. That said, if you want to benefit from a security fix, you will need to upgrade to the version where the fix exists.
56+
57+
---
58+
59+
## How are customers notified about security fixes?
60+
61+
Once a vulnerability is fixed, we aim to release a patched version of the product. Depending on the severity of the issue, we may notify customers through CVE publications, email, blog posts, KB articles, or Release Notes for the specific product.
62+
63+
---
64+
65+
## Does Progress/Telerik have any security certifications or accreditation, such as SOC 2 or other industry-recognized standards?
66+
67+
Yes, Progress and DevTools products perform annual SOC 2 compliance, which validates our commitment to security, confidentiality, and privacy. You can find more information about our compliance on the [Progress Trust Center](https://www.progress.com/trust-center). Additionally, we align our security practices with industry-leading frameworks to maintain and continually improve our high security standards.

docs-aspnet/security/security.md

Lines changed: 85 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,85 @@
1+
---
2+
title: Overview
3+
page_title: Security Overview
4+
description: "Learn how to secure {{ site.product }} components and your web application with best practices, vulnerability reporting, and component-specific security guidelines."
5+
slug: security_information_aspnetmvc6_aspnetmvc
6+
tags: telerik, asp, net, core, asp.net, security, mvc, xss, owasp, csp
7+
position: 1
8+
---
9+
10+
# Security
11+
12+
In today's world, security is more critical than ever. At Progress, we prioritize our customers' security, ensuring that our products are built with a strong foundation to safeguard their data and operations. We are committed to identifying and addressing potential vulnerabilities to provide our clients with the highest level of protection and confidence in our products.
13+
14+
## Purpose of this Article
15+
16+
This article covers common security-related questions, best practices, and the tools and processes we use to ensure the security of our products. It also outlines how customers and security researchers can report security issues, including our processes to mitigate risks. We provide guidance for submitting security reports through technical support or Bugcrowd, ensuring a clear pathway for identifying and addressing security concerns.
17+
18+
## Reporting Security Vulnerabilities
19+
20+
Whether you're a customer encountering an issue or a security researcher, we have processes to ensure a swift response and evaluation. Below are the steps for Progress customers and security researchers to report potential security vulnerabilities:
21+
22+
### For Progress Customers
23+
24+
At Progress, we work diligently to identify and fix security vulnerabilities in our products. Customers who believe they have identified a security issue should contact Technical Support for an evaluation. This allows us to document the issue and have our engineering teams confirm and address it as needed. Customers can submit reports through our support center:
25+
- [Technical Support](https://www.telerik.com/account/support-center)
26+
- [Contact Us](https://www.telerik.com/account/support-center/contact-us/technical-support)
27+
28+
### For Security Researchers
29+
30+
We value the contributions of security researchers and ethical hackers. If a researcher identifies a potential vulnerability, they can submit it via our [Bugcrowd](https://bugcrowd.com/engagements/devtools-vdp) platform. We aim to meet the following response times:
31+
32+
| Type of Response | SLO (in business days) |
33+
|------------------|------------------------|
34+
| First Response | 7 days |
35+
| Time to Triage | 10 days |
36+
| Time to Resolution| Depends on severity |
37+
38+
For more information, visit:
39+
- [Bugcrowd Vulnerability Disclosure Program](https://bugcrowd.com/engagements/devtools-vdp)
40+
- [Progress Trust Center](https://www.progress.com/trust-center)
41+
- [Vulnerability Reporting Policy](https://www.progress.com/trust-center/vulnerability-reporting-policy)
42+
43+
44+
## What We Do to Mitigate Risk
45+
46+
Our dedicated security team, comprised of experienced developers and security experts—our "Security Champions"—reviews all web, desktop, and mobile products technologies for potential vulnerabilities. These vulnerabilities may be internally identified, reported by third-party tools, or flagged externally.
47+
48+
We actively manage the following strategies to mitigate risks:
49+
50+
### Prevention
51+
52+
Our primary goal is to prevent security issues before product delivery. We use the following prevention techniques:
53+
54+
- **Internal Logging**: Every potential security issue is logged, researched, tested, and verified. Issues deemed valid are assessed using a CVSS score, with critical issues prioritized.
55+
- **Third-Party Static Analysis Testing**: We use some of the leading security scanning tools in the market to scan for vulnerabilities in our software code. Regular scans are conducted, and results are reviewed to address vulnerabilities and mitigate false positives.
56+
57+
58+
## Third-Party Dependencies Handling
59+
60+
We leverage leading commercial tools to automatically monitor and update third-party dependencies in our Telerik and Kendo GitHub projects, ensuring they remain secure and up-to-date. Alerts are enabled for all GitHub-hosted products, and the identified vulnerable dependencies are addressed by the repository code owners and security champions.
61+
62+
>Note: Our definition of "Done" includes successful builds that are scanned using top security scanning tools, and the resolution of any security alerts.
63+
64+
65+
## Content Security Compliance
66+
67+
Content Security Policy (CSP) is a critical security measure that helps detect and mitigate the risks of content injection vulnerabilities, such as cross-site scripting (XSS) and data injection attacks. Telerik and Kendo UI components are designed to be CSP-compliant, ensuring secure integration into customer projects.
68+
69+
For more detailed information on CSP compliance for {{ site.product }}, refer to the following article:
70+
- [Content Security Policy]({% slug troubleshooting_content_security_policy_aspnetmvc %})
71+
72+
This resource provides guidelines on how to configure your ASP.NET Web application to comply with CSP requirements when using {{ site.product }} components.
73+
74+
## OWASP Top 10 Alignment
75+
76+
We closely monitor the [OWASP Top 10](https://owasp.org/www-project-top-ten/) list of security risks and align our security practices with these industry-leading standards. Regular updates ensure that our products address evolving security threats and vulnerabilities.
77+
78+
## Telerik Component-Specific Security Guidelines
79+
80+
{{ site.product }} has a dedicated security-related article with security tips for individual components and general cross-site scripting (XSS) prevention tips. The article outlines best practices and recommendations for securing the components and mitigating potential risks. Below is a list of available security articles for specific controls:
81+
82+
- [Security and Validation]({%slug aspnetcore_security_gettingstarted %})
83+
84+
For more detailed answers to common security-related questions, please refer to our [Security FAQ page]({%slug security_aspnetmvc6_aspnetmvc %}).
85+

docs/api/javascript/ui/dropdowntree.md

Lines changed: 49 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -562,28 +562,35 @@ The supported filter values are `startswith`, `endswith` and `contains`.
562562

563563
#### Example - set the filter
564564

565-
<input id="dropdowntree"/>
566-
565+
<input id="ddt" />
567566
<script>
568-
$("#dropdowntree").kendoDropDownTree({
569-
dataSource: [{ text: "a-item1", value: 1 }, { text: "b-item2", value: 2 }],
570-
filter: "contains"
571-
});
567+
$("#ddt").kendoDropDownTree({
568+
dataSource: [
569+
{ text: "Chai", value: 1 },
570+
{ text: "Chang", value: 2 },
571+
{ text: "Tofu", value: 3 }
572+
],
573+
filter: "contains"
574+
});
572575
</script>
573576

574577
### filterLabel `String`
575578

576579
When filtering is enabled, allows aria-label to be defined for the filter input element.
577580

578-
#### Example - set the filter
581+
#### Example - set the filter label
579582

580583
<input id="ddt" />
581584
<script>
582-
$("#ddt").kendoDropDownTree({
583-
dataSource: ["Chai", "Chang", "Tofu"],
584-
filter: "contains",
585-
filterLabel: "custom title"
586-
});
585+
$("#ddt").kendoDropDownTree({
586+
dataSource: [
587+
{ text: "Chai", value: 1 },
588+
{ text: "Chang", value: 2 },
589+
{ text: "Tofu", value: 3 }
590+
],
591+
filter: "contains",
592+
filterLabel: "custom title"
593+
});
587594
</script>
588595

589596
### fillMode `String`*(default: "solid")*
@@ -600,7 +607,11 @@ Sets a value controlling how the color is applied. Can also be set to the follow
600607
<input id="ddt" />
601608
<script>
602609
$("#ddt").kendoDropDownTree({
603-
dataSource: ["Chai", "Chang", "Tofu"],
610+
dataSource: [
611+
{ text: "Chai", value: 1 },
612+
{ text: "Chang", value: 2 },
613+
{ text: "Tofu", value: 3 }
614+
],
604615
fillMode: "flat"
605616
});
606617
</script>
@@ -664,7 +675,7 @@ The function context (available through the keyword `this`) will be set to the w
664675
dataValueField: "id",
665676
label: function() {
666677
return "Fruits";
667-
}ß
678+
}
668679
});
669680
</script>
670681

@@ -1278,12 +1289,16 @@ Sets a value controlling the border radius. Can also be set to the following str
12781289
- "large"
12791290
- "full"
12801291

1281-
#### Example - sets the fillMode
1292+
#### Example - set large border radius
12821293

12831294
<input id="ddt" />
12841295
<script>
12851296
$("#ddt").kendoDropDownTree({
1286-
dataSource: ["Chai", "Chang", "Tofu"],
1297+
dataSource: [
1298+
{ text: "Chai", value: 1 },
1299+
{ text: "Chang", value: 2 },
1300+
{ text: "Tofu", value: 3 }
1301+
],
12871302
rounded: "large"
12881303
});
12891304
</script>
@@ -1297,12 +1312,16 @@ Sets a value controlling size of the component. Can also be set to the following
12971312
- "large"
12981313
- "none"
12991314

1300-
#### Example - sets the fillMode
1315+
#### Example - set the size
13011316

13021317
<input id="ddt" />
13031318
<script>
13041319
$("#ddt").kendoDropDownTree({
1305-
dataSource: ["Chai", "Chang", "Tofu"],
1320+
dataSource: [
1321+
{ text: "Chai", value: 1 },
1322+
{ text: "Chang", value: 2 },
1323+
{ text: "Tofu", value: 3 }
1324+
],
13061325
size: "large"
13071326
});
13081327
</script>
@@ -1321,17 +1340,18 @@ The [data source](/api/javascript/data/hierarchicaldatasource) of the widget. Co
13211340

13221341
<input id="dropdowntree"/>
13231342
<script>
1324-
$("#dropdowntree").kendoDropDownTree({
1325-
dataSource: [
1326-
{ name: "Apples" },
1327-
{ name: "Oranges" }
1328-
],
1329-
dataTextField: "name",
1330-
dataValueField: "name"
1331-
});
1332-
var dropdowntree = $("#dropdowntree").data("kendoDropDownTree");
1333-
dropdowntree.dataSource.add({ name: "Appricot" });
1334-
dropdowntree.search("A");
1343+
$("#dropdowntree").kendoDropDownTree({
1344+
dataSource: [
1345+
{ name: "Apples" },
1346+
{ name: "Oranges" }
1347+
],
1348+
filter: "startswith",
1349+
dataTextField: "name",
1350+
dataValueField: "name"
1351+
});
1352+
var dropdowntree = $("#dropdowntree").data("kendoDropDownTree");
1353+
dropdowntree.dataSource.add({ name: "Appricot" });
1354+
dropdowntree.open();
13351355
</script>
13361356

13371357
### options `Object`

docs/api/javascript/ui/editor.md

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2400,6 +2400,7 @@ Sets the subject of the PDF file.
24002400
<script>
24012401
$("#editor").kendoEditor({
24022402
tools: ["pdf"],
2403+
pdf:{
24032404
subject : "Kendo UI Editor overview"
24042405
}
24052406
});
@@ -2687,8 +2688,7 @@ and a contenteditable iframe is generated.
26872688
<script>
26882689
$("#editor").kendoEditor({
26892690
stylesheets: [
2690-
"base.css",
2691-
"theme.css"
2691+
"https://demos.telerik.com/kendo-ui/content/web/editor/editorStyles.css"
26922692
]
26932693
});
26942694
</script>
@@ -4242,13 +4242,14 @@ The URL responsible for serving the original file. A file name placeholder shoul
42424242
<textarea id="editor"></textarea>
42434243
<script>
42444244
$("#editor").kendoEditor({
4245-
tools: [
4246-
"insertFile"
4247-
],
4245+
tools: [
4246+
"insertFile"
4247+
],
42484248
fileBrowser: {
42494249
transport: {
42504250
fileUrl: function (e) {
42514251
return "/content/files/" + e;
4252+
}
42524253
}
42534254
}
42544255
});

0 commit comments

Comments
 (0)