kingfisher/crates/kingfisher-rules/data/rules/trello.yml
2026-04-06 22:18:58 -07:00

85 lines
2.1 KiB
YAML

rules:
- name: Trello API Token
id: kingfisher.trello.1
pattern: |
(?xi)
\b
trello
(?:.|[\n\r]){0,32}?
(?:
token |
api[_-]?token |
access[_-]?token
)
(?:.|[\n\r]){0,12}?
(
[A-Za-z0-9]{32}
)
\b
pattern_requirements:
min_digits: 2
min_lowercase: 6
ignore_if_contains:
- yourtoken
- placeholder
min_entropy: 3.1
confidence: medium
examples:
- TRELLO_TOKEN=0a1b2c3d4e5f6g7h8i9j0k1l2m3n4p5q
- trello_access_token="Ab12Cd34Ef56Gh78Ij90Kl12Mn34Op56"
validation:
type: Http
content:
request:
method: GET
url: "https://api.trello.com/1/members/me?key={{ TRELLO_KEY | url_encode }}&token={{ TOKEN | url_encode }}"
headers:
Accept: application/json
response_matcher:
- report_response: true
- type: StatusMatch
status: [200]
- type: JsonValid
- type: WordMatch
match_all_words: false
words:
- '"id"'
- '"username"'
depends_on_rule:
- rule_id: kingfisher.trello.2
variable: TRELLO_KEY
references:
- https://developer.atlassian.com/cloud/trello/guides/rest-api/api-introduction/
- https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/
- name: Trello API Key
id: kingfisher.trello.2
visible: false
pattern: |
(?xi)
\b
trello
(?:.|[\n\r]){0,32}?
(?:
api[_-]?key |
app[_-]?key |
key
)
(?:.|[\n\r]){0,12}?
(
[A-Za-z0-9]{32}
)
\b
pattern_requirements:
min_digits: 2
min_lowercase: 6
ignore_if_contains:
- yourkey
- placeholder
min_entropy: 3.1
confidence: medium
examples:
- TRELLO_KEY=0a1b2c3d4e5f6g7h8i9j0k1l2m3n4p5q
- trello_api_key="Ab12Cd34Ef56Gh78Ij90Kl12Mn34Op56"
references:
- https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/