4
0

newrelic.go 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. package rules
  2. import (
  3. "github.com/zricethezav/gitleaks/v8/cmd/generate/secrets"
  4. "github.com/zricethezav/gitleaks/v8/config"
  5. )
  6. func NewRelicUserID() *config.Rule {
  7. // define rule
  8. r := config.Rule{
  9. RuleID: "new-relic-user-api-key",
  10. Description: "New Relic user API Key",
  11. Regex: generateSemiGenericRegex([]string{
  12. "new-relic",
  13. "newrelic",
  14. "new_relic",
  15. }, `NRAK-[a-z0-9]{27}`),
  16. SecretGroup: 1,
  17. Keywords: []string{
  18. "NRAK",
  19. },
  20. }
  21. // validate
  22. tps := []string{
  23. generateSampleSecret("new-relic", "NRAK-"+secrets.NewSecret(alphaNumeric("27"))),
  24. }
  25. return validate(r, tps, nil)
  26. }
  27. func NewRelicUserKey() *config.Rule {
  28. // define rule
  29. r := config.Rule{
  30. RuleID: "new-relic-user-api-id",
  31. Description: "New Relic user API ID",
  32. Regex: generateSemiGenericRegex([]string{
  33. "new-relic",
  34. "newrelic",
  35. "new_relic",
  36. }, alphaNumeric("64")),
  37. SecretGroup: 1,
  38. Keywords: []string{
  39. "new-relic",
  40. "newrelic",
  41. "new_relic",
  42. },
  43. }
  44. // validate
  45. tps := []string{
  46. generateSampleSecret("new-relic", secrets.NewSecret(alphaNumeric("64"))),
  47. }
  48. return validate(r, tps, nil)
  49. }
  50. func NewRelicBrowserAPIKey() *config.Rule {
  51. // define rule
  52. r := config.Rule{
  53. RuleID: "new-relic-browser-api-token",
  54. Description: "New Relic ingest browser API token",
  55. Regex: generateSemiGenericRegex([]string{
  56. "new-relic",
  57. "newrelic",
  58. "new_relic",
  59. }, `NRJS-[a-f0-9]{19}`),
  60. SecretGroup: 1,
  61. Keywords: []string{
  62. "NRJS-",
  63. },
  64. }
  65. // validate
  66. tps := []string{
  67. generateSampleSecret("new-relic", "NRJS-"+secrets.NewSecret(hex("19"))),
  68. }
  69. return validate(r, tps, nil)
  70. }