{"id":13491642,"url":"https://github.com/tsuru/acl-api","last_synced_at":"2025-04-26T02:32:04.538Z","repository":{"id":65331962,"uuid":"588300155","full_name":"tsuru/acl-api","owner":"tsuru","description":"API that stores rules of network to be consumed by acl-operator","archived":false,"fork":false,"pushed_at":"2024-09-30T13:15:29.000Z","size":266,"stargazers_count":1,"open_issues_count":6,"forks_count":2,"subscribers_count":4,"default_branch":"main","last_synced_at":"2025-04-04T06:11:12.710Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tsuru.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-01-12T19:54:18.000Z","updated_at":"2024-09-30T13:09:33.000Z","dependencies_parsed_at":"2024-05-09T13:59:42.624Z","dependency_job_id":"a24040ac-b696-4fa1-aa5a-1c4f9eb1a8bd","html_url":"https://github.com/tsuru/acl-api","commit_stats":null,"previous_names":[],"tags_count":9,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tsuru%2Facl-api","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tsuru%2Facl-api/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tsuru%2Facl-api/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tsuru%2Facl-api/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tsuru","download_url":"https://codeload.github.com/tsuru/acl-api/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250922127,"owners_count":21508279,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-07-31T19:00:58.924Z","updated_at":"2025-04-26T02:32:04.267Z","avatar_url":"https://github.com/tsuru.png","language":"Go","funding_links":[],"categories":["Go"],"sub_categories":[],"readme":"# acl-api\nAPI that stores rules of network to be consumed by acl-operator\n\n\n# Architecture\n\n```mermaid\ngraph TD;\n    developer[Developer];\n    tsuru[TSURU API];\n    aclapi[ACL-API];\n    mongodb[(MongoDB)];\n    acl-operator[acl-operator];\n    network-policies[Kubernetes Network Policies]\n\n    developer -- Manage ACL Rules --\u003e tsuru;\n    tsuru --\u003e aclapi;\n    aclapi --\u003e mongodb;\n    acl-operator -- Pull Rules ----\u003e aclapi\n\n    click tsuru \"https://www.github.com/tsuru/tsuru\" \"Access github project\"\n    click aclapi \"https://www.github.com/tsuru/acl-api\" \"Access github project\"\n\n    click acl-operator \"https://www.github.com/tsuru/acl-operator\" \"Access github project\"\n    click network-policies \"https://kubernetes.io/docs/concepts/services-networking/network-policies/\" \"Read more about kubernetes network policies\"\n\n    subgraph \"cluster(s) [1..N]\"\n      acl-operator -- Manage --\u003e network-policies\n    end\n\n```\n\n# concepts\n\n## rule\n\nRule is a dynamic target that tsuru application connect into, rule can  translated into a firewall rules or kubernetes network policies delegating capacity to the drivers, the responsability of acl-api is to store these rules and serve as a source of truth of all network permissions.\n\n## service instance\n\nTsuru API provides a contract to extend app with other apis, acl-api used this generic resource to gather many rules into one shareable resource, it means that you can add many rules into a service instance, and bind it service instance to many apps.\n\n\n# artifacts\n\n- [Docker Hub Repository](https://hub.docker.com/r/tsuru/acl-api)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftsuru%2Facl-api","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftsuru%2Facl-api","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftsuru%2Facl-api/lists"}