A high performance and flexible authorization/permission engine built for developers and inspired by Google Zanzibar
APACHE-2.0 License
Bot releases are hidden (Show)
Published by jon-whit about 1 year ago
Bounded concurrency limiter for Check and ListObjects queries (#860, #887)
New server configurations can be provided to limit/bound the amount of concurrency that is allowed during query evaluation. These settings can help reduce the impact/burden that a single query (e.g. Check, ListObjects, etc..) can have on the underlying database and OpenFGA server.
--maxConcurrentReadsForListObjects
- The maximum allowed number of concurrent reads in a single ListObjects query.
--maxConcurrentReadsForCheck
- The maximum allowed number of concurrent reads in a single Check query.
--resolveNodeBreadthLimit
- Defines how many nodes on a given level can be evaluated concurrently in a Check resolution tree.
Jaeger persistent storage for traces in docker-compose.yaml
(#888) - thanks @Azanul
retryablehttp
client (#882) - thanks @KlausVii[BREAKING] Imports for OpenFGA protobuf API dependencies (#898)
Problem - Previously we depended on Buf remote generated packages, but they recently deprecated protobuf imports served from the go.buf.build
domain (see Migrate from remote generation alpha). OpenFGA builds are currently broken as a result of this.
Change - We switched our protobuf API dependency from go.buf.build/openfga/go/openfga/api/openfga/v1
to github.com/openfga/api/proto/openfga/v1
. So we no longer use Buf remote generated packages in favor of packages we manage in the openfga/api
repository. This fixes existing build issues.
Impact - Developers using the OpenFGA as a library or the gRPC API must change their protobuf dependency from go.buf.build/openfga/go/openfga/api/openfga/v1
to github.com/openfga/api/proto/openfga/v1
. A global find/replace and package depedency update should fix it. Here's a diff demonstrating the changes for a Go app, for example:
import (
...
- openfgav1 "go.buf.build/openfga/go/openfga/api/openfga/v1"
+ openfgav1 "github.com/openfga/api/proto/openfga/v1"
)
Refactor the Server
constructor to use the options builder pattern (#833)
import (
openfga "github.com/openfga/openfga/pkg/server"
)
s := openfga.New(
&server.Dependencies{...},
&server.Config{...},
)
becomes
import (
openfga "github.com/openfga/openfga/pkg/server"
)
var opts []openfga.OpenFGAServiceV1Option
s := openfga.MustNewServerWithOpts(opts...)
Published by adriantam over 1 year ago
and
) and exclusion (but not
) (#797)Published by jon-whit over 1 year ago
This is the third release candidate that improves ListObjects performance for models involving intersection and/or exclusion (and
or but not
). (https://github.com/openfga/openfga/pull/797). The changes herein include the security patch fix that was introduced for CVE-2023-35933, so if you're using v1.2.0-rc1
or v1.2.0-rc2
, then please upgrade.
To test out the new experimental support for optimized ListObjects you can run OpenFGA with --experimentals optimized-list-objects
. A docker image of this release candidate is available openfga/openfga:v1.2.0-rc3
.
Published by jon-whit over 1 year ago
--verbose
flag has been added to the openfga migrate
command (#776)openfga validate-models
CLI command has been introduced to validate all models across all stores (#817)grpc-health-probe
binary included in OpenFGA builds (#784)Published by jon-whit over 1 year ago
This is the second release candidate that improves ListObjects performance for models involving intersection and/or exclusion (and or but not). (https://github.com/openfga/openfga/pull/797)
To test out the new experimental support for optimized ListObjects you can run OpenFGA with --experimentals optimized-list-objects
. A docker image of this release candidate is available openfga/openfga:v1.2.0-rc2
.
Published by jon-whit over 1 year ago
optimized-list-objects
experimental flag to improve ListObjects performance for models involving intersection and/or exclusion (and
or but not
). (#797)
To test out the new experimental support for optimized ListObjects you can run OpenFGA with --experimentals optimized-list-objects
. A docker image of this release candidate is available openfga/openfga:v1.2.0-rc1
.
Published by adriantam over 1 year ago
Published by adriantam over 1 year ago
OpenFGA with Postgres is now considered stable and ready for production usage.
Published by craigpastro about 2 years ago
Published by miparnisari about 2 years ago
migrate
command (#236)