-
Notifications
You must be signed in to change notification settings - Fork 58
LCORE-973: CORS configuration #845
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change | ||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| @@ -1,19 +1,9 @@ | ||||||||||||||||||||||||||||||||||||||||||||||
| # Lightspeed Core Stack | ||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||
| ## 🌍 Base URL | ||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||
| | URL | Description | | ||||||||||||||||||||||||||||||||||||||||||||||
| |-----|-------------| | ||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||
| # 🛠️ APIs | ||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||
| --- | ||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||
| # 📋 Components | ||||||||||||||||||||||||||||||||||||||||||||||
| # 📋 Configuration schema | ||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||
|
|
@@ -85,13 +75,23 @@ BYOK RAG configuration. | |||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||
| CORS configuration. | ||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||
| CORS or 'Cross-Origin Resource Sharing' refers to the situations when a | ||||||||||||||||||||||||||||||||||||||||||||||
| frontend running in a browser has JavaScript code that communicates with a | ||||||||||||||||||||||||||||||||||||||||||||||
| backend, and the backend is in a different 'origin' than the frontend. | ||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||
| Useful resources: | ||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||
| - [CORS in FastAPI](https://fastapi.tiangolo.com/tutorial/cors/) | ||||||||||||||||||||||||||||||||||||||||||||||
| - [Wikipedia article](https://en.wikipedia.org/wiki/Cross-origin_resource_sharing) | ||||||||||||||||||||||||||||||||||||||||||||||
| - [What is CORS?](https://dev.to/akshay_chauhan/what-is-cors-explained-8f1) | ||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||
| | Field | Type | Description | | ||||||||||||||||||||||||||||||||||||||||||||||
| |-------|------|-------------| | ||||||||||||||||||||||||||||||||||||||||||||||
| | allow_origins | array | | | ||||||||||||||||||||||||||||||||||||||||||||||
| | allow_credentials | boolean | | | ||||||||||||||||||||||||||||||||||||||||||||||
| | allow_methods | array | | | ||||||||||||||||||||||||||||||||||||||||||||||
| | allow_headers | array | | | ||||||||||||||||||||||||||||||||||||||||||||||
| | allow_origins | array | A list of origins allowed for cross-origin requests. An origin is the combination of protocol (http, https), domain (myapp.com, localhost, localhost.tiangolo.com), and port (80, 443, 8080). Use ['*'] to allow all origins. | | ||||||||||||||||||||||||||||||||||||||||||||||
| | allow_credentials | boolean | Indicate that cookies should be supported for cross-origin requests | | ||||||||||||||||||||||||||||||||||||||||||||||
| | allow_methods | array | A list of HTTP methods that should be allowed for cross-origin requests. You can use ['*'] to allow all standard methods. | | ||||||||||||||||||||||||||||||||||||||||||||||
| | allow_headers | array | A list of HTTP request headers that should be supported for cross-origin requests. You can use ['*'] to allow all headers. The Accept, Accept-Language, Content-Language and Content-Type headers are always allowed for simple CORS requests. | | ||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||
| ## Configuration | ||||||||||||||||||||||||||||||||||||||||||||||
|
|
@@ -373,9 +373,17 @@ Service configuration. | |||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||
| TLS configuration. | ||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||
| See also: | ||||||||||||||||||||||||||||||||||||||||||||||
| - https://fastapi.tiangolo.com/deployment/https/ | ||||||||||||||||||||||||||||||||||||||||||||||
| - https://en.wikipedia.org/wiki/Transport_Layer_Security | ||||||||||||||||||||||||||||||||||||||||||||||
| Transport Layer Security (TLS) is a cryptographic protocol designed to | ||||||||||||||||||||||||||||||||||||||||||||||
| provide communications security over a computer network, such as the | ||||||||||||||||||||||||||||||||||||||||||||||
| Internet. The protocol is widely used in applications such as email, | ||||||||||||||||||||||||||||||||||||||||||||||
| instant messaging, and voice over IP, but its use in securing HTTPS remains | ||||||||||||||||||||||||||||||||||||||||||||||
| the most publicly visible. | ||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||
| Useful resources: | ||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||
| - [FastAPI HTTPS Deployment](https://fastapi.tiangolo.com/deployment/https/) | ||||||||||||||||||||||||||||||||||||||||||||||
| - [Transport Layer Security Overview](https://en.wikipedia.org/wiki/Transport_Layer_Security) | ||||||||||||||||||||||||||||||||||||||||||||||
| - [What is TLS](https://www.ssltrust.eu/learning/ssl/transport-layer-security-tls) | ||||||||||||||||||||||||||||||||||||||||||||||
|
Comment on lines
+376
to
+386
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Fix list indentation for markdown compliance. The unordered list items in the "Useful resources" section are indented by 2 spaces. Remove the indentation to comply with MD007. Apply this diff: Useful resources:
- - [FastAPI HTTPS Deployment](https://fastapi.tiangolo.com/deployment/https/)
- - [Transport Layer Security Overview](https://en.wikipedia.org/wiki/Transport_Layer_Security)
- - [What is TLS](https://www.ssltrust.eu/learning/ssl/transport-layer-security-tls)
+- [FastAPI HTTPS Deployment](https://fastapi.tiangolo.com/deployment/https/)
+- [Transport Layer Security Overview](https://en.wikipedia.org/wiki/Transport_Layer_Security)
+- [What is TLS](https://www.ssltrust.eu/learning/ssl/transport-layer-security-tls)📝 Committable suggestion
Suggested change
🧰 Tools🪛 markdownlint-cli2 (0.18.1)384-384: Unordered list indentation (MD007, ul-indent) 385-385: Unordered list indentation (MD007, ul-indent) 386-386: Unordered list indentation (MD007, ul-indent) 🤖 Prompt for AI Agents |
||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||
| | Field | Type | Description | | ||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||
| Original file line number | Diff line number | Diff line change | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|
|
|
@@ -64,8 +64,8 @@ def test_cors_improper_configuration() -> None: | |||||||||
| """Test the CORS configuration.""" | ||||||||||
| expected = ( | ||||||||||
| "Value error, Invalid CORS configuration: " | ||||||||||
| + "allow_credentials can not be set to true when allow origins contains '\\*' wildcard." | ||||||||||
| + "Use explicit origins or disable credential." | ||||||||||
| + "allow_credentials can not be set to true when allow origins contains the '\\*' wildcard." | ||||||||||
| + "Use explicit origins or disable credentials." | ||||||||||
|
Comment on lines
+67
to
+68
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Missing space causes sentence concatenation issue. Line 68 lacks a leading space, causing the two sentences to concatenate without separation: Apply this diff to add the missing space: - + "Use explicit origins or disable credentials."
+ + " Use explicit origins or disable credentials."📝 Committable suggestion
Suggested change
🤖 Prompt for AI Agents |
||||||||||
| ) | ||||||||||
|
|
||||||||||
| with pytest.raises(ValueError, match=expected): | ||||||||||
|
|
||||||||||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fix list indentation for markdown compliance.
The unordered list items in the "Useful resources" section are indented by 2 spaces. Remove the indentation to comply with MD007.
Apply this diff:
📝 Committable suggestion
🧰 Tools
🪛 markdownlint-cli2 (0.18.1)
84-84: Unordered list indentation
Expected: 0; Actual: 2
(MD007, ul-indent)
85-85: Unordered list indentation
Expected: 0; Actual: 2
(MD007, ul-indent)
86-86: Unordered list indentation
Expected: 0; Actual: 2
(MD007, ul-indent)
🤖 Prompt for AI Agents