Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add table azure_key_vault_secret. Closes #75 #76

Merged
merged 4 commits into from
Apr 22, 2021
Merged

Add table azure_key_vault_secret. Closes #75 #76

merged 4 commits into from
Apr 22, 2021

Conversation

Subhajit97
Copy link
Contributor

Integration test logs

Logs
No env file present for the current environment:  staging 
 Falling back to .env config
No env file present for the current environment:  staging
customEnv TURBOT_TEST_EXPECTED_TIMEOUT 300

SETUP: tests/azure_key_vault_secret []

PRETEST: tests/azure_key_vault_secret

TEST: tests/azure_key_vault_secret
Running terraform
data.azurerm_client_config.current: Refreshing state...
data.null_data_source.resource: Refreshing state...
azurerm_resource_group.named_test_resource: Creating...
azurerm_resource_group.named_test_resource: Creation complete after 2s [id=/subscriptions/********-****-****-****-************/resourceGroups/turbottest81316]
azurerm_key_vault.named_test_resource: Creating...
azurerm_key_vault.named_test_resource: Still creating... [10s elapsed]
azurerm_key_vault.named_test_resource: Still creating... [20s elapsed]
azurerm_key_vault.named_test_resource: Still creating... [30s elapsed]
azurerm_key_vault.named_test_resource: Still creating... [40s elapsed]
azurerm_key_vault.named_test_resource: Still creating... [50s elapsed]
azurerm_key_vault.named_test_resource: Still creating... [1m0s elapsed]
azurerm_key_vault.named_test_resource: Still creating... [1m10s elapsed]
azurerm_key_vault.named_test_resource: Still creating... [1m20s elapsed]
azurerm_key_vault.named_test_resource: Still creating... [1m30s elapsed]
azurerm_key_vault.named_test_resource: Still creating... [1m40s elapsed]
azurerm_key_vault.named_test_resource: Still creating... [1m50s elapsed]
azurerm_key_vault.named_test_resource: Still creating... [2m0s elapsed]
azurerm_key_vault.named_test_resource: Still creating... [2m10s elapsed]
azurerm_key_vault.named_test_resource: Still creating... [2m20s elapsed]
azurerm_key_vault.named_test_resource: Still creating... [2m30s elapsed]
azurerm_key_vault.named_test_resource: Still creating... [2m40s elapsed]
azurerm_key_vault.named_test_resource: Still creating... [2m50s elapsed]
azurerm_key_vault.named_test_resource: Still creating... [3m0s elapsed]
azurerm_key_vault.named_test_resource: Still creating... [3m10s elapsed]
azurerm_key_vault.named_test_resource: Still creating... [3m20s elapsed]
azurerm_key_vault.named_test_resource: Still creating... [3m30s elapsed]
azurerm_key_vault.named_test_resource: Still creating... [3m40s elapsed]
azurerm_key_vault.named_test_resource: Still creating... [3m50s elapsed]
azurerm_key_vault.named_test_resource: Creation complete after 3m52s [id=/subscriptions/********-****-****-****-************/resourceGroups/turbottest81316/providers/Microsoft.KeyVault/vaults/turbottest81316]
azurerm_key_vault_secret.named_test_resource: Creating...
azurerm_key_vault_secret.named_test_resource: Creation complete after 6s [id=https://turbottest81316.vault.azure.net/secrets/turbottest81316/95a4ce008ed849a6a30c4a9dbf4e9fac]

Warning: Deprecated Resource

The null_data_source was historically used to construct intermediate values to
re-use elsewhere in configuration, the same can now be achieved using locals


Apply complete! Resources: 3 added, 0 changed, 0 destroyed.

Outputs:

location = westus
resource_aka = azure://https://turbottest81316.vault.azure.net/secrets/turbottest81316/95a4ce008ed849a6a30c4a9dbf4e9fac
resource_aka_lower = azure://https://turbottest81316.vault.azure.net/secrets/turbottest81316/95a4ce008ed849a6a30c4a9dbf4e9fac
resource_id = https://turbottest81316.vault.azure.net/secrets/turbottest81316/95a4ce008ed849a6a30c4a9dbf4e9fac
resource_name = turbottest81316
secret_uri_without_version = https://turbottest81316.vault.azure.net/secrets/turbottest81316
secret_version = 95a4ce008ed849a6a30c4a9dbf4e9fac
subscription_id = ********-****-****-****-************

Running SQL query: test-get-query.sql
[
  {
    "content_type": "text",
    "enabled": true,
    "id": "https://turbottest81316.vault.azure.net/secrets/turbottest81316/95a4ce008ed849a6a30c4a9dbf4e9fac",
    "name": "turbottest81316",
    "recoverable_days": 7,
    "recovery_level": "CustomizedRecoverable+Purgeable",
    "region": "westus",
    "resource_group": "turbottest81316",
    "subscription_id": "********-****-****-****-************",
    "value": "steampipe",
    "vault_name": "turbottest81316"
  }
]
✔ PASSED

Running SQL query: test-list-query.sql
[
  {
    "id": "https://turbottest81316.vault.azure.net/secrets/turbottest81316/95a4ce008ed849a6a30c4a9dbf4e9fac",
    "name": "turbottest81316"
  }
]
✔ PASSED

Running SQL query: test-not-found-query.sql
null
✔ PASSED

Running SQL query: test-turbot-query.sql
[
  {
    "akas": [
      "azure:///subscriptions/********-****-****-****-************/resourceGroups/turbottest81316/providers/Microsoft.KeyVault/vaults/turbottest81316/secrets/turbottest81316",
      "azure:///subscriptions/********-****-****-****-************/resourcegroups/turbottest81316/providers/microsoft.keyvault/vaults/turbottest81316/secrets/turbottest81316"
    ],
    "name": "turbottest81316",
    "tags": {
      "name": "turbottest81316"
    },
    "title": "turbottest81316"
  }
]
✔ PASSED

POSTTEST: tests/azure_key_vault_secret

TEARDOWN: tests/azure_key_vault_secret

SUMMARY:

1/1 passed.

Example query results

Results

Basic info

select
  name,
  id,
  vault_name,
  enabled,
  created_at,
  updated_at,
  value
from
  azure_key_vault_secret;
+-------------+------------------------------------------------------------------------------------------------+-------------------+---------+---------------------+---------------------+-------------+
| name        | id                                                                                             | vault_name        | enabled | created_at          | updated_at          | value       |
+-------------+------------------------------------------------------------------------------------------------+-------------------+---------+---------------------+---------------------+-------------+
| testsecret1 | https://testvault01042021.vault.azure.net/secrets/testsecret1/c27c3252961a421aa226a6f0e8d0440c | testvault01042021 | true    | 2021-04-01 10:37:26 | 2021-04-01 10:37:26 | testsecret1 |
| testsecret2 | https://testvault01042021.vault.azure.net/secrets/testsecret2/a696734031d4427e9925b3d72f2496fd | testvault01042021 | true    | 2021-04-01 12:32:21 | 2021-04-01 13:48:39 | helloworld  |
+-------------+------------------------------------------------------------------------------------------------+-------------------+---------+---------------------+---------------------+-------------+

List secrets which are not enabled

select
  name,
  vault_name,
  enabled
from
  azure_key_vault_secret
where
  not enabled;
+-------------+-------------------+---------+
| name        | vault_name        | enabled |
+-------------+-------------------+---------+
| testsecret1 | testvault01042021 | false   |
+-------------+-------------------+---------+

List secrets for which expiration time is not set

select
  name,
  enabled,
  expired_at
from
  azure_key_vault_secret
where
  expired_at is null;
+-------------+---------+------------+
| name        | enabled | expired_at |
+-------------+---------+------------+
| testsecret2 | true    | <null>     |
| testsecret1 | false   | <null>     |
+-------------+---------+------------+

List secrets which have never updated

select
  name,
  enabled,
  created_at,
  updated_at
from
  azure_key_vault_secret
where
  enabled
  and age(updated_at, created_at) = '00:00:00';
+-------------+---------+---------------------+---------------------+
| name        | enabled | created_at          | updated_at          |
+-------------+---------+---------------------+---------------------+
| testsecret3 | true    | 2021-04-01 14:58:38 | 2021-04-01 14:58:38 |
+-------------+---------+---------------------+---------------------+

Count of secrets by Key Vault

select
  vault_name,
  count(vault_name) as count
from
  azure_key_vault_secret
group by
  vault_name;
+-------------------+-------+
| vault_name        | count |
+-------------------+-------+
| testvault01042021 | 3     |
+-------------------+-------+

Copy link
Contributor

@khushboo9024 khushboo9024 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@cbruno10 cbruno10 requested review from rajlearner17 and removed request for LalitLab April 14, 2021 18:57
Copy link
Contributor

@rajlearner17 rajlearner17 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@cbruno10 cbruno10 merged commit 99ed43e into main Apr 22, 2021
@cbruno10 cbruno10 deleted the issue-75 branch April 22, 2021 18:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Add table azure_key_vault_secret Add support to query Key Vault > Key & Secret expiry details.
4 participants