title: Search string with jq on any level
body: <p>I want to use <code>jq</code> to extract any appeareance of the key <code>Action</code> in a JSON file. <code>Action</code> appears multiple times in the JSON within different paths (or same path-key-structure with different values).</p>
  
  <p>The use case is to extract all IAM policies that give <code>*</code> permissions.</p>
  
  <p>I want to select cases in which .Action is the value "*" or is an array with <code>"*"</code> as an element, like </p>
  
  <pre><code>"Action":["not this", "*", "not that"]
  </code></pre>
  
  <p>As a plus, it would be good to include the piece of JSON that contains the <code>"Action"</code> up to some levels above.</p>
  
  <p>For example this JSON :</p>
  
  <pre><code>    {
          "AssumeRolePolicyDocument": {
              "Version": "2012-10-17",
              "Statement": [
                  {
                      "Action": "*",
                      "Effect": "Allow",
                      "Principal": {
                          "Service": "ec2.amazonaws.com"
                      }
                  }
              ]
          },
          ...
  </code></pre>
  
  <p>It would be extracted</p>
  
  <pre><code>    {
          "AssumeRolePolicyDocument": {
              "Version": "2012-10-17",
              "Statement": [
                  {
                      "Action": "*",
                      "Effect": "Allow",
                      "Principal": {
                          "Service": "ec2.amazonaws.com"
                      }
                  }
              ]
          },
          ...
      }
  </code></pre>
  
  <p>Is this achievable with <code>jq</code>, and how?</p>