{"adoption": {"forks": 351, "observed_at": "2026-08-28T04:07:30.852451+00:00", "stars": 2937}, "canonical_url": "https://ross.abutalabs.com/products/pingcastle", "card": {"archived": false, "artifact_type": "cli-tool", "description": "PingCastle - Get Active Directory Security at 80% in 20% of the time", "domain": ["security", "developer-tools"], "enriched": true, "function": ["security", "vulnerability-scanning", "monitoring"], "health_score": 98, "homepage": "https://www.pingcastle.com", "language": "C#", "license": "NOASSERTION", "license_family": "other", "maturity": "active", "member_repos": ["netwrix/pingcastle"], "name": "netwrix/pingcastle", "platform": ["windows", "dotnet", "cli"], "pushed_at": "2026-08-11T17:36:31+00:00", "repo": "netwrix/pingcastle", "stars": 2937, "tags": ["active-directory", "entra-id", "risk-assessment", "maturity-model", "audit", "compliance", "penetration-testing", "reporting-tool", "reporting", "devops"], "topics": ["active-directory", "ping-castle", "pingcastle", "security", "mimikatz", "ciso", "reporting-tool", "stig", "nist", "dod", "hipaa", "sox"], "urls": [], "use_cases": ["audit active directory security risks", "score the security of my AD domain", "map domain trusts across the forest", "assess Entra ID security posture", "generate a compliance report for auditors", "find privileged account and delegation misconfigurations", "consolidate health check reports across multiple domains"], "what_it_is": "PingCastle is a C# tool that assesses the security posture of Active Directory and Entra ID environments, producing risk scores, health check reports, and trust maps in minutes. It follows an '80% of the issues in 20% of the time' methodology and supports consolidation dashboards for multi-domain estates.", "when_to_avoid": ["you need continuous real-time AD monitoring rather than point-in-time assessment", "your environment is not Windows/Active Directory based", "you require an exhaustive, exhaustive-scope audit rather than a prioritized risk overview"], "when_to_choose": ["you need a fast, free AD security assessment without deploying agents", "you want maturity scoring and prioritized remediation guidance for management", "you manage many domains and need trust cartography and consolidated dashboards"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/pingcastle", "repo": "netwrix/pingcastle", "role": "main", "score": 98}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:07:30.852451+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T07:33:06.544463+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "857b3c91ff47d4200d62be832a77bd2400e8d04dd7bd4bb266015a345ffbcd9f", "fetched_at": "2026-08-28T04:07:30.852451+00:00", "kind": "readme", "missing": false, "url": "https://github.com/netwrix/pingcastle"}, {"content_hash": "2f12214d5263b44a9e6f411ce796d681125fceaf27c6effa892a9725c610cb1c", "fetched_at": "2026-08-29T09:48:24.029378+00:00", "kind": "homepage", "missing": false, "url": "https://www.pingcastle.com"}, {"content_hash": "11c0671f424710162532f6f5ab75886f66a1e7119561313ded893720d7deff72", "fetched_at": "2026-08-29T09:48:24.043543+00:00", "kind": "site_page", "missing": false, "url": "https://www.pingcastle.com/documentation/overview"}, {"content_hash": "0b8431749798079da54e5b14aa0c2ed47461ce8c16d84a86b9cdbf8d01e9ff66", "fetched_at": "2026-08-29T09:48:24.038671+00:00", "kind": "site_page", "missing": false, "url": "https://www.pingcastle.com/documentation"}, {"content_hash": "9376a5582851777fb89a14f52df97cc9407f1cc0de45ff532865ada56e2bb833", "fetched_at": "2026-08-29T09:48:24.040476+00:00", "kind": "site_page", "missing": false, "url": "https://www.pingcastle.com/documentation/healthcheck"}, {"content_hash": "32c4dba99cef4f7067dda053500e29d1f3c9660aa236bdfd020abbb18f171181", "fetched_at": "2026-08-29T09:48:24.042042+00:00", "kind": "site_page", "missing": false, "url": "https://www.pingcastle.com/documentation/map"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:07:30.852451+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T07:33:06.544463+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "857b3c91ff47d4200d62be832a77bd2400e8d04dd7bd4bb266015a345ffbcd9f", "fetched_at": "2026-08-28T04:07:30.852451+00:00", "kind": "readme", "missing": false, "url": "https://github.com/netwrix/pingcastle"}, {"content_hash": "2f12214d5263b44a9e6f411ce796d681125fceaf27c6effa892a9725c610cb1c", "fetched_at": "2026-08-29T09:48:24.029378+00:00", "kind": "homepage", "missing": false, "url": "https://www.pingcastle.com"}, {"content_hash": "11c0671f424710162532f6f5ab75886f66a1e7119561313ded893720d7deff72", "fetched_at": "2026-08-29T09:48:24.043543+00:00", "kind": "site_page", "missing": false, "url": "https://www.pingcastle.com/documentation/overview"}, {"content_hash": "0b8431749798079da54e5b14aa0c2ed47461ce8c16d84a86b9cdbf8d01e9ff66", "fetched_at": "2026-08-29T09:48:24.038671+00:00", "kind": "site_page", "missing": false, "url": "https://www.pingcastle.com/documentation"}, {"content_hash": "9376a5582851777fb89a14f52df97cc9407f1cc0de45ff532865ada56e2bb833", "fetched_at": "2026-08-29T09:48:24.040476+00:00", "kind": "site_page", "missing": false, "url": "https://www.pingcastle.com/documentation/healthcheck"}, {"content_hash": "32c4dba99cef4f7067dda053500e29d1f3c9660aa236bdfd020abbb18f171181", "fetched_at": "2026-08-29T09:48:24.042042+00:00", "kind": "site_page", "missing": false, "url": "https://www.pingcastle.com/documentation/map"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T07:33:06.544463+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "857b3c91ff47d4200d62be832a77bd2400e8d04dd7bd4bb266015a345ffbcd9f", "fetched_at": "2026-08-28T04:07:30.852451+00:00", "kind": "readme", "missing": false, "url": "https://github.com/netwrix/pingcastle"}, {"content_hash": "2f12214d5263b44a9e6f411ce796d681125fceaf27c6effa892a9725c610cb1c", "fetched_at": "2026-08-29T09:48:24.029378+00:00", "kind": "homepage", "missing": false, "url": "https://www.pingcastle.com"}, {"content_hash": "11c0671f424710162532f6f5ab75886f66a1e7119561313ded893720d7deff72", "fetched_at": "2026-08-29T09:48:24.043543+00:00", "kind": "site_page", "missing": false, "url": "https://www.pingcastle.com/documentation/overview"}, {"content_hash": "0b8431749798079da54e5b14aa0c2ed47461ce8c16d84a86b9cdbf8d01e9ff66", "fetched_at": "2026-08-29T09:48:24.038671+00:00", "kind": "site_page", "missing": false, "url": "https://www.pingcastle.com/documentation"}, {"content_hash": "9376a5582851777fb89a14f52df97cc9407f1cc0de45ff532865ada56e2bb833", "fetched_at": "2026-08-29T09:48:24.040476+00:00", "kind": "site_page", "missing": false, "url": "https://www.pingcastle.com/documentation/healthcheck"}, {"content_hash": "32c4dba99cef4f7067dda053500e29d1f3c9660aa236bdfd020abbb18f171181", "fetched_at": "2026-08-29T09:48:24.042042+00:00", "kind": "site_page", "missing": false, "url": "https://www.pingcastle.com/documentation/map"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:07:30.852451+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:07:30.852451+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:07:30.852451+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T07:33:06.544463+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "857b3c91ff47d4200d62be832a77bd2400e8d04dd7bd4bb266015a345ffbcd9f", "fetched_at": "2026-08-28T04:07:30.852451+00:00", "kind": "readme", "missing": false, "url": "https://github.com/netwrix/pingcastle"}, {"content_hash": "2f12214d5263b44a9e6f411ce796d681125fceaf27c6effa892a9725c610cb1c", "fetched_at": "2026-08-29T09:48:24.029378+00:00", "kind": "homepage", "missing": false, "url": "https://www.pingcastle.com"}, {"content_hash": "11c0671f424710162532f6f5ab75886f66a1e7119561313ded893720d7deff72", "fetched_at": "2026-08-29T09:48:24.043543+00:00", "kind": "site_page", "missing": false, "url": "https://www.pingcastle.com/documentation/overview"}, {"content_hash": "0b8431749798079da54e5b14aa0c2ed47461ce8c16d84a86b9cdbf8d01e9ff66", "fetched_at": "2026-08-29T09:48:24.038671+00:00", "kind": "site_page", "missing": false, "url": "https://www.pingcastle.com/documentation"}, {"content_hash": "9376a5582851777fb89a14f52df97cc9407f1cc0de45ff532865ada56e2bb833", "fetched_at": "2026-08-29T09:48:24.040476+00:00", "kind": "site_page", "missing": false, "url": "https://www.pingcastle.com/documentation/healthcheck"}, {"content_hash": "32c4dba99cef4f7067dda053500e29d1f3c9660aa236bdfd020abbb18f171181", "fetched_at": "2026-08-29T09:48:24.042042+00:00", "kind": "site_page", "missing": false, "url": "https://www.pingcastle.com/documentation/map"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:07:30.852451+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:07:30.852451+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T07:33:06.544463+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "857b3c91ff47d4200d62be832a77bd2400e8d04dd7bd4bb266015a345ffbcd9f", "fetched_at": "2026-08-28T04:07:30.852451+00:00", "kind": "readme", "missing": false, "url": "https://github.com/netwrix/pingcastle"}, {"content_hash": "2f12214d5263b44a9e6f411ce796d681125fceaf27c6effa892a9725c610cb1c", "fetched_at": "2026-08-29T09:48:24.029378+00:00", "kind": "homepage", "missing": false, "url": "https://www.pingcastle.com"}, {"content_hash": "11c0671f424710162532f6f5ab75886f66a1e7119561313ded893720d7deff72", "fetched_at": "2026-08-29T09:48:24.043543+00:00", "kind": "site_page", "missing": false, "url": "https://www.pingcastle.com/documentation/overview"}, {"content_hash": "0b8431749798079da54e5b14aa0c2ed47461ce8c16d84a86b9cdbf8d01e9ff66", "fetched_at": "2026-08-29T09:48:24.038671+00:00", "kind": "site_page", "missing": false, "url": "https://www.pingcastle.com/documentation"}, {"content_hash": "9376a5582851777fb89a14f52df97cc9407f1cc0de45ff532865ada56e2bb833", "fetched_at": "2026-08-29T09:48:24.040476+00:00", "kind": "site_page", "missing": false, "url": "https://www.pingcastle.com/documentation/healthcheck"}, {"content_hash": "32c4dba99cef4f7067dda053500e29d1f3c9660aa236bdfd020abbb18f171181", "fetched_at": "2026-08-29T09:48:24.042042+00:00", "kind": "site_page", "missing": false, "url": "https://www.pingcastle.com/documentation/map"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:07:30.852451+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:07:30.852451+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:07:30.852451+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T07:33:06.544463+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "857b3c91ff47d4200d62be832a77bd2400e8d04dd7bd4bb266015a345ffbcd9f", "fetched_at": "2026-08-28T04:07:30.852451+00:00", "kind": "readme", "missing": false, "url": "https://github.com/netwrix/pingcastle"}, {"content_hash": "2f12214d5263b44a9e6f411ce796d681125fceaf27c6effa892a9725c610cb1c", "fetched_at": "2026-08-29T09:48:24.029378+00:00", "kind": "homepage", "missing": false, "url": "https://www.pingcastle.com"}, {"content_hash": "11c0671f424710162532f6f5ab75886f66a1e7119561313ded893720d7deff72", "fetched_at": "2026-08-29T09:48:24.043543+00:00", "kind": "site_page", "missing": false, "url": "https://www.pingcastle.com/documentation/overview"}, {"content_hash": "0b8431749798079da54e5b14aa0c2ed47461ce8c16d84a86b9cdbf8d01e9ff66", "fetched_at": "2026-08-29T09:48:24.038671+00:00", "kind": "site_page", "missing": false, "url": "https://www.pingcastle.com/documentation"}, {"content_hash": "9376a5582851777fb89a14f52df97cc9407f1cc0de45ff532865ada56e2bb833", "fetched_at": "2026-08-29T09:48:24.040476+00:00", "kind": "site_page", "missing": false, "url": "https://www.pingcastle.com/documentation/healthcheck"}, {"content_hash": "32c4dba99cef4f7067dda053500e29d1f3c9660aa236bdfd020abbb18f171181", "fetched_at": "2026-08-29T09:48:24.042042+00:00", "kind": "site_page", "missing": false, "url": "https://www.pingcastle.com/documentation/map"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:07:30.852451+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:07:30.852451+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T07:33:06.544463+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "857b3c91ff47d4200d62be832a77bd2400e8d04dd7bd4bb266015a345ffbcd9f", "fetched_at": "2026-08-28T04:07:30.852451+00:00", "kind": "readme", "missing": false, "url": "https://github.com/netwrix/pingcastle"}, {"content_hash": "2f12214d5263b44a9e6f411ce796d681125fceaf27c6effa892a9725c610cb1c", "fetched_at": "2026-08-29T09:48:24.029378+00:00", "kind": "homepage", "missing": false, "url": "https://www.pingcastle.com"}, {"content_hash": "11c0671f424710162532f6f5ab75886f66a1e7119561313ded893720d7deff72", "fetched_at": "2026-08-29T09:48:24.043543+00:00", "kind": "site_page", "missing": false, "url": "https://www.pingcastle.com/documentation/overview"}, {"content_hash": "0b8431749798079da54e5b14aa0c2ed47461ce8c16d84a86b9cdbf8d01e9ff66", "fetched_at": "2026-08-29T09:48:24.038671+00:00", "kind": "site_page", "missing": false, "url": "https://www.pingcastle.com/documentation"}, {"content_hash": "9376a5582851777fb89a14f52df97cc9407f1cc0de45ff532865ada56e2bb833", "fetched_at": "2026-08-29T09:48:24.040476+00:00", "kind": "site_page", "missing": false, "url": "https://www.pingcastle.com/documentation/healthcheck"}, {"content_hash": "32c4dba99cef4f7067dda053500e29d1f3c9660aa236bdfd020abbb18f171181", "fetched_at": "2026-08-29T09:48:24.042042+00:00", "kind": "site_page", "missing": false, "url": "https://www.pingcastle.com/documentation/map"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T07:33:06.544463+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "857b3c91ff47d4200d62be832a77bd2400e8d04dd7bd4bb266015a345ffbcd9f", "fetched_at": "2026-08-28T04:07:30.852451+00:00", "kind": "readme", "missing": false, "url": "https://github.com/netwrix/pingcastle"}, {"content_hash": "2f12214d5263b44a9e6f411ce796d681125fceaf27c6effa892a9725c610cb1c", "fetched_at": "2026-08-29T09:48:24.029378+00:00", "kind": "homepage", "missing": false, "url": "https://www.pingcastle.com"}, {"content_hash": "11c0671f424710162532f6f5ab75886f66a1e7119561313ded893720d7deff72", "fetched_at": "2026-08-29T09:48:24.043543+00:00", "kind": "site_page", "missing": false, "url": "https://www.pingcastle.com/documentation/overview"}, {"content_hash": "0b8431749798079da54e5b14aa0c2ed47461ce8c16d84a86b9cdbf8d01e9ff66", "fetched_at": "2026-08-29T09:48:24.038671+00:00", "kind": "site_page", "missing": false, "url": "https://www.pingcastle.com/documentation"}, {"content_hash": "9376a5582851777fb89a14f52df97cc9407f1cc0de45ff532865ada56e2bb833", "fetched_at": "2026-08-29T09:48:24.040476+00:00", "kind": "site_page", "missing": false, "url": "https://www.pingcastle.com/documentation/healthcheck"}, {"content_hash": "32c4dba99cef4f7067dda053500e29d1f3c9660aa236bdfd020abbb18f171181", "fetched_at": "2026-08-29T09:48:24.042042+00:00", "kind": "site_page", "missing": false, "url": "https://www.pingcastle.com/documentation/map"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T07:33:06.544463+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "857b3c91ff47d4200d62be832a77bd2400e8d04dd7bd4bb266015a345ffbcd9f", "fetched_at": "2026-08-28T04:07:30.852451+00:00", "kind": "readme", "missing": false, "url": "https://github.com/netwrix/pingcastle"}, {"content_hash": "2f12214d5263b44a9e6f411ce796d681125fceaf27c6effa892a9725c610cb1c", "fetched_at": "2026-08-29T09:48:24.029378+00:00", "kind": "homepage", "missing": false, "url": "https://www.pingcastle.com"}, {"content_hash": "11c0671f424710162532f6f5ab75886f66a1e7119561313ded893720d7deff72", "fetched_at": "2026-08-29T09:48:24.043543+00:00", "kind": "site_page", "missing": false, "url": "https://www.pingcastle.com/documentation/overview"}, {"content_hash": "0b8431749798079da54e5b14aa0c2ed47461ce8c16d84a86b9cdbf8d01e9ff66", "fetched_at": "2026-08-29T09:48:24.038671+00:00", "kind": "site_page", "missing": false, "url": "https://www.pingcastle.com/documentation"}, {"content_hash": "9376a5582851777fb89a14f52df97cc9407f1cc0de45ff532865ada56e2bb833", "fetched_at": "2026-08-29T09:48:24.040476+00:00", "kind": "site_page", "missing": false, "url": "https://www.pingcastle.com/documentation/healthcheck"}, {"content_hash": "32c4dba99cef4f7067dda053500e29d1f3c9660aa236bdfd020abbb18f171181", "fetched_at": "2026-08-29T09:48:24.042042+00:00", "kind": "site_page", "missing": false, "url": "https://www.pingcastle.com/documentation/map"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T07:33:06.544463+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "857b3c91ff47d4200d62be832a77bd2400e8d04dd7bd4bb266015a345ffbcd9f", "fetched_at": "2026-08-28T04:07:30.852451+00:00", "kind": "readme", "missing": false, "url": "https://github.com/netwrix/pingcastle"}, {"content_hash": "2f12214d5263b44a9e6f411ce796d681125fceaf27c6effa892a9725c610cb1c", "fetched_at": "2026-08-29T09:48:24.029378+00:00", "kind": "homepage", "missing": false, "url": "https://www.pingcastle.com"}, {"content_hash": "11c0671f424710162532f6f5ab75886f66a1e7119561313ded893720d7deff72", "fetched_at": "2026-08-29T09:48:24.043543+00:00", "kind": "site_page", "missing": false, "url": "https://www.pingcastle.com/documentation/overview"}, {"content_hash": "0b8431749798079da54e5b14aa0c2ed47461ce8c16d84a86b9cdbf8d01e9ff66", "fetched_at": "2026-08-29T09:48:24.038671+00:00", "kind": "site_page", "missing": false, "url": "https://www.pingcastle.com/documentation"}, {"content_hash": "9376a5582851777fb89a14f52df97cc9407f1cc0de45ff532865ada56e2bb833", "fetched_at": "2026-08-29T09:48:24.040476+00:00", "kind": "site_page", "missing": false, "url": "https://www.pingcastle.com/documentation/healthcheck"}, {"content_hash": "32c4dba99cef4f7067dda053500e29d1f3c9660aa236bdfd020abbb18f171181", "fetched_at": "2026-08-29T09:48:24.042042+00:00", "kind": "site_page", "missing": false, "url": "https://www.pingcastle.com/documentation/map"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 97, "longevity": 100, "rhythm": 97}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": ["no_license"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 2924, "days_push": 22, "days_rel": 22, "gap_med": 20, "n_releases_24m": 14}, "score": 98, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}