secure_authz 0.1.2

Deny-by-default authorization with RBAC, ABAC, tenant isolation, and web middleware.
Documentation
# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2021"
name = "secure_authz"
version = "0.1.2"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Deny-by-default authorization with RBAC, ABAC, tenant isolation, and web middleware."
documentation = "https://docs.rs/secure_authz"
readme = "README.md"
keywords = [
    "security",
    "authz",
    "rbac",
    "abac",
    "tenant",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/kerberosmansour/SunLitSecurityLibraries"

[features]
actix-web = ["dep:actix-web"]
axum = [
    "dep:axum",
    "dep:axum-core",
    "dep:tower",
]
default = ["axum"]

[lib]
name = "secure_authz"
path = "src/lib.rs"

[[example]]
name = "actix_authz_minimal"
path = "examples/actix_authz_minimal.rs"
required-features = ["actix-web"]

[[example]]
name = "route_coverage"
path = "examples/route_coverage.rs"

[[test]]
name = "e2e_sunlit_imp_m15"
path = "tests/e2e_sunlit_imp_m15.rs"

[[test]]
name = "e2e_sunlit_m6"
path = "tests/e2e_sunlit_m6.rs"

[[test]]
name = "e2e_sunlit_ndt_m4"
path = "tests/e2e_sunlit_ndt_m4.rs"

[[test]]
name = "e2e_sunlit_owasp_m23"
path = "tests/e2e_sunlit_owasp_m23.rs"

[[test]]
name = "prop_deny_default"
path = "tests/prop_deny_default.rs"

[[test]]
name = "sg_gate_a_actix_authz"
path = "tests/sg_gate_a_actix_authz.rs"

[[test]]
name = "sg_gate_a_parity_authz"
path = "tests/sg_gate_a_parity_authz.rs"

[[test]]
name = "sg_gate_a_policy_coverage"
path = "tests/sg_gate_a_policy_coverage.rs"

[[test]]
name = "sunlit_authz_cache"
path = "tests/sunlit_authz_cache.rs"

[[test]]
name = "sunlit_authz_deny_default"
path = "tests/sunlit_authz_deny_default.rs"

[[test]]
name = "sunlit_authz_ownership"
path = "tests/sunlit_authz_ownership.rs"

[[test]]
name = "sunlit_authz_policies"
path = "tests/sunlit_authz_policies.rs"

[[test]]
name = "sunlit_authz_tenant"
path = "tests/sunlit_authz_tenant.rs"

[[test]]
name = "sunlit_imp_authz_cache_tenant"
path = "tests/sunlit_imp_authz_cache_tenant.rs"

[[test]]
name = "sunlit_imp_authz_obligations"
path = "tests/sunlit_imp_authz_obligations.rs"

[[test]]
name = "sunlit_owasp_abac"
path = "tests/sunlit_owasp_abac.rs"

[[test]]
name = "sunlit_owasp_temporal"
path = "tests/sunlit_owasp_temporal.rs"

[dependencies.actix-web]
version = "4"
optional = true

[dependencies.axum]
version = "0.8"
optional = true

[dependencies.axum-core]
version = "0.5"
optional = true

[dependencies.casbin]
version = "2"

[dependencies.http]
version = "1"

[dependencies.lru]
version = "0.18"

[dependencies.secure_device_trust]
version = "0.1.2"
package = "secure_device_trust"

[dependencies.secure_errors]
version = "0.1.2"
package = "secure_errors"

[dependencies.secure_identity]
version = "0.1.2"
package = "secure_identity"

[dependencies.secure_network]
version = "0.1.2"
package = "secure_network"

[dependencies.security_core]
version = "0.1.2"
package = "security_core"

[dependencies.security_events]
version = "0.1.2"
package = "security_events"

[dependencies.serde]
version = "1"
features = ["derive"]

[dependencies.serde_json]
version = "1"

[dependencies.smallvec]
version = "1"
features = ["serde"]

[dependencies.thiserror]
version = "2"

[dependencies.time]
version = "0.3"
features = ["serde"]

[dependencies.tokio]
version = "1"
features = [
    "sync",
    "time",
    "rt",
]

[dependencies.tower]
version = "0.5"
optional = true

[dependencies.tracing]
version = "0.1"

[dependencies.uuid]
version = "1"
features = [
    "v4",
    "serde",
]

[dev-dependencies.actix-web]
version = "4"

[dev-dependencies.axum]
version = "0.8"
features = ["macros"]

[dev-dependencies.http-body-util]
version = "0.1"

[dev-dependencies.proptest]
version = "1"

[dev-dependencies.time]
version = "0.3"

[dev-dependencies.tokio]
version = "1"
features = ["full"]

[dev-dependencies.tower]
version = "0.5"
features = ["util"]

[dev-dependencies.uuid]
version = "1"
features = ["v4"]

[lints.rust.unexpected_cfgs]
level = "warn"
priority = 0
check-cfg = ["cfg(kani)"]