Skip to content

Commit 09c1e14

Browse files
committed
Merge branch 'main' into devx/boostrap-db
2 parents 71258e1 + 57db5a2 commit 09c1e14

File tree

1 file changed

+5
-5
lines changed

1 file changed

+5
-5
lines changed

README.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -125,7 +125,7 @@ The application is configurable via environment variables.
125125
- **Default:**
126126
```json
127127
{
128-
"^/search$": ["POST"],
128+
"^/search$": ["GET", "POST"],
129129
"^/collections/([^/]+)/items$": ["GET", "POST"]
130130
}
131131
```
@@ -138,7 +138,7 @@ While this project aims to provide utility out-of-the-box as a runnable applicat
138138

139139
### Middleware Stack
140140

141-
The middleware stack is processed in reverse order (bottom to top):
141+
Requests pass through a chain of middleware, each performing individual tasks:
142142

143143
1. **EnforceAuthMiddleware**
144144

@@ -156,8 +156,8 @@ The middleware stack is processed in reverse order (bottom to top):
156156

157157
- Retrieves [CQL2 expression](http://developmentseed.org/cql2-rs/latest/python/#cql2.Expr) from request state
158158
- Augments request with CQL2 filter:
159-
- Modifies query strings for GET requests
160-
- Modifies JSON bodies for POST/PUT/PATCH requests
159+
- Modifies query strings for `GET` requests
160+
- Modifies JSON bodies for `POST`/`PUT`/`PATCH` requests
161161

162162
4. **OpenApiMiddleware**
163163

@@ -176,7 +176,7 @@ The system supports generating CQL2 filters based on request context to provide
176176
> The upstream STAC API must support the [STAC API Filter Extension](https://github.com/stac-api-extensions/filter/blob/main/README.md), including the [Features Filter](http://www.opengis.net/spec/ogcapi-features-3/1.0/conf/features-filter) conformance class on to the Features resource (`/collections/{cid}/items`) [#37](https://github.com/developmentseed/stac-auth-proxy/issues/37).
177177

178178
> [!TIP]
179-
> Integration with external authorization systems (e.g. [Open Policy Agent](https://www.openpolicyagent.org/)) can be achieved by replacing the default `BuildCql2FilterMiddleware` with a custom async middleware that is capable of generating [`cql2.Expr` objects](https://developmentseed.org/cql2-rs/latest/python/#cql2.Expr).
179+
> Integration with external authorization systems (e.g. [Open Policy Agent](https://www.openpolicyagent.org/)) can be achieved by specifying an `ITEMS_FILTER` that points to a class/function that, once initialized, returns a [`cql2.Expr` object](https://developmentseed.org/cql2-rs/latest/python/#cql2.Expr) when called with the request context.
180180

181181
#### Example GET Request Flow
182182

0 commit comments

Comments
 (0)