Class ReportDocumentUtils
Secure report document path resolution:
- Accepts only known report extensions (extension gate applied before any filesystem access).
- Normalizes paths (slashes, trimming, collapse of redundant leading UNC backslashes) for consistent comparison.
- When validation is enabled, enforces containment within a configured base directory (or allowed UNC host/share root) using boundary-aware checks.
- Rejects traversal attempts that escape containment and any use of reparse points (junctions, symlinks) inside the base path to prevent directory indirection.
- Applies an optional UNC host/share allow-list on Windows before performing existence checks to avoid unintended network calls.
- Centralizes the existence check after candidate path resolution; candidate helpers never access the filesystem directly.
- Fails closed (returns null) on normalization or IO exceptions.
Inheritance
System.Object
ReportDocumentUtils
Namespace: Telerik.Reporting.Utils
Assembly: Telerik.Reporting.dll
Syntax
public static class ReportDocumentUtils
Methods
IsSupportedReportDocument(String)
Declaration
public static bool IsSupportedReportDocument(string path)
Parameters
|
System.String
path
|
Returns
|
System.Boolean
|