{"id":20215574,"url":"https://github.com/casdoor/elk-auth-casdoor","last_synced_at":"2025-04-10T14:39:11.371Z","repository":{"id":44952137,"uuid":"446275255","full_name":"casdoor/elk-auth-casdoor","owner":"casdoor","description":"ELK (Elasticsearch, Kibana) auth based on Casdoor","archived":false,"fork":false,"pushed_at":"2022-01-16T14:02:02.000Z","size":25,"stargazers_count":39,"open_issues_count":0,"forks_count":3,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-03-24T13:11:09.586Z","etag":null,"topics":["auth","authentication","elasticsearch","elk","iam","kibana","proxy","sso"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/casdoor.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}},"created_at":"2022-01-10T04:03:17.000Z","updated_at":"2025-02-12T06:39:34.000Z","dependencies_parsed_at":"2022-09-24T22:11:42.849Z","dependency_job_id":null,"html_url":"https://github.com/casdoor/elk-auth-casdoor","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/casdoor%2Felk-auth-casdoor","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/casdoor%2Felk-auth-casdoor/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/casdoor%2Felk-auth-casdoor/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/casdoor%2Felk-auth-casdoor/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/casdoor","download_url":"https://codeload.github.com/casdoor/elk-auth-casdoor/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248233987,"owners_count":21069493,"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":["auth","authentication","elasticsearch","elk","iam","kibana","proxy","sso"],"created_at":"2024-11-14T06:23:22.210Z","updated_at":"2025-04-10T14:39:11.344Z","avatar_url":"https://github.com/casdoor.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# elk-auth-casdoor\nThis is a reverse proxy plugin for authenticating elk's user with casdoor. This plugin intercepts all users' requests towards kibana, check whether this user  is authenticated by casdoor. \n\nRequest will be proceeded if this user has been correctly authenticated. \n\nIf this user hasn't been correctly authenticated, request will be temporarly cached, and the user will be redirect to Casdoor login page. After user correctly logs in through casdoor, the cached request will be restored and sent to kibana. So it's ok if a POST request (or something other than GET) is intercepted, and user won't need to refill the form and resend the request. The reverse proxy will remember it for you.\n\n## Quick start\n\n1. register your proxy as an app of Casdoor.\n\n2. modify the configuration\n\nThe configuration file locates in \"conf/app.conf\".\n```ini\nappname = .\n# port on which the reverse proxy shall be run\nhttpport = 8080\nrunmode = dev\n#EDIT IT IF NECESSARY. The url of this reverse proxy\npluginEndpoint=\"http://localhost:8080\"\n#EDIT IT IF NECESSARY. The url of the kibana \ntargetEndpoint=\"http://localhost:5601\"\n#EDIT IT. The url of casdoor \ncasdoorEndpoint=\"http://localhost:8000\"\n#EDIT IT. The clientID of your reverse proxy in casdoor  \nclientID=ceb6eb261ab20174548d\n#EDIT IT. The clientSecret of your reverse proxy in casdoor \nclientSecret=af928f0ef1abc1b1195ca58e0e609e9001e134f4\n#EDIT IT. The application name of your reverse proxy in casdoor \nappName=ELKProxy\n#EDIT IT. The organization to which your reverse proxy belongs in casdoor\norganization=built-in\n```\n3. `go run main.go`\n\n4. visit \u003chttp://localhost:8080\u003e, and log in following the guidance of redirection, and you shall see kibana protected and authenticated by casdoor.\n\n5. If everything works well, don't forget to block the visits of original kibana's port comming from outside by configurating your firewall(or something else), so that outsiders can only visit kibana via this reverse proxy.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcasdoor%2Felk-auth-casdoor","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcasdoor%2Felk-auth-casdoor","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcasdoor%2Felk-auth-casdoor/lists"}