Skip to content

PPA Tools PPA Tools: Inputs & Outputs

Summary

Each plugin uses a set of dictionaries to store data.

These are used by plugin actions as both inputs and outputs.

This page will cover:

  • The dictionaries used in this plugin
  • The information each dictionary contains

Dictionary Types

Date

  • Contains date & time information

  • Used as an output from now

Example

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
display: Tue Aug 25 08:10:45 2020
date: 25/08/2020
time: '08:10:45'
day: 25
day_name: Tuesday
month: 8
month_name: August
year: 2020
hour: 8
minutes: 10
seconds: 45

Date Keys

display: The day, month, date, time, & year displayed together

date: The date in dd/mm/yyyy format

time: The time in hh:mm:ss format

day: The day as a number

day_name: The name of the day

month: The month as a number

month_name: The name of the month

year: The year as a number

hour: The hour as a number

minutes: The minutes as a number

seconds: The seconds as a number

timestamp: The date & time as a timestamp

DictionaryPassword

  • Contains a password generated using a combination of dictionary words

  • Several formats of the password are available to use

Password Formats

The words key contains a list of each word in the password in lower case.

The following keys contain the password with no spaces:

  • camel

  • lower

  • upper

  • mixed

  • title

The following keys contain the password with a space between each word:

  • lower_spaced

  • upper_spaced

  • mixed_spaced

  • title_spaced

See below for more information on how spaces affect password length.

Spaces & Password Length

Formats that include spaces will have the spaces added after the password is generated.

This makes these formats longer than the supplied password length.

If your requirement is to use passwords with spaces, adjust the word_count & length inputs to suit.

The snippet below will generate a password whose spaced formats are 32 characters in length:

1
2
3
4
  - ppa_tools.password_generators.dictionary_words:
      length: 27
      word_count: 6
    save: password

Filter

  • Contains a dictionary key, test value, & filter type.

  • Supplied in a list to the filter_from_list dictionary action.

Required Keys

  • key: The dictionary key whose value should be tested.
  • type: A filter type (see below for more information).
  • value: The value to test against the dictionary value.

Valid Filters

All filters & the types of value they support:

  • equal (string or integer)
  • not_equal (string or integer)
  • contains (string)
  • starts_with (string)
  • ends_with (string)
  • greater_than (integer)
  • less_than (integer)
  • is (null)
  • not (null)

New in version 5.1.0:

  • not_contains (string)
  • not_starts_with (string)
  • not_ends_with (string)

Match

  • Contains a name & regular expression used to extract data from some text

  • Used as an input to search

Example

1
2
name: username
value: your username is (\w+)

Required Keys

name: The name to give the extracted value.

expression: A regular expression used to find the value in the text.

multiline: Set to true if the expression covers multiple lines

NamedGroup

  • Contains a name & regular expression used to extract data from some text

  • Used as an input to extract_values

  • The example below shows the dictionary structure in YAML

  • See the required keys underneath the example

Example

1
2
name: username
value: your username is (\w+)

Required Keys

name: The name to give the extracted value.

expression: A regular expression used to find the value in the text.

PasswordPolicy

  • Contains a character policy used to generate passwords

  • At least one of the keys below must be supplied

PasswordPolicy Keys

  • lower: number of lower case letters

  • upper: number of upper case letters

  • digit: number of digits (0-9)

  • symbol: number of special characters (taken from ! # $ % & ^ * : ; ?)