{"id":16543541,"url":"https://github.com/codemation/fraudfinder","last_synced_at":"2025-03-04T09:43:32.283Z","repository":{"id":39831717,"uuid":"360446172","full_name":"codemation/fraudfinder","owner":"codemation","description":null,"archived":false,"fork":false,"pushed_at":"2021-04-23T21:20:20.000Z","size":21,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-01-14T13:54:01.522Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/codemation.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2021-04-22T08:26:08.000Z","updated_at":"2022-06-25T04:40:13.000Z","dependencies_parsed_at":"2022-09-14T18:23:33.638Z","dependency_job_id":null,"html_url":"https://github.com/codemation/fraudfinder","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/codemation%2Ffraudfinder","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codemation%2Ffraudfinder/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codemation%2Ffraudfinder/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codemation%2Ffraudfinder/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/codemation","download_url":"https://codeload.github.com/codemation/fraudfinder/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":241827078,"owners_count":20026599,"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-10-11T19:00:28.554Z","updated_at":"2025-03-04T09:43:32.262Z","avatar_url":"https://github.com/codemation.png","language":"Python","readme":"# fraud finder\n\nfraudfinder is a simple web application / api which compares two input Persons and provides the probability that these two persons are the same \u0026 records the detection result in a database.\n\n## Quick Start\n\nBuild local container\n```bash\ndocker build docker/ -t fraud_finder:local \n```\n\nPull From Repo - automatic if targeted during docker run\n```bash\ndocker pull joshjamison/fraud-finder:0.0.0 \n```\n\n\n### Determine local IP Address\nVerify the local IP address of the Docker host, this is required to allow communication via the local authenticaiton server\n\n```bash\nifconfig \n\n# Example\nenp60s0: flags=4163\u003cUP,BROADCAST,RUNNING,MULTICAST\u003e  mtu 1500\n        inet 192.168.1.18  netmask 255.255.255.0  broadcast 192.168.1.255\n```\n\n### Start Auth Server\n\n```bash\nmkdir -p $(pwd)/easyauth-vol\n\ndocker run --name easyauth \\\n    -e DB_TYPE=sqlite \\\n    -e DB_NAME=auth \\\n    -e DB_LOCAL_PATH=/mnt/easyauth \\\n    -e ISSUER=EasyAuth \\\n    -e SUBJECT=EasyAuthAuth \\\n    -e AUDIENCE=EasyAuthApis \\\n    -e KEY_PATH=/mnt/easyauth \\\n    -e KEY_NAME=test_key \\\n    -v $(pwd)/easyauth-vol:/mnt/easyauth \\\n    -p 8220:8220 \\\n    -d joshjamison/easyauth:v0.0.0\n```\n\n#### Pull Adminstrator Password from logs\n\n```bash\n$ docker logs easyauth[2021-04-23 15:36:07 +0000] [6] [INFO] Starting gunicorn 20.1.0[2021-04-23 15:36:07 +0000] [6] [INFO] Listening at: http://0.0.0.0:8220 (6)\n[2021-04-23 15:36:07 +0000] [6] [INFO] Using worker: uvicorn.workers.UvicornWorker\n[2021-04-23 15:36:07 +0000] [8] [INFO] Booting worker with pid: 8\n[2021-04-23 15:36:07 +0000] [8] [INFO] Started server process [8]\n[2021-04-23 15:36:07 +0000] [8] [INFO] Waiting for application startup.\n04-23 15:36 EasyAuthServer ERROR    detected new EasyAuth server, created admin user with password: cwmykhzj\n[2021-04-23 15:36:09 +0000] [8] [INFO] Application startup complete.\n```\n\n### Start Fraud Finder Service \n\n#### Prepare Container environment\n\n```bash\nmkdir -p $(pwd)/fraud-finder-vol\n\n```\nCopy public generated public RSA key from auth server into fraud-finder-vol\n\n```bash\ncp $(pwd)/easyauth-vol/test_key.pub $(pwd)/fraud-finder-vol\n```\n\n#### Start Fraud Finder Container\n```bash\n\ndocker run --name fraud-finder \\\n     -v $(pwd)/fraud-finder-vol:/mnt/database/ \\\n     -e DB_LOCATION=/mnt/database \\\n     -e KEY_PATH=/mnt/database \\\n     -e KEY_NAME=test_key \\\n     -e TOKEN_SERVER_PATH='http://192.168.1.18:8220/auth/token' \\\n     -p 8221:8221 \\\n     -d joshjamison/fraud-finder:0.0.0\n```\n\n### Permissions \n- Fraud Finder will allow users within the 'administrators' group to the API / GUI. \n- Fraud Finder will communicate with the Authenticaiton server for login requests to pull valid tokens. \n\n### Stack\n- FastAPI - Web Framework\n- Gunicorn / Uvicorn - ASGI web server\n- [EasyAuth](https://github.com/codemation/easyauth) - JWT Authentication / Authorization framework\n- [EasyAdmin](https://github.com/codemation/easyadmin) - GUI FrontEnd Generator \n- [aiopyql](https://github.com/codemation/aiopyql) - Database \u0026 Caching","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcodemation%2Ffraudfinder","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcodemation%2Ffraudfinder","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcodemation%2Ffraudfinder/lists"}