Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var ( ErrInvalidGRPCTLSConfig = errors.New("'OPENFGA_GRPC_TLS_CERT_PATH' and 'OPENFGA_GRPC_TLS_KEY_PATH' env variables must be set") ErrInvalidHTTPTLSConfig = errors.New("'OPENFGA_HTTP_GATEWAY_TLS_CERT_PATH' and 'OPENFGA_HTTP_GATEWAY_TLS_KEY_PATH' env variables must be set") )
Functions ¶
Types ¶
type Config ¶
type Config struct { // If you change any of these settings, please update the documentation at https://github.com/openfga/openfga.dev/blob/main/docs/content/intro/setup-openfga.mdx DatastoreEngine string `default:"memory" split_words:"true"` DatastoreConnectionURI string `split_words:"true"` DatastoreMaxCacheSize int `default:"100000" split_words:"true"` ServiceName string `default:"openfga" split_words:"true"` HTTPPort int `default:"8080" split_words:"true"` RPCPort int `default:"8081" split_words:"true"` MaxTuplesPerWrite int `default:"100" split_words:"true"` MaxTypesPerAuthorizationModel int `default:"100" split_words:"true"` // ChangelogHorizonOffset is an offset in minutes from the current time. Changes that occur after this offset will not be included in the response of ReadChanges. ChangelogHorizonOffset int `default:"0" split_words:"true" ` // ResolveNodeLimit indicates how deeply nested an authorization model can be. ResolveNodeLimit uint32 `default:"25" split_words:"true"` // RequestTimeout is a limit on the time a request may take. If the value is 0, then there is no timeout. RequestTimeout time.Duration `default:"0s" split_words:"true"` GRPCTLSEnabled bool `default:"false" envconfig:"GRPC_TLS_ENABLED"` GRPCTLSCertPath string `envconfig:"GRPC_TLS_CERT_PATH"` GRPCTLSKeyPath string `envconfig:"GRPC_TLS_KEY_PATH"` HTTPTLSEnabled bool `default:"false" envconfig:"HTTP_TLS_ENABLED"` HTTPTLSCertPath string `envconfig:"HTTP_TLS_CERT_PATH"` HTTPTLSKeyPath string `envconfig:"HTTP_TLS_KEY_PATH"` // Authentication. Possible options: none,preshared,oidc AuthMethod string `default:"none" split_words:"true"` AuthPresharedKeys []string `default:"" split_words:"true"` // OIDC authentication AuthOIDCIssuer string `default:"" split_words:"true"` AuthOIDCAudience string `default:"" split_words:"true"` // Logging. Possible options: text,json LogFormat string `default:"text" split_words:"true"` PlaygroundEnabled bool `default:"true" split_words:"true"` PlaygroundPort int `default:"3000" split_words:"true"` // CORS configuration CORSAllowedOrigins []string `default:"*" split_words:"true"` CORSAllowedHeaders []string `default:"*" split_words:"true"` }
func GetServiceConfig ¶
func GetServiceConfig() Config
Click to show internal directories.
Click to hide internal directories.