-
Notifications
You must be signed in to change notification settings - Fork 192
Open
Description
The getScrollBarSize function in rc-util dynamically injects CSS using updateCSS for measuring scrollbar size. However, it does not respect the nonce value provided via the ConfigProvider's csp property. This leads to CSP violations in environments with strict style-src policies.
Steps to Reproduce
- Set up a project using
antdwith aConfigProviderconfigured to include anoncevalue:<ConfigProvider csp={{ nonce: 'test-nonce', }} >
- Use a component that indirectly triggers the
getScrollBarSizefunction (i.e.Tablefromrc-table) - Observe CSP violations in the browser console, such as:
Refused to apply inline style because it violates the following Content Security Policy directive: "style-src 'self' 'nonce-test-nonce'".
Expected Behavior
The getScrollBarSize function should respect the configured nonce by passing it to the updateCSS function when dynamically injecting styles.
Affected Code
The relevant part of the getScrollBarSize.tsx, line 49:
updateCSS(
`
#${randomId}::-webkit-scrollbar {
${widthStyle}
${heightStyle}
}`,
randomId,
);Additional info
This issue was first introduced in the following commit: Commit Hash: e96b0c6
liuyisnake, gioxoay and meam364
Metadata
Metadata
Assignees
Labels
No labels