# Copyright 2024 RustFS Team # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. [package] name = "rustfs-iam" edition.workspace = true license.workspace = true repository.workspace = true rust-version.workspace = true version.workspace = true homepage.workspace = true description = "Identity and Access Management (IAM) for RustFS, providing user management, roles, and permissions." keywords = ["iam", "identity", "access-management", "rustfs", "Minio"] categories = ["web-programming", "development-tools", "authentication"] documentation = "https://docs.rs/rustfs-iam/latest/rustfs_iam/" [lints] workspace = true [dependencies] rustfs-credentials = { workspace = true } rustfs-config = { workspace = true, features = ["server-config-model"] } tokio = { workspace = true, features = ["fs", "rt-multi-thread"] } time = { workspace = true, features = ["serde-human-readable", "macros"] } serde = { workspace = true, features = ["derive", "rc"] } rustfs-ecstore = { workspace = true } rustfs-storage-api = { workspace = true } rustfs-policy.workspace = true serde_json = { workspace = true, features = ["raw_value"] } async-trait.workspace = true thiserror.workspace = true arc-swap = { workspace = true } rustfs-crypto = { workspace = true } futures.workspace = true base64-simd = { workspace = true } jsonwebtoken = { workspace = true, features = ["aws_lc_rs"] } tracing.workspace = true rustfs-madmin.workspace = true rustfs-utils = { workspace = true, features = ["egress", "hash", "path"] } rustfs-io-metrics.workspace = true tokio-util = { workspace = true, features = ["io", "compat"] } pollster.workspace = true reqwest = { workspace = true } moka = { workspace = true, features = ["future"] } openidconnect = { workspace = true, default-features = false, features = ["accept-rfc3339-timestamps"] } http = { workspace = true } url = { workspace = true } [dev-dependencies] pollster.workspace = true rustfs-test-utils = { workspace = true } serial_test = { workspace = true } temp-env = { workspace = true, features = ["async_closure"] } tempfile = { workspace = true } [lib] doctest = false