@microsoft/terraform-cdk-constructs 0.0.3-pre.6 → 0.0.3-pre.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (85) hide show
  1. package/.jsii +909 -306
  2. package/API.md +2488 -255
  3. package/README.md +112 -18
  4. package/docs/images/ide-documentation.png +0 -0
  5. package/lib/azure-actiongroup/lib/actiongroup.d.ts +39 -0
  6. package/lib/azure-actiongroup/lib/actiongroup.js +40 -1
  7. package/lib/azure-applicationgateway/lib/gateway.d.ts +76 -0
  8. package/lib/azure-applicationgateway/lib/gateway.js +78 -2
  9. package/lib/azure-applicationinsights/lib/appinsights.d.ts +50 -0
  10. package/lib/azure-applicationinsights/lib/appinsights.js +52 -3
  11. package/lib/azure-containerregistry/lib/registry.d.ts +29 -0
  12. package/lib/azure-containerregistry/lib/registry.js +31 -2
  13. package/lib/azure-datalake/lib/datalake.d.ts +50 -0
  14. package/lib/azure-datalake/lib/datalake.js +51 -1
  15. package/lib/azure-datalake/lib/filesystem.d.ts +51 -0
  16. package/lib/azure-datalake/lib/filesystem.js +52 -1
  17. package/lib/azure-datalake/lib/path.d.ts +37 -0
  18. package/lib/azure-datalake/lib/path.js +38 -1
  19. package/lib/azure-eventhub/lib/authorization.d.ts +30 -0
  20. package/lib/azure-eventhub/lib/authorization.js +32 -2
  21. package/lib/azure-eventhub/lib/cluster.d.ts +29 -0
  22. package/lib/azure-eventhub/lib/cluster.js +31 -2
  23. package/lib/azure-eventhub/lib/consumer.d.ts +28 -0
  24. package/lib/azure-eventhub/lib/consumer.js +30 -2
  25. package/lib/azure-eventhub/lib/instance.d.ts +118 -0
  26. package/lib/azure-eventhub/lib/instance.js +120 -2
  27. package/lib/azure-eventhub/lib/kusto-connection.d.ts +41 -0
  28. package/lib/azure-eventhub/lib/kusto-connection.js +43 -2
  29. package/lib/azure-eventhub/lib/namespace.d.ts +74 -0
  30. package/lib/azure-eventhub/lib/namespace.js +76 -3
  31. package/lib/azure-functionapp/lib/functionapplinux.js +1 -1
  32. package/lib/azure-keyvault/lib/certificate.d.ts +96 -2
  33. package/lib/azure-keyvault/lib/certificate.js +55 -3
  34. package/lib/azure-keyvault/lib/key.d.ts +36 -0
  35. package/lib/azure-keyvault/lib/key.js +38 -2
  36. package/lib/azure-keyvault/lib/policy.d.ts +30 -0
  37. package/lib/azure-keyvault/lib/policy.js +32 -2
  38. package/lib/azure-keyvault/lib/secret.d.ts +31 -0
  39. package/lib/azure-keyvault/lib/secret.js +33 -2
  40. package/lib/azure-keyvault/lib/vault.d.ts +188 -0
  41. package/lib/azure-keyvault/lib/vault.js +191 -7
  42. package/lib/azure-kubernetes/lib/cluster.d.ts +25 -4
  43. package/lib/azure-kubernetes/lib/cluster.js +27 -6
  44. package/lib/azure-kusto/lib/cluster.d.ts +53 -0
  45. package/lib/azure-kusto/lib/cluster.js +55 -2
  46. package/lib/azure-kusto/lib/compute-specification.js +1 -1
  47. package/lib/azure-kusto/lib/database.d.ts +103 -0
  48. package/lib/azure-kusto/lib/database.js +105 -2
  49. package/lib/azure-loganalytics/lib/workspace.d.ts +47 -0
  50. package/lib/azure-loganalytics/lib/workspace.js +49 -2
  51. package/lib/azure-metricalert/lib/metric-alert.d.ts +43 -4
  52. package/lib/azure-metricalert/lib/metric-alert.js +45 -6
  53. package/lib/azure-networksecuritygroup/lib/preconfigured-rules.js +1 -1
  54. package/lib/azure-networksecuritygroup/lib/securitygroup.d.ts +92 -0
  55. package/lib/azure-networksecuritygroup/lib/securitygroup.js +95 -5
  56. package/lib/azure-queryrulealert/lib/query-rule-alert.d.ts +35 -4
  57. package/lib/azure-queryrulealert/lib/query-rule-alert.js +37 -6
  58. package/lib/azure-resourcegroup/lib/resource-group.d.ts +28 -0
  59. package/lib/azure-resourcegroup/lib/resource-group.js +30 -2
  60. package/lib/azure-storageaccount/lib/account.d.ts +75 -48
  61. package/lib/azure-storageaccount/lib/account.js +77 -50
  62. package/lib/azure-storageaccount/lib/container.d.ts +94 -12
  63. package/lib/azure-storageaccount/lib/container.js +97 -15
  64. package/lib/azure-storageaccount/lib/fileshare.d.ts +36 -0
  65. package/lib/azure-storageaccount/lib/fileshare.js +39 -3
  66. package/lib/azure-storageaccount/lib/queue.d.ts +29 -0
  67. package/lib/azure-storageaccount/lib/queue.js +31 -2
  68. package/lib/azure-storageaccount/lib/table.d.ts +32 -0
  69. package/lib/azure-storageaccount/lib/table.js +34 -2
  70. package/lib/azure-virtualmachine/lib/image-references.js +2 -2
  71. package/lib/azure-virtualmachine/lib/vm.d.ts +84 -8
  72. package/lib/azure-virtualmachine/lib/vm.js +87 -11
  73. package/lib/azure-virtualmachinescaleset/lib/cluster.d.ts +98 -8
  74. package/lib/azure-virtualmachinescaleset/lib/cluster.js +101 -11
  75. package/lib/azure-virtualnetwork/lib/network.d.ts +61 -0
  76. package/lib/azure-virtualnetwork/lib/network.js +63 -3
  77. package/lib/azure-virtualnetwork/lib/peering.d.ts +39 -0
  78. package/lib/azure-virtualnetwork/lib/peering.js +41 -2
  79. package/lib/core-azure/lib/diagsettings.d.ts +37 -0
  80. package/lib/core-azure/lib/diagsettings.js +39 -2
  81. package/lib/core-azure/lib/rbac.d.ts +22 -4
  82. package/lib/core-azure/lib/rbac.js +24 -6
  83. package/lib/core-azure/lib/resource.d.ts +45 -0
  84. package/lib/core-azure/lib/resource.js +48 -4
  85. package/package.json +1 -1
@@ -137,5 +137,5 @@ class FunctionAppLinux extends lib_1.AzureResource {
137
137
  }
138
138
  exports.FunctionAppLinux = FunctionAppLinux;
139
139
  _a = JSII_RTTI_SYMBOL_1;
140
- FunctionAppLinux[_a] = { fqn: "@microsoft/terraform-cdk-constructs.azure_functionapp.FunctionAppLinux", version: "0.0.3-pre.6" };
140
+ FunctionAppLinux[_a] = { fqn: "@microsoft/terraform-cdk-constructs.azure_functionapp.FunctionAppLinux", version: "0.0.3-pre.7" };
141
141
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnVuY3Rpb25hcHBsaW51eC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9henVyZS1mdW5jdGlvbmFwcC9saWIvZnVuY3Rpb25hcHBsaW51eC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLHVGQVF3RDtBQUV4RCwyRUFBdUU7QUFDdkUsaUZBQTZFO0FBRTdFLDhDQUFxRDtBQThMckQsTUFBYSxnQkFBaUIsU0FBUSxtQkFBYTtJQVFqRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztPQStCRztJQUNILFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBNEI7UUFDcEUsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVqQixJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNwRCxJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN0RCxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUVoRCxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUM7UUFFeEMsb0RBQW9EO1FBQ3BELElBQUksaUJBQWlCLEdBQStCO1lBQ2xELGNBQWMsRUFBRSxLQUFLO1lBQ3JCLGdCQUFnQixFQUFFO2dCQUNoQixXQUFXLEVBQUUsSUFBSTthQUNsQjtTQUNGLENBQUM7UUFFRiwrQ0FBK0M7UUFDL0MsTUFBTSxVQUFVLEdBQUcsRUFBRSxHQUFHLGlCQUFpQixFQUFFLEdBQUcsS0FBSyxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBRWpFLE1BQU0sUUFBUSxHQUFHO1lBQ2YsU0FBUyxFQUFFLEtBQUssQ0FBQyxTQUFTLElBQUksSUFBSTtZQUNsQyx3QkFBd0IsRUFBRSxLQUFLLENBQUMsd0JBQXdCLElBQUksS0FBSztZQUNqRSxxQkFBcUIsRUFBRSxLQUFLLENBQUMscUJBQXFCLElBQUksVUFBVTtZQUNoRSxRQUFRLEVBQUUsS0FBSyxDQUFDLFFBQVEsSUFBSSxFQUFFLElBQUksRUFBRSxnQkFBZ0IsRUFBRTtZQUN0RCwrQkFBK0IsRUFDN0IsS0FBSyxDQUFDLCtCQUErQixJQUFJLEVBQUU7WUFDN0MseUJBQXlCLEVBQUUsS0FBSyxDQUFDLHlCQUF5QixJQUFJLElBQUk7WUFDbEUsT0FBTyxFQUFFLEtBQUssQ0FBQyxPQUFPLElBQUksSUFBSTtZQUM5QixxQkFBcUIsRUFBRSxLQUFLLENBQUMscUJBQXFCLElBQUksSUFBSTtZQUMxRCwwQkFBMEIsRUFBRSxLQUFLLENBQUMsMEJBQTBCLElBQUksSUFBSTtZQUNwRSwwQkFBMEIsRUFBRSxLQUFLLENBQUMsMEJBQTBCLElBQUksSUFBSTtZQUNwRSx1QkFBdUIsRUFBRSxTQUFTLElBQUksS0FBSyxDQUFDLHVCQUF1QjtTQUNwRSxDQUFDO1FBRUYsMEJBQTBCO1FBQzFCLE1BQU0sV0FBVyxHQUFHLElBQUkscUNBQWdCLENBQUMsSUFBSSxFQUFFLGFBQWEsRUFBRTtZQUM1RCxHQUFHLFFBQVE7WUFDWCxJQUFJLEVBQUUsS0FBSyxDQUFDLElBQUk7WUFDaEIsUUFBUSxFQUFFLEtBQUssQ0FBQyxRQUFRO1lBQ3hCLGlCQUFpQixFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSTtZQUMxQyxhQUFhLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxFQUFFO1lBQ2xDLGtCQUFrQixFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSTtZQUM1QyxJQUFJLEVBQUUsS0FBSyxDQUFDLElBQUk7WUFDaEIsVUFBVSxFQUFFLFVBQVU7WUFDdEIsV0FBVyxFQUFFLEtBQUssQ0FBQyxXQUFXO1lBQzlCLFlBQVksRUFBRSxLQUFLLENBQUMsWUFBWTtZQUNoQyxjQUFjLEVBQUUsS0FBSyxDQUFDLGNBQWM7WUFDcEMsZ0JBQWdCLEVBQUUsS0FBSyxDQUFDLGdCQUFnQjtZQUN4QyxzQkFBc0IsRUFBRSxLQUFLLENBQUMsc0JBQXNCO1lBQ3BELGFBQWEsRUFBRSxLQUFLLENBQUMsYUFBYTtTQUNuQyxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsRUFBRSxHQUFHLFdBQVcsQ0FBQyxFQUFFLENBQUM7UUFDekIsSUFBSSxDQUFDLGVBQWUsR0FBRyxXQUFXLENBQUMsZUFBZSxDQUFDO1FBQ25ELElBQUksQ0FBQyxJQUFJLEdBQUcsV0FBVyxDQUFDLElBQUksQ0FBQztRQUM3QixJQUFJLENBQUMsSUFBSSxHQUFHLFdBQVcsQ0FBQyxJQUFJLENBQUM7SUFDL0IsQ0FBQztJQUVPLG1CQUFtQixDQUFDLEtBQTRCO1FBQ3RELGlHQUFpRztRQUNqRyxJQUFJLENBQUMsS0FBSyxDQUFDLGNBQWMsRUFBRTtZQUN6QixPQUFPLElBQUksZ0NBQWMsQ0FBQyxJQUFJLEVBQUUsSUFBSSxFQUFFO2dCQUNwQyxJQUFJLEVBQUUsR0FBRyxLQUFLLENBQUMsSUFBSSxPQUFPO2dCQUMxQixpQkFBaUIsRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUk7Z0JBQzFDLFFBQVEsRUFBRSxLQUFLLENBQUMsUUFBUTtnQkFDeEIsc0JBQXNCLEVBQUUsS0FBSztnQkFDN0IsV0FBVyxFQUFFLFVBQVU7Z0JBQ3ZCLGFBQWEsRUFBRSxRQUFRO2dCQUN2QixJQUFJLEVBQUUsS0FBSyxDQUFDLElBQUk7Z0JBQ2hCLDBCQUEwQixFQUFFLEtBQUs7Z0JBQ2pDLFlBQVksRUFBRTtvQkFDWixNQUFNLEVBQUUsQ0FBQyxlQUFlLENBQUM7b0JBQ3pCLGFBQWEsRUFBRSxNQUFNO2lCQUN0QjthQUNGLENBQUMsQ0FBQztTQUNKO2FBQU07WUFDTCxPQUFPLEtBQUssQ0FBQyxjQUFjLENBQUM7U0FDN0I7SUFDSCxDQUFDO0lBRU8sZ0JBQWdCLENBQUMsS0FBNEI7UUFDbkQsTUFBTSxjQUFjLEdBQUcsS0FBSyxDQUFDLGNBQWMsSUFBSSxJQUFJLENBQUM7UUFFcEQscUZBQXFGO1FBQ3JGLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxFQUFFO1lBQ3RCLE9BQU8sSUFBSSwwQkFBVyxDQUFDLElBQUksRUFBRSxnQkFBZ0IsRUFBRTtnQkFDN0MsSUFBSSxFQUFFLEdBQUcsS0FBSyxDQUFDLElBQUksS0FBSztnQkFDeEIsUUFBUSxFQUFFLEtBQUssQ0FBQyxRQUFRO2dCQUN4QixpQkFBaUIsRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUk7Z0JBQzFDLE9BQU8sRUFBRSxjQUFjO2dCQUN2QixNQUFNLEVBQUUsT0FBTztnQkFDZix1QkFBdUIsRUFBRSxLQUFLLENBQUMsa0NBQWtDO2dCQUNqRSx5QkFBeUIsRUFBRSxLQUFLLENBQUMsb0NBQW9DO2dCQUNyRSxXQUFXLEVBQUUsS0FBSyxDQUFDLHNCQUFzQjtnQkFDekMscUJBQXFCLEVBQUUsS0FBSyxDQUFDLGdDQUFnQztnQkFDN0Qsb0JBQW9CLEVBQUUsS0FBSyxDQUFDLCtCQUErQjtnQkFDM0QsSUFBSSxFQUFFLEtBQUssQ0FBQyxJQUFJO2FBQ2pCLENBQUMsQ0FBQztTQUNKO2FBQU07WUFDTCxPQUFPLEtBQUssQ0FBQyxXQUFXLENBQUM7U0FDMUI7SUFDSCxDQUFDOztBQTlJSCw0Q0ErSUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBMaW51eEZ1bmN0aW9uQXBwLFxuICBMaW51eEZ1bmN0aW9uQXBwU2l0ZUNvbmZpZyxcbiAgTGludXhGdW5jdGlvbkFwcFNpdGVDb25maWdBcHBsaWNhdGlvblN0YWNrLFxuICBMaW51eEZ1bmN0aW9uQXBwQXV0aFNldHRpbmdzLFxuICBMaW51eEZ1bmN0aW9uQXBwQXV0aFNldHRpbmdzVjIsXG4gIExpbnV4RnVuY3Rpb25BcHBJZGVudGl0eSxcbiAgTGludXhGdW5jdGlvbkFwcENvbm5lY3Rpb25TdHJpbmcsXG59IGZyb20gXCJAY2RrdGYvcHJvdmlkZXItYXp1cmVybS9saWIvbGludXgtZnVuY3Rpb24tYXBwXCI7XG5pbXBvcnQgeyBSZXNvdXJjZUdyb3VwIH0gZnJvbSBcIkBjZGt0Zi9wcm92aWRlci1henVyZXJtL2xpYi9yZXNvdXJjZS1ncm91cFwiO1xuaW1wb3J0IHsgU2VydmljZVBsYW4gfSBmcm9tIFwiQGNka3RmL3Byb3ZpZGVyLWF6dXJlcm0vbGliL3NlcnZpY2UtcGxhblwiO1xuaW1wb3J0IHsgU3RvcmFnZUFjY291bnQgfSBmcm9tIFwiQGNka3RmL3Byb3ZpZGVyLWF6dXJlcm0vbGliL3N0b3JhZ2UtYWNjb3VudFwiO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcbmltcG9ydCB7IEF6dXJlUmVzb3VyY2UgfSBmcm9tIFwiLi4vLi4vY29yZS1henVyZS9saWJcIjtcblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciB0aGUgQXp1cmUgTGludXggRnVuY3Rpb24gQXBwXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRnVuY3Rpb25BcHBMaW51eFByb3BzIHtcbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBGdW5jdGlvbiBBcHAuIFRoaXMgbmFtZSBtdXN0IGJlIHVuaXF1ZSB3aXRoaW4gQXp1cmUuXG4gICAqL1xuICByZWFkb25seSBuYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBBenVyZSBSZWdpb24gd2hlcmUgdGhlIEZ1bmN0aW9uIEFwcCB3aWxsIGJlIGRlcGxveWVkLCBlLmcuLCAnRWFzdCBVUycsICdXZXN0IEV1cm9wZScuXG4gICAqL1xuICByZWFkb25seSBsb2NhdGlvbjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBBbiBvcHRpb25hbCByZWZlcmVuY2UgdG8gdGhlIHJlc291cmNlIGdyb3VwIGluIHdoaWNoIHRvIGRlcGxveSB0aGUgRnVuY3Rpb24gQXBwLlxuICAgKiBJZiBub3QgcHJvdmlkZWQsIHRoZSBGdW5jdGlvbiBBcHAgd2lsbCBiZSBkZXBsb3llZCBpbiB0aGUgZGVmYXVsdCByZXNvdXJjZSBncm91cC5cbiAgICovXG4gIHJlYWRvbmx5IHJlc291cmNlR3JvdXA/OiBSZXNvdXJjZUdyb3VwO1xuXG4gIC8qKlxuICAgKiBBbiBvcHRpb25hbCByZWZlcmVuY2UgdG8gdGhlIHN0b3JhZ2UgYWNjb3VudCB0byBiZSB1c2VkIGJ5IHRoZSBGdW5jdGlvbiBBcHAuXG4gICAqIElmIG5vdCBwcm92aWRlZCwgYSBuZXcgc3RvcmFnZSBhY2NvdW50IHdpbGwgYmUgY3JlYXRlZC5cbiAgICovXG4gIHJlYWRvbmx5IHN0b3JhZ2VBY2NvdW50PzogU3RvcmFnZUFjY291bnQ7XG5cbiAgLyoqXG4gICAqIE9wdGlvbmFsIHJ1bnRpbWUgdmVyc2lvbiBzcGVjaWZpY2F0aW9uIGZvciB0aGUgRnVuY3Rpb24gQXBwLCBzdWNoIGFzIE5vZGUuanMsIC5ORVQsIG9yIEphdmEgdmVyc2lvbi5cbiAgICovXG4gIHJlYWRvbmx5IHJ1bnRpbWVWZXJzaW9uPzogTGludXhGdW5jdGlvbkFwcFNpdGVDb25maWdBcHBsaWNhdGlvblN0YWNrO1xuXG4gIC8qKlxuICAgKiBPcHRpb25hbCBJRCBvZiBhbiBleGlzdGluZyBBcHAgU2VydmljZSBQbGFuIHRvIGhvc3QgdGhlIEZ1bmN0aW9uIEFwcC5cbiAgICogSWYgbm90IHByb3ZpZGVkLCBhIG5ldyBwbGFuIHdpbGwgYmUgY3JlYXRlZC5cbiAgICovXG4gIHJlYWRvbmx5IHNlcnZpY2VQbGFuPzogU2VydmljZVBsYW47XG5cbiAgLyoqXG4gICAqIE9wdGlvbmFsIFNLVSBmb3IgdGhlIEFwcCBTZXJ2aWNlIFBsYW4sIGRlZmluZXMgdGhlIHByaWNpbmcgdGllciBhbmQgY2FwYWJpbGl0aWVzLlxuICAgKi9cbiAgcmVhZG9ubHkgc2VydmljZVBsYW5Ta3U/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE9wdGlvbmFsIHRhZ3MgZm9yIGNhdGVnb3JpemluZyBhbmQgbWFuYWdpbmcgdGhlIEZ1bmN0aW9uIEFwcCByZXNvdXJjZXMgd2l0aGluIEF6dXJlLlxuICAgKi9cbiAgcmVhZG9ubHkgdGFncz86IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH07XG5cbiAgLyoqXG4gICAqIE9wdGlvbmFsIHNpdGUgY29uZmlndXJhdGlvbiBmb3IgYWRkaXRpb25hbCBzZXR0aW5ncyBsaWtlIGVudmlyb25tZW50IHZhcmlhYmxlcywgYW5kIGNvbm5lY3Rpb24gc3RyaW5ncy5cbiAgICovXG4gIHJlYWRvbmx5IHNpdGVDb25maWc/OiBMaW51eEZ1bmN0aW9uQXBwU2l0ZUNvbmZpZztcblxuICAvKipcbiAgICogT3B0aW9uYWwgSUQgZm9yIHRoZSBBcHAgU2VydmljZSBFbnZpcm9ubWVudCB0byBiZSB1c2VkIGJ5IHRoZSBzZXJ2aWNlIHBsYW4uXG4gICAqL1xuICByZWFkb25seSBzZXJ2aWNlUGxhbkFwcFNlcnZpY2VFbnZpcm9ubWVudElkPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBPcHRpb25hbCBtYXhpbXVtIGNvdW50IG9mIGVsYXN0aWMgd29ya2VycyBmb3IgdGhlIEFwcCBTZXJ2aWNlIFBsYW4uXG4gICAqL1xuICByZWFkb25seSBzZXJ2aWNlUGxhbk1heGltdW1FbGFzdGljV29ya2VyQ291bnQ/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIE9wdGlvbmFsIHdvcmtlciBjb3VudCBmb3IgdGhlIEFwcCBTZXJ2aWNlIFBsYW4uXG4gICAqL1xuICByZWFkb25seSBzZXJ2aWNlUGxhbldvcmtlckNvdW50PzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBPcHRpb25hbCBmbGFnIHRvIGVuYWJsZSBwZXItc2l0ZSBzY2FsaW5nIGZvciB0aGUgQXBwIFNlcnZpY2UgUGxhbi5cbiAgICovXG4gIHJlYWRvbmx5IHNlcnZpY2VQbGFuUGVyU2l0ZVNjYWxpbmdFbmFibGVkPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogT3B0aW9uYWwgZmxhZyB0byBlbmFibGUgem9uZSBiYWxhbmNpbmcgZm9yIHRoZSBBcHAgU2VydmljZSBQbGFuLlxuICAgKi9cbiAgcmVhZG9ubHkgc2VydmljZVBsYW5ab25lQmFsYW5jaW5nRW5hYmxlZD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIE9wdGlvbmFsIGF1dGhlbnRpY2F0aW9uIHNldHRpbmdzIGZvciB0aGUgRnVuY3Rpb24gQXBwLlxuICAgKi9cbiAgcmVhZG9ubHkgYXV0aFNldHRpbmdzPzogTGludXhGdW5jdGlvbkFwcEF1dGhTZXR0aW5ncztcblxuICAvKipcbiAgICogT3B0aW9uYWwgYWR2YW5jZWQgdmVyc2lvbiBvZiBhdXRoZW50aWNhdGlvbiBzZXR0aW5ncyBmb3IgdGhlIEZ1bmN0aW9uIEFwcC5cbiAgICovXG4gIHJlYWRvbmx5IGF1dGhTZXR0aW5nc1YyPzogTGludXhGdW5jdGlvbkFwcEF1dGhTZXR0aW5nc1YyO1xuXG4gIC8qKlxuICAgKiBPcHRpb25hbCBpZGVudGl0eSBjb25maWd1cmF0aW9uIGZvciB0aGUgRnVuY3Rpb24gQXBwLCBmb3IgdXNlIGluIE1hbmFnZWQgU2VydmljZSBJZGVudGl0eSBzY2VuYXJpb3MuXG4gICAqL1xuICByZWFkb25seSBpZGVudGl0eT86IExpbnV4RnVuY3Rpb25BcHBJZGVudGl0eTtcblxuICAvKipcbiAgICogT3B0aW9uYWwgZmxhZyB0byBlbmZvcmNlIEhUVFBTIG9ubHkgdHJhZmZpYy5cbiAgICovXG4gIHJlYWRvbmx5IGh0dHBzT25seT86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIE9wdGlvbmFsIGZsYWcgdG8gZW5hYmxlIGNsaWVudCBjZXJ0aWZpY2F0ZSBhdXRoZW50aWNhdGlvbi5cbiAgICovXG4gIHJlYWRvbmx5IGNsaWVudENlcnRpZmljYXRlRW5hYmxlZD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIE9wdGlvbmFsIG1vZGUgZm9yIGNsaWVudCBjZXJ0aWZpY2F0ZSByZXF1aXJlbWVudCAoZS5nLiwgJ1JlcXVpcmVkJywgJ09wdGlvbmFsJykuXG4gICAqL1xuICByZWFkb25seSBjbGllbnRDZXJ0aWZpY2F0ZU1vZGU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE9wdGlvbmFsIHBhdGhzIHRoYXQgYXJlIGV4Y2x1ZGVkIGZyb20gY2xpZW50IGNlcnRpZmljYXRlIGF1dGhlbnRpY2F0aW9uLlxuICAgKi9cbiAgcmVhZG9ubHkgY2xpZW50Q2VydGlmaWNhdGVFeGNsdXNpb25QYXRocz86IHN0cmluZztcblxuICAvKipcbiAgICogT3B0aW9uYWwgdmVyc2lvbiBzZXR0aW5nIGZvciB0aGUgQXp1cmUgRnVuY3Rpb25zIHJ1bnRpbWUuXG4gICAqL1xuICByZWFkb25seSBmdW5jdGlvbnNFeHRlbnNpb25WZXJzaW9uPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBPcHRpb25hbCBmbGFnIHRvIGVuYWJsZSBvciBkaXNhYmxlIHRoZSBGdW5jdGlvbiBBcHAuXG4gICAqL1xuICByZWFkb25seSBlbmFibGVkPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogT3B0aW9uYWwgZmxhZyB0byBlbmFibGUgYnVpbHQtaW4gbG9nZ2luZyBjYXBhYmlsaXRpZXMuXG4gICAqL1xuICByZWFkb25seSBidWlsdGluTG9nZ2luZ0VuYWJsZWQ/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBPcHRpb25hbCBjb25uZWN0aW9uIHN0cmluZyBmb3IgZXh0ZXJuYWwgc2VydmljZXMgb3IgZGF0YWJhc2VzLlxuICAgKi9cbiAgcmVhZG9ubHkgY29ubmVjdGlvblN0cmluZz86IExpbnV4RnVuY3Rpb25BcHBDb25uZWN0aW9uU3RyaW5nW107XG5cbiAgLyoqXG4gICAqIE9wdGlvbmFsIGZsYWcgdG8gZW5hYmxlIG9yIGRpc2FibGUgcHVibGljIG5ldHdvcmsgYWNjZXNzIHRvIHRoZSBGdW5jdGlvbiBBcHAuXG4gICAqL1xuICByZWFkb25seSBwdWJsaWNOZXR3b3JrQWNjZXNzRW5hYmxlZD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIE9wdGlvbmFsIGZsYWcgaW5kaWNhdGluZyBpZiB0aGUgc3RvcmFnZSBhY2NvdW50IHVzZXMgYSBNYW5hZ2VkIElkZW50aXR5LlxuICAgKi9cbiAgcmVhZG9ubHkgc3RvcmFnZVVzZXNNYW5hZ2VkSWRlbnRpdHk/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBPcHRpb25hbCBhY2Nlc3Mga2V5IGZvciB0aGUgc3RvcmFnZSBhY2NvdW50LlxuICAgKi9cbiAgcmVhZG9ubHkgc3RvcmFnZUFjY291bnRBY2Nlc3NLZXk/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE9wdGlvbmFsIElEIG9mIGEgdmlydHVhbCBuZXR3b3JrIHN1Ym5ldCBmb3IgdGhlIEZ1bmN0aW9uIEFwcC5cbiAgICovXG4gIHJlYWRvbmx5IHZpcnR1YWxOZXR3b3JrU3VibmV0SWQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE9wdGlvbmFsIHBhdGggdG8gYSBaSVAgZmlsZSBmb3IgZGVwbG95bWVudCB0byB0aGUgRnVuY3Rpb24gQXBwLlxuICAgKi9cbiAgcmVhZG9ubHkgemlwRGVwbG95RmlsZT86IHN0cmluZztcblxuICAvKipcbiAgICogQXBwbGljYXRpb24gc2V0dGluZ3MgZm9yIHRoZSBBenVyZSBGdW5jdGlvbiBBcHAuXG4gICAqXG4gICAqIEBwcm9wZXJ0eSB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9IGFwcFNldHRpbmdzIC0gQSBjb2xsZWN0aW9uIG9mIGtleS12YWx1ZSBwYWlycyB0aGF0IGNvbnRhaW4gdGhlIHNldHRpbmdzLlxuICAgKlxuICAgKiBOb3RlIG9uIFJ1bnRpbWUgU2V0dGluZ3M6XG4gICAqIC0gJ25vZGVfdmVyc2lvbicgaW4gJ3NpdGVfY29uZmlnJyBzZXRzIHRoZSBOb2RlLmpzIHZlcnNpb24uXG4gICAqICAgVGVycmFmb3JtIGFzc2lnbnMgdGhpcyB2YWx1ZSB0byAnV0VCU0lURV9OT0RFX0RFRkFVTFRfVkVSU0lPTicgaW4gYXBwIHNldHRpbmdzLlxuICAgKiAtICdmdW5jdGlvbnNfZXh0ZW5zaW9uX3ZlcnNpb24nIHNldHMgdGhlIEF6dXJlIEZ1bmN0aW9ucyBydW50aW1lIHZlcnNpb24uXG4gICAqICAgVGVycmFmb3JtIGFzc2lnbnMgdGhpcyB2YWx1ZSB0byAnRlVOQ1RJT05TX0VYVEVOU0lPTl9WRVJTSU9OJyBpbiBhcHAgc2V0dGluZ3MuXG4gICAqXG4gICAqIE5vdGUgb24gU3RvcmFnZSBTZXR0aW5nczpcbiAgICogLSBQcm9wZXJ0aWVzIGxpa2UgJ3N0b3JhZ2VfYWNjb3VudF9hY2Nlc3Nfa2V5JyBhcmUgdXNlZCBmb3Igc3RvcmFnZSBjb25maWd1cmF0aW9ucy5cbiAgICogICBUZXJyYWZvcm0gYXNzaWducyB0aGVzZSB2YWx1ZXMgdG8ga2V5cyBsaWtlICdXRUJTSVRFX0NPTlRFTlRBWlVSRUZJTEVDT05ORUNUSU9OU1RSSU5HJyxcbiAgICogICAnQXp1cmVXZWJKb2JzU3RvcmFnZScgaW4gYXBwIHNldHRpbmdzLlxuICAgKlxuICAgKiBOb3RlIG9uIEFwcGxpY2F0aW9uIEluc2lnaHRzIFNldHRpbmdzOlxuICAgKiAtIFVzZSAnYXBwbGljYXRpb25faW5zaWdodHNfY29ubmVjdGlvbl9zdHJpbmcnIGFuZCAnYXBwbGljYXRpb25faW5zaWdodHNfa2V5JyBmb3IgQXBwbGljYXRpb24gSW5zaWdodHMgY29uZmlndXJhdGlvbnMuXG4gICAqICAgVGVycmFmb3JtIGFzc2lnbnMgdGhlc2UgdG8gJ0FQUElOU0lHSFRTX0lOU1RSVU1FTlRBVElPTktFWScgYW5kICdBUFBMSUNBVElPTklOU0lHSFRTX0NPTk5FQ1RJT05fU1RSSU5HJyBpbiBhcHAgc2V0dGluZ3MuXG4gICAqXG4gICAqIE5vdGUgb24gSGVhbHRoIENoZWNrIFNldHRpbmdzOlxuICAgKiAtICdoZWFsdGhfY2hlY2tfZXZpY3Rpb25fdGltZV9pbl9taW4nIGNvbmZpZ3VyZXMgaGVhbHRoIGNoZWNrIHNldHRpbmdzLlxuICAgKiAgIFRlcnJhZm9ybSBhc3NpZ25zIHRoaXMgdmFsdWUgdG8gJ1dFQlNJVEVfSEVBTFRIQ0hFQ0tfTUFYUElOR0ZBSUxVUkVTJyBpbiBhcHAgc2V0dGluZ3MuXG4gICAqXG4gICAqIE5vdGUgb24gU3RvcmFnZSBBY2NvdW50IFJlc3RyaWN0aW9uOlxuICAgKiAtIFRvIHJlc3RyaWN0IHlvdXIgc3RvcmFnZSBhY2NvdW50IHRvIGEgdmlydHVhbCBuZXR3b3JrLCBzZXQgJ1dFQlNJVEVfQ09OVEVOVE9WRVJWTkVUJyB0byAxIGluIGFwcCBzZXR0aW5ncy5cbiAgICogICBFbnN1cmUgYSBwcmVkZWZpbmVkIHNoYXJlIGlzIGNyZWF0ZWQgZm9yIHRoaXMgY29uZmlndXJhdGlvbi5cbiAgICovXG4gIHJlYWRvbmx5IGFwcFNldHRpbmdzPzogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfTtcbn1cblxuZXhwb3J0IGNsYXNzIEZ1bmN0aW9uQXBwTGludXggZXh0ZW5kcyBBenVyZVJlc291cmNlIHtcbiAgcHVibGljIGlkOiBzdHJpbmc7XG4gIHB1YmxpYyByZWFkb25seSBkZWZhdWx0SG9zdG5hbWU6IHN0cmluZztcbiAgcHVibGljIHJlYWRvbmx5IGtpbmQ6IHN0cmluZztcbiAgcHVibGljIHJlYWRvbmx5IG5hbWU6IHN0cmluZztcbiAgcHVibGljIHJlYWRvbmx5IHN0b3JhZ2VBY2NvdW50OiBTdG9yYWdlQWNjb3VudDtcbiAgcHVibGljIHJlYWRvbmx5IHNlcnZpY2VQbGFuOiBTZXJ2aWNlUGxhbjtcbiAgcHVibGljIHJlc291cmNlR3JvdXA6IFJlc291cmNlR3JvdXA7XG4gIC8qKlxuICAgKiBDb25zdHJ1Y3RzIGEgbmV3IEZ1bmN0aW9uQXBwTGludXguXG4gICAqXG4gICAqIEBwYXJhbSBzY29wZSAtIFRoZSBzY29wZSBpbiB3aGljaCB0byBkZWZpbmUgdGhpcyBjb25zdHJ1Y3QuXG4gICAqIEBwYXJhbSBpZCAtIFRoZSBJRCBvZiB0aGlzIGNvbnN0cnVjdC5cbiAgICogQHBhcmFtIHByb3BzIC0gVGhlIHByb3BlcnRpZXMgZm9yIGNvbmZpZ3VyaW5nIHRoZSBBenVyZSBGdW5jdGlvbiBBcHAgb24gTGludXguIFRoZSBwcm9wZXJ0aWVzIGluY2x1ZGU6XG4gICAqICAgICAgICAgICAgICAgIC0gYG5hbWVgOiBSZXF1aXJlZC4gVW5pcXVlIG5hbWUgZm9yIHRoZSBGdW5jdGlvbiBBcHAgd2l0aGluIEF6dXJlLlxuICAgKiAgICAgICAgICAgICAgICAtIGBsb2NhdGlvbmA6IFJlcXVpcmVkLiBBenVyZSBSZWdpb24gZm9yIGRlcGxveW1lbnQuXG4gICAqICAgICAgICAgICAgICAgIC0gYHJlc291cmNlR3JvdXBgOiBPcHRpb25hbC4gUmVmZXJlbmNlIHRvIHRoZSByZXNvdXJjZSBncm91cCBmb3IgZGVwbG95bWVudC5cbiAgICogICAgICAgICAgICAgICAgLSBgc3RvcmFnZUFjY291bnRgOiBPcHRpb25hbC4gUmVmZXJlbmNlIHRvIHRoZSBzdG9yYWdlIGFjY291bnQgdXNlZCBieSB0aGUgRnVuY3Rpb24gQXBwLlxuICAgKiAgICAgICAgICAgICAgICAtIGBydW50aW1lVmVyc2lvbmA6IE9wdGlvbmFsLiBTcGVjaWZpZXMgdGhlIHJ1bnRpbWUgdmVyc2lvbiAoTm9kZS5qcywgLk5FVCwgSmF2YSwgZXRjLikuXG4gICAqICAgICAgICAgICAgICAgIC0gYHNlcnZpY2VQbGFuYDogT3B0aW9uYWwuIElEIG9mIGFuIGV4aXN0aW5nIEFwcCBTZXJ2aWNlIFBsYW4uXG4gICAqICAgICAgICAgICAgICAgIC0gYHNlcnZpY2VQbGFuU2t1YDogT3B0aW9uYWwuIFNLVSBmb3IgdGhlIEFwcCBTZXJ2aWNlIFBsYW4uXG4gICAqICAgICAgICAgICAgICAgIC0gYHRhZ3NgOiBPcHRpb25hbC4gVGFncyBmb3IgcmVzb3VyY2UgbWFuYWdlbWVudC5cbiAgICogICAgICAgICAgICAgICAgLSBgc2l0ZUNvbmZpZ2A6IE9wdGlvbmFsLiBBZGRpdGlvbmFsIHNpdGUgY29uZmlndXJhdGlvbiBzZXR0aW5ncy5cbiAgICogICAgICAgICAgICAgICAgLSBBZGRpdGlvbmFsIG9wdGlvbmFsIHByb3BlcnRpZXMgYXMgZGVzY3JpYmVkIGluIGBGdW5jdGlvbkFwcExpbnV4UHJvcHNgIGludGVyZmFjZS5cbiAgICpcbiAgICogRXhhbXBsZSB1c2FnZTpcbiAgICogYGBgdHlwZXNjcmlwdFxuICAgKiBuZXcgRnVuY3Rpb25BcHBMaW51eCh0aGlzLCAncHJlbWl1bUZBJywge1xuICAgKiAgIG5hbWU6IGBmYXByZW0ke3RoaXMubmFtZX1gLFxuICAgKiAgIGxvY2F0aW9uOiAnZWFzdHVzJyxcbiAgICogICBzZXJ2aWNlUGxhblNrdTogU2VydmljZVBsYW5Ta3VzLlByZW1pdW1FUDEsXG4gICAqICAgcnVudGltZVZlcnNpb246IHtcbiAgICogICAgIGRvdG5ldFZlcnNpb246ICc1LjAnLFxuICAgKiAgIH0sXG4gICAqICAgdGFnczoge1xuICAgKiAgICAgXCJ0ZXN0XCI6IFwidGVzdFwiXG4gICAqICAgfVxuICAgKiB9KTtcbiAgICogYGBgXG4gICAqL1xuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogRnVuY3Rpb25BcHBMaW51eFByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcblxuICAgIHRoaXMucmVzb3VyY2VHcm91cCA9IHRoaXMuc2V0dXBSZXNvdXJjZUdyb3VwKHByb3BzKTtcbiAgICB0aGlzLnN0b3JhZ2VBY2NvdW50ID0gdGhpcy5zZXR1cFN0b3JhZ2VBY2NvdW50KHByb3BzKTtcbiAgICB0aGlzLnNlcnZpY2VQbGFuID0gdGhpcy5zZXR1cFNlcnZpY2VQbGFuKHByb3BzKTtcblxuICAgIHRoaXMucmVzb3VyY2VHcm91cCA9IHRoaXMucmVzb3VyY2VHcm91cDtcblxuICAgIC8vIERlZmF1bHQgc2l0ZUNvbmZpZyBzZXR0aW5ncyBmb3IgZWFjaCBob3N0aW5nIHBsYW5cbiAgICBsZXQgZGVmYXVsdFNpdGVDb25maWc6IExpbnV4RnVuY3Rpb25BcHBTaXRlQ29uZmlnID0ge1xuICAgICAgdXNlMzJCaXRXb3JrZXI6IGZhbHNlLFxuICAgICAgYXBwbGljYXRpb25TdGFjazoge1xuICAgICAgICBub2RlVmVyc2lvbjogXCIxNFwiLFxuICAgICAgfSxcbiAgICB9O1xuXG4gICAgLy8gTWVyZ2UgdXNlciBwcm92aWRlZCBzaXRlQ29uZmlnIHdpdGggZGVmYXVsdHNcbiAgICBjb25zdCBzaXRlQ29uZmlnID0geyAuLi5kZWZhdWx0U2l0ZUNvbmZpZywgLi4ucHJvcHMuc2l0ZUNvbmZpZyB9O1xuXG4gICAgY29uc3QgZGVmYXVsdHMgPSB7XG4gICAgICBodHRwc09ubHk6IHByb3BzLmh0dHBzT25seSB8fCB0cnVlLFxuICAgICAgY2xpZW50Q2VydGlmaWNhdGVFbmFibGVkOiBwcm9wcy5jbGllbnRDZXJ0aWZpY2F0ZUVuYWJsZWQgfHwgZmFsc2UsXG4gICAgICBjbGllbnRDZXJ0aWZpY2F0ZU1vZGU6IHByb3BzLmNsaWVudENlcnRpZmljYXRlTW9kZSB8fCBcIlJlcXVpcmVkXCIsXG4gICAgICBpZGVudGl0eTogcHJvcHMuaWRlbnRpdHkgfHwgeyB0eXBlOiBcIlN5c3RlbUFzc2lnbmVkXCIgfSxcbiAgICAgIGNsaWVudENlcnRpZmljYXRlRXhjbHVzaW9uUGF0aHM6XG4gICAgICAgIHByb3BzLmNsaWVudENlcnRpZmljYXRlRXhjbHVzaW9uUGF0aHMgfHwgXCJcIixcbiAgICAgIGZ1bmN0aW9uc0V4dGVuc2lvblZlcnNpb246IHByb3BzLmZ1bmN0aW9uc0V4dGVuc2lvblZlcnNpb24gfHwgXCJ+NFwiLFxuICAgICAgZW5hYmxlZDogcHJvcHMuZW5hYmxlZCB8fCB0cnVlLFxuICAgICAgYnVpbHRpbkxvZ2dpbmdFbmFibGVkOiBwcm9wcy5idWlsdGluTG9nZ2luZ0VuYWJsZWQgfHwgdHJ1ZSxcbiAgICAgIHB1YmxpY05ldHdvcmtBY2Nlc3NFbmFibGVkOiBwcm9wcy5wdWJsaWNOZXR3b3JrQWNjZXNzRW5hYmxlZCB8fCB0cnVlLFxuICAgICAgc3RvcmFnZVVzZXNNYW5hZ2VkSWRlbnRpdHk6IHByb3BzLnN0b3JhZ2VVc2VzTWFuYWdlZElkZW50aXR5IHx8IHRydWUsXG4gICAgICBzdG9yYWdlQWNjb3VudEFjY2Vzc0tleTogdW5kZWZpbmVkIHx8IHByb3BzLnN0b3JhZ2VBY2NvdW50QWNjZXNzS2V5LFxuICAgIH07XG5cbiAgICAvLyBDcmVhdGUgdGhlIEZ1bmN0aW9uIEFwcFxuICAgIGNvbnN0IGZ1bmN0aW9uQXBwID0gbmV3IExpbnV4RnVuY3Rpb25BcHAodGhpcywgXCJGdW5jdGlvbkFwcFwiLCB7XG4gICAgICAuLi5kZWZhdWx0cyxcbiAgICAgIG5hbWU6IHByb3BzLm5hbWUsXG4gICAgICBsb2NhdGlvbjogcHJvcHMubG9jYXRpb24sXG4gICAgICByZXNvdXJjZUdyb3VwTmFtZTogdGhpcy5yZXNvdXJjZUdyb3VwLm5hbWUsXG4gICAgICBzZXJ2aWNlUGxhbklkOiB0aGlzLnNlcnZpY2VQbGFuLmlkLFxuICAgICAgc3RvcmFnZUFjY291bnROYW1lOiB0aGlzLnN0b3JhZ2VBY2NvdW50Lm5hbWUsXG4gICAgICB0YWdzOiBwcm9wcy50YWdzLFxuICAgICAgc2l0ZUNvbmZpZzogc2l0ZUNvbmZpZyxcbiAgICAgIGFwcFNldHRpbmdzOiBwcm9wcy5hcHBTZXR0aW5ncyxcbiAgICAgIGF1dGhTZXR0aW5nczogcHJvcHMuYXV0aFNldHRpbmdzLFxuICAgICAgYXV0aFNldHRpbmdzVjI6IHByb3BzLmF1dGhTZXR0aW5nc1YyLFxuICAgICAgY29ubmVjdGlvblN0cmluZzogcHJvcHMuY29ubmVjdGlvblN0cmluZyxcbiAgICAgIHZpcnR1YWxOZXR3b3JrU3VibmV0SWQ6IHByb3BzLnZpcnR1YWxOZXR3b3JrU3VibmV0SWQsXG4gICAgICB6aXBEZXBsb3lGaWxlOiBwcm9wcy56aXBEZXBsb3lGaWxlLFxuICAgIH0pO1xuXG4gICAgdGhpcy5pZCA9IGZ1bmN0aW9uQXBwLmlkO1xuICAgIHRoaXMuZGVmYXVsdEhvc3RuYW1lID0gZnVuY3Rpb25BcHAuZGVmYXVsdEhvc3RuYW1lO1xuICAgIHRoaXMua2luZCA9IGZ1bmN0aW9uQXBwLmtpbmQ7XG4gICAgdGhpcy5uYW1lID0gZnVuY3Rpb25BcHAubmFtZTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0dXBTdG9yYWdlQWNjb3VudChwcm9wczogRnVuY3Rpb25BcHBMaW51eFByb3BzKTogU3RvcmFnZUFjY291bnQge1xuICAgIC8vIFJlZmVyZW5jZSBvciBjcmVhdGUgYSBuZXcgc3RvcmFnZSBhY2NvdW50IHRoYXQgd2lsbCBiZSB1c2VkIGJ5IHRoZSBGdW5jdGlvbiBBcHAgdG8gc3RvcmUgZmlsZXNcbiAgICBpZiAoIXByb3BzLnN0b3JhZ2VBY2NvdW50KSB7XG4gICAgICByZXR1cm4gbmV3IFN0b3JhZ2VBY2NvdW50KHRoaXMsIFwic2FcIiwge1xuICAgICAgICBuYW1lOiBgJHtwcm9wcy5uYW1lfXN0YWNjYCxcbiAgICAgICAgcmVzb3VyY2VHcm91cE5hbWU6IHRoaXMucmVzb3VyY2VHcm91cC5uYW1lLFxuICAgICAgICBsb2NhdGlvbjogcHJvcHMubG9jYXRpb24sXG4gICAgICAgIGFjY291bnRSZXBsaWNhdGlvblR5cGU6IFwiTFJTXCIsXG4gICAgICAgIGFjY291bnRUaWVyOiBcIlN0YW5kYXJkXCIsXG4gICAgICAgIG1pblRsc1ZlcnNpb246IFwiVExTMV8yXCIsXG4gICAgICAgIHRhZ3M6IHByb3BzLnRhZ3MsXG4gICAgICAgIHB1YmxpY05ldHdvcmtBY2Nlc3NFbmFibGVkOiBmYWxzZSxcbiAgICAgICAgbmV0d29ya1J1bGVzOiB7XG4gICAgICAgICAgYnlwYXNzOiBbXCJBenVyZVNlcnZpY2VzXCJdLFxuICAgICAgICAgIGRlZmF1bHRBY3Rpb246IFwiRGVueVwiLFxuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBwcm9wcy5zdG9yYWdlQWNjb3VudDtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHNldHVwU2VydmljZVBsYW4ocHJvcHM6IEZ1bmN0aW9uQXBwTGludXhQcm9wcyk6IFNlcnZpY2VQbGFuIHtcbiAgICBjb25zdCBzZXJ2aWNlUGxhblNLVSA9IHByb3BzLnNlcnZpY2VQbGFuU2t1IHx8IFwiWTFcIjtcblxuICAgIC8vIFVzZSBhbiBleGlzdGluZyBBcHAgU2VydmljZSBQbGFuIGlmIHRoZSBJRCBpcyBwcm92aWRlZCwgb3RoZXJ3aXNlIGNyZWF0ZSBhIG5ldyBvbmVcbiAgICBpZiAoIXByb3BzLnNlcnZpY2VQbGFuKSB7XG4gICAgICByZXR1cm4gbmV3IFNlcnZpY2VQbGFuKHRoaXMsIFwiQXBwU2VydmljZVBsYW5cIiwge1xuICAgICAgICBuYW1lOiBgJHtwcm9wcy5uYW1lfWFzcGAsXG4gICAgICAgIGxvY2F0aW9uOiBwcm9wcy5sb2NhdGlvbixcbiAgICAgICAgcmVzb3VyY2VHcm91cE5hbWU6IHRoaXMucmVzb3VyY2VHcm91cC5uYW1lLFxuICAgICAgICBza3VOYW1lOiBzZXJ2aWNlUGxhblNLVSxcbiAgICAgICAgb3NUeXBlOiBcIkxpbnV4XCIsXG4gICAgICAgIGFwcFNlcnZpY2VFbnZpcm9ubWVudElkOiBwcm9wcy5zZXJ2aWNlUGxhbkFwcFNlcnZpY2VFbnZpcm9ubWVudElkLFxuICAgICAgICBtYXhpbXVtRWxhc3RpY1dvcmtlckNvdW50OiBwcm9wcy5zZXJ2aWNlUGxhbk1heGltdW1FbGFzdGljV29ya2VyQ291bnQsXG4gICAgICAgIHdvcmtlckNvdW50OiBwcm9wcy5zZXJ2aWNlUGxhbldvcmtlckNvdW50LFxuICAgICAgICBwZXJTaXRlU2NhbGluZ0VuYWJsZWQ6IHByb3BzLnNlcnZpY2VQbGFuUGVyU2l0ZVNjYWxpbmdFbmFibGVkLFxuICAgICAgICB6b25lQmFsYW5jaW5nRW5hYmxlZDogcHJvcHMuc2VydmljZVBsYW5ab25lQmFsYW5jaW5nRW5hYmxlZCxcbiAgICAgICAgdGFnczogcHJvcHMudGFncyxcbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gcHJvcHMuc2VydmljZVBsYW47XG4gICAgfVxuICB9XG59XG4iXX0=
@@ -2,38 +2,132 @@ import { KeyVaultCertificate } from "@cdktf/provider-azurerm/lib/key-vault-certi
2
2
  import { Construct } from "constructs";
3
3
  import { AccessPolicy } from "./policy";
4
4
  import { Vault } from "./vault";
5
+ /**
6
+ * Properties required to create a self-signed certificate within Azure Key Vault.
7
+ */
5
8
  export interface SelfSignedCertificateProps {
6
9
  /**
7
- * The name of the certificate in the Azure Key Vault.
10
+ * The name of the certificate to be stored in Azure Key Vault.
8
11
  */
9
12
  readonly name: string;
13
+ /**
14
+ * The subject name for the certificate, typically represented in X.509 distinguished name format.
15
+ */
10
16
  readonly subject: string;
17
+ /**
18
+ * Additional DNS names to be included in the certificate. Useful for creating certificates valid for multiple hostnames.
19
+ */
11
20
  readonly dnsNames: string[];
21
+ /**
22
+ * The ID of the Azure Key Vault where the certificate will be created and stored.
23
+ */
12
24
  readonly keyVaultId: Vault;
25
+ /**
26
+ * Specifies the type of action to perform with the certificate, such as 'create' or 'renew'.
27
+ */
13
28
  readonly actionType?: string;
29
+ /**
30
+ * Specifies the number of days before expiry when an action should be taken (e.g., renew the certificate).
31
+ */
14
32
  readonly daysBeforeExpiry?: number;
33
+ /**
34
+ * Access policies defining who can access this certificate within the Azure Key Vault.
35
+ */
15
36
  readonly accessPolicies: AccessPolicy[];
37
+ /**
38
+ * Tags to be associated with the certificate for organizational purposes.
39
+ */
16
40
  readonly tags?: {
17
41
  [key: string]: string;
18
42
  };
19
43
  }
44
+ /**
45
+ * Properties required to configure a certificate issuer within Azure Key Vault.
46
+ */
20
47
  export interface CertificateIssuerProps {
21
48
  /**
22
- * The name of the certificate issuer in the Azure Key Vault.
49
+ * The name of the certificate issuer as it will appear in Azure Key Vault.
23
50
  */
24
51
  readonly name: string;
52
+ /**
53
+ * The name of the provider that will issue the certificate, such as 'DigiCert' or 'GlobalSign'.
54
+ */
25
55
  readonly providerName: string;
56
+ /**
57
+ * The ID of the Azure Key Vault where the issuer will be configured.
58
+ */
26
59
  readonly keyVaultId: Vault;
60
+ /**
61
+ * Access policies defining who can manage this issuer and the certificates it issues within the Key Vault.
62
+ */
27
63
  readonly accessPolicies: AccessPolicy[];
64
+ /**
65
+ * The username required to authenticate with the certificate provider (if applicable).
66
+ */
28
67
  readonly username?: string;
68
+ /**
69
+ * The password required to authenticate with the certificate provider (if applicable).
70
+ */
29
71
  readonly password?: string;
30
72
  }
31
73
  export declare class SelfSignedCertificate extends Construct {
32
74
  certificate: KeyVaultCertificate;
33
75
  id: string;
34
76
  secretId: string;
77
+ /**
78
+ * Constructs a self-signed certificate within an Azure Key Vault.
79
+ *
80
+ * This class is responsible for the creation and management of a self-signed certificate, making it available
81
+ * within an Azure Key Vault. The certificate can be used for testing or internal secure communications.
82
+ *
83
+ * @param scope - The scope in which to define this construct, usually representing the Cloud Development Kit (CDK) stack.
84
+ * @param id - The unique identifier for this instance of the certificate.
85
+ * @param props - The properties for creating the self-signed certificate as defined in SelfSignedCertificateProps.
86
+ *
87
+ * Example usage:
88
+ * ```typescript
89
+ * new SelfSignedCertificate(this, 'MySelfSignedCert', {
90
+ * name: 'exampleCert',
91
+ * subject: 'CN=example.com',
92
+ * dnsNames: ['example.com', 'www.example.com'],
93
+ * keyVaultId: myKeyVault,
94
+ * accessPolicies: [{ userId: 'user123', permissions: ['all'] }],
95
+ * tags: { project: 'My Project' }
96
+ * });
97
+ * ```
98
+ */
35
99
  constructor(scope: Construct, id: string, props: SelfSignedCertificateProps);
36
100
  }
37
101
  export declare class CertificateIssuer extends Construct {
102
+ /**
103
+ * Constructs a new Certificate Issuer within an Azure Key Vault.
104
+ *
105
+ * This class is responsible for setting up a certificate issuer in Azure Key Vault. A certificate issuer is an entity
106
+ * that issues digital certificates for use in SSL/TLS and other cryptographic security contexts. By configuring an issuer,
107
+ * you can manage certificate lifecycle (issue, renew, revoke) through Azure Key Vault in conjunction with external certificate
108
+ * authorities (CAs).
109
+ *
110
+ * @param scope - The scope in which to define this construct, usually representing the Cloud Development Kit (CDK) stack.
111
+ * @param id - The unique identifier for this instance of the certificate issuer.
112
+ * @param props - The properties for configuring the certificate issuer as defined in CertificateIssuerProps. These properties include:
113
+ * - `name`: Required. The name of the issuer as it will appear in Azure Key Vault.
114
+ * - `providerName`: Required. The name of the provider that will issue the certificates, such as 'DigiCert' or 'GlobalSign'.
115
+ * - `keyVaultId`: Required. The ID of the Azure Key Vault where the issuer will be configured.
116
+ * - `accessPolicies`: Required. Access policies defining who can manage this issuer within the Key Vault.
117
+ * - `username`: Optional. The username required to authenticate with the certificate provider (if applicable).
118
+ * - `password`: Optional. The password required to authenticate with the certificate provider (if applicable).
119
+ *
120
+ * Example usage:
121
+ * ```typescript
122
+ * new CertificateIssuer(this, 'MyCertIssuer', {
123
+ * name: 'MyIssuer',
124
+ * providerName: 'DigiCert',
125
+ * keyVaultId: myKeyVault,
126
+ * accessPolicies: [{ userId: 'user123', permissions: ['manageIssuer'] }],
127
+ * username: 'user@example.com',
128
+ * password: 'securepassword'
129
+ * });
130
+ * ```
131
+ */
38
132
  constructor(scope: Construct, id: string, props: CertificateIssuerProps);
39
133
  }
@@ -7,6 +7,28 @@ const key_vault_certificate_1 = require("@cdktf/provider-azurerm/lib/key-vault-c
7
7
  const key_vault_certificate_issuer_1 = require("@cdktf/provider-azurerm/lib/key-vault-certificate-issuer");
8
8
  const constructs_1 = require("constructs");
9
9
  class SelfSignedCertificate extends constructs_1.Construct {
10
+ /**
11
+ * Constructs a self-signed certificate within an Azure Key Vault.
12
+ *
13
+ * This class is responsible for the creation and management of a self-signed certificate, making it available
14
+ * within an Azure Key Vault. The certificate can be used for testing or internal secure communications.
15
+ *
16
+ * @param scope - The scope in which to define this construct, usually representing the Cloud Development Kit (CDK) stack.
17
+ * @param id - The unique identifier for this instance of the certificate.
18
+ * @param props - The properties for creating the self-signed certificate as defined in SelfSignedCertificateProps.
19
+ *
20
+ * Example usage:
21
+ * ```typescript
22
+ * new SelfSignedCertificate(this, 'MySelfSignedCert', {
23
+ * name: 'exampleCert',
24
+ * subject: 'CN=example.com',
25
+ * dnsNames: ['example.com', 'www.example.com'],
26
+ * keyVaultId: myKeyVault,
27
+ * accessPolicies: [{ userId: 'user123', permissions: ['all'] }],
28
+ * tags: { project: 'My Project' }
29
+ * });
30
+ * ```
31
+ */
10
32
  constructor(scope, id, props) {
11
33
  super(scope, id);
12
34
  // Provide default values
@@ -70,8 +92,38 @@ class SelfSignedCertificate extends constructs_1.Construct {
70
92
  }
71
93
  exports.SelfSignedCertificate = SelfSignedCertificate;
72
94
  _a = JSII_RTTI_SYMBOL_1;
73
- SelfSignedCertificate[_a] = { fqn: "@microsoft/terraform-cdk-constructs.azure_keyvault.SelfSignedCertificate", version: "0.0.3-pre.6" };
95
+ SelfSignedCertificate[_a] = { fqn: "@microsoft/terraform-cdk-constructs.azure_keyvault.SelfSignedCertificate", version: "0.0.3-pre.7" };
74
96
  class CertificateIssuer extends constructs_1.Construct {
97
+ /**
98
+ * Constructs a new Certificate Issuer within an Azure Key Vault.
99
+ *
100
+ * This class is responsible for setting up a certificate issuer in Azure Key Vault. A certificate issuer is an entity
101
+ * that issues digital certificates for use in SSL/TLS and other cryptographic security contexts. By configuring an issuer,
102
+ * you can manage certificate lifecycle (issue, renew, revoke) through Azure Key Vault in conjunction with external certificate
103
+ * authorities (CAs).
104
+ *
105
+ * @param scope - The scope in which to define this construct, usually representing the Cloud Development Kit (CDK) stack.
106
+ * @param id - The unique identifier for this instance of the certificate issuer.
107
+ * @param props - The properties for configuring the certificate issuer as defined in CertificateIssuerProps. These properties include:
108
+ * - `name`: Required. The name of the issuer as it will appear in Azure Key Vault.
109
+ * - `providerName`: Required. The name of the provider that will issue the certificates, such as 'DigiCert' or 'GlobalSign'.
110
+ * - `keyVaultId`: Required. The ID of the Azure Key Vault where the issuer will be configured.
111
+ * - `accessPolicies`: Required. Access policies defining who can manage this issuer within the Key Vault.
112
+ * - `username`: Optional. The username required to authenticate with the certificate provider (if applicable).
113
+ * - `password`: Optional. The password required to authenticate with the certificate provider (if applicable).
114
+ *
115
+ * Example usage:
116
+ * ```typescript
117
+ * new CertificateIssuer(this, 'MyCertIssuer', {
118
+ * name: 'MyIssuer',
119
+ * providerName: 'DigiCert',
120
+ * keyVaultId: myKeyVault,
121
+ * accessPolicies: [{ userId: 'user123', permissions: ['manageIssuer'] }],
122
+ * username: 'user@example.com',
123
+ * password: 'securepassword'
124
+ * });
125
+ * ```
126
+ */
75
127
  constructor(scope, id, props) {
76
128
  super(scope, id);
77
129
  const certificateIssuer = new key_vault_certificate_issuer_1.KeyVaultCertificateIssuer(this, "AzureKeyVaultCertificate", {
@@ -90,5 +142,5 @@ class CertificateIssuer extends constructs_1.Construct {
90
142
  }
91
143
  exports.CertificateIssuer = CertificateIssuer;
92
144
  _b = JSII_RTTI_SYMBOL_1;
93
- CertificateIssuer[_b] = { fqn: "@microsoft/terraform-cdk-constructs.azure_keyvault.CertificateIssuer", version: "0.0.3-pre.6" };
94
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2VydGlmaWNhdGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXp1cmUta2V5dmF1bHQvbGliL2NlcnRpZmljYXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsNkZBQXdGLENBQUMsOERBQThEO0FBQ3ZKLDJHQUFxRztBQUNyRywyQ0FBdUM7QUEwQ3ZDLE1BQWEscUJBQXNCLFNBQVEsc0JBQVM7SUFLbEQsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUFpQztRQUN6RSxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRWpCLHlCQUF5QjtRQUN6QixNQUFNLFVBQVUsR0FBRyxLQUFLLENBQUMsVUFBVSxJQUFJLFdBQVcsQ0FBQztRQUNuRCxNQUFNLGdCQUFnQixHQUFHLEtBQUssQ0FBQyxnQkFBZ0IsSUFBSSxFQUFFLENBQUM7UUFFdEQsTUFBTSxXQUFXLEdBQUcsSUFBSSwyQ0FBbUIsQ0FDekMsSUFBSSxFQUNKLDBCQUEwQixFQUMxQjtZQUNFLElBQUksRUFBRSxLQUFLLENBQUMsSUFBSTtZQUNoQixVQUFVLEVBQUUsS0FBSyxDQUFDLFVBQVUsQ0FBQyxFQUFFO1lBQy9CLGlCQUFpQixFQUFFO2dCQUNqQixnQkFBZ0IsRUFBRTtvQkFDaEIsSUFBSSxFQUFFLE1BQU07aUJBQ2I7Z0JBQ0QsYUFBYSxFQUFFO29CQUNiLE9BQU8sRUFBRSxLQUFLO29CQUNkLE9BQU8sRUFBRSxJQUFJO29CQUNiLFFBQVEsRUFBRSxJQUFJO29CQUNkLFVBQVUsRUFBRSxJQUFJO2lCQUNqQjtnQkFDRCxjQUFjLEVBQUU7b0JBQ2Q7d0JBQ0UsTUFBTSxFQUFFOzRCQUNOLFVBQVUsRUFBRSxVQUFVO3lCQUN2Qjt3QkFDRCxPQUFPLEVBQUU7NEJBQ1AsZ0JBQWdCLEVBQUUsZ0JBQWdCO3lCQUNuQztxQkFDRjtpQkFDRjtnQkFDRCxnQkFBZ0IsRUFBRTtvQkFDaEIsV0FBVyxFQUFFLHNCQUFzQjtpQkFDcEM7Z0JBQ0QseUJBQXlCLEVBQUU7b0JBQ3pCLE9BQU8sRUFBRSxLQUFLLENBQUMsT0FBTztvQkFDdEIsdUJBQXVCLEVBQUU7d0JBQ3ZCLFFBQVEsRUFBRSxLQUFLLENBQUMsUUFBUTtxQkFDekI7b0JBQ0QsUUFBUSxFQUFFO3dCQUNSLFNBQVM7d0JBQ1Qsa0JBQWtCO3dCQUNsQixrQkFBa0I7d0JBQ2xCLGNBQWM7d0JBQ2QsYUFBYTt3QkFDYixpQkFBaUI7cUJBQ2xCO29CQUNELGdCQUFnQixFQUFFLENBQUMsbUJBQW1CLENBQUM7b0JBQ3ZDLGdCQUFnQixFQUFFLEVBQUU7aUJBQ3JCO2FBQ0Y7U0FDRixDQUNGLENBQUM7UUFDRixJQUFJLENBQUMsV0FBVyxHQUFHLFdBQVcsQ0FBQztRQUUvQixJQUFJLENBQUMsRUFBRSxHQUFHLFdBQVcsQ0FBQyxFQUFFLENBQUM7UUFDekIsSUFBSSxDQUFDLFFBQVEsR0FBRyxXQUFXLENBQUMsUUFBUSxDQUFDO1FBRXJDLGlDQUFpQztRQUNqQyxNQUFNLFlBQVksR0FBYSxFQUFFLENBQUM7UUFDbEMsS0FBSyxNQUFNLE1BQU0sSUFBSSxLQUFLLENBQUMsY0FBYyxFQUFFO1lBQ3pDLFlBQVksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQ2hDO1FBRUQsd0NBQXdDO1FBQ3hDLFdBQVcsQ0FBQyxXQUFXLENBQUMsWUFBWSxFQUFFLFlBQVksQ0FBQyxDQUFDO0lBQ3RELENBQUM7O0FBekVILHNEQTBFQzs7O0FBRUQsTUFBYSxpQkFBa0IsU0FBUSxzQkFBUztJQUM5QyxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQTZCO1FBQ3JFLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFFakIsTUFBTSxpQkFBaUIsR0FBRyxJQUFJLHdEQUF5QixDQUNyRCxJQUFJLEVBQ0osMEJBQTBCLEVBQzFCO1lBQ0UsSUFBSSxFQUFFLEtBQUssQ0FBQyxJQUFJO1lBQ2hCLFVBQVUsRUFBRSxLQUFLLENBQUMsVUFBVSxDQUFDLEVBQUU7WUFDL0IsWUFBWSxFQUFFLEtBQUssQ0FBQyxZQUFZO1NBQ2pDLENBQ0YsQ0FBQztRQUVGLGlDQUFpQztRQUNqQyxNQUFNLFlBQVksR0FBYSxFQUFFLENBQUM7UUFDbEMsS0FBSyxNQUFNLE1BQU0sSUFBSSxLQUFLLENBQUMsY0FBYyxFQUFFO1lBQ3pDLFlBQVksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQ2hDO1FBRUQsd0NBQXdDO1FBQ3hDLGlCQUFpQixDQUFDLFdBQVcsQ0FBQyxZQUFZLEVBQUUsWUFBWSxDQUFDLENBQUM7SUFDNUQsQ0FBQzs7QUF0QkgsOENBdUJDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgS2V5VmF1bHRDZXJ0aWZpY2F0ZSB9IGZyb20gXCJAY2RrdGYvcHJvdmlkZXItYXp1cmVybS9saWIva2V5LXZhdWx0LWNlcnRpZmljYXRlXCI7IC8vIEFkanVzdCB0aGUgaW1wb3J0IHBhdGggYmFzZWQgb24gdGhlIGFjdHVhbCBtb2R1bGUgbG9jYXRpb24uXG5pbXBvcnQgeyBLZXlWYXVsdENlcnRpZmljYXRlSXNzdWVyIH0gZnJvbSBcIkBjZGt0Zi9wcm92aWRlci1henVyZXJtL2xpYi9rZXktdmF1bHQtY2VydGlmaWNhdGUtaXNzdWVyXCI7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tIFwiY29uc3RydWN0c1wiO1xuaW1wb3J0IHsgQWNjZXNzUG9saWN5IH0gZnJvbSBcIi4vcG9saWN5XCI7XG5pbXBvcnQgeyBWYXVsdCB9IGZyb20gXCIuL3ZhdWx0XCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2VsZlNpZ25lZENlcnRpZmljYXRlUHJvcHMge1xuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIGNlcnRpZmljYXRlIGluIHRoZSBBenVyZSBLZXkgVmF1bHQuXG4gICAqL1xuICByZWFkb25seSBuYW1lOiBzdHJpbmc7XG5cbiAgcmVhZG9ubHkgc3ViamVjdDogc3RyaW5nO1xuXG4gIHJlYWRvbmx5IGRuc05hbWVzOiBzdHJpbmdbXTtcblxuICByZWFkb25seSBrZXlWYXVsdElkOiBWYXVsdDtcblxuICByZWFkb25seSBhY3Rpb25UeXBlPzogc3RyaW5nO1xuXG4gIHJlYWRvbmx5IGRheXNCZWZvcmVFeHBpcnk/OiBudW1iZXI7XG5cbiAgcmVhZG9ubHkgYWNjZXNzUG9saWNpZXM6IEFjY2Vzc1BvbGljeVtdO1xuXG4gIHJlYWRvbmx5IHRhZ3M/OiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENlcnRpZmljYXRlSXNzdWVyUHJvcHMge1xuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIGNlcnRpZmljYXRlIGlzc3VlciBpbiB0aGUgQXp1cmUgS2V5IFZhdWx0LlxuICAgKi9cbiAgcmVhZG9ubHkgbmFtZTogc3RyaW5nO1xuXG4gIHJlYWRvbmx5IHByb3ZpZGVyTmFtZTogc3RyaW5nO1xuXG4gIHJlYWRvbmx5IGtleVZhdWx0SWQ6IFZhdWx0O1xuXG4gIHJlYWRvbmx5IGFjY2Vzc1BvbGljaWVzOiBBY2Nlc3NQb2xpY3lbXTtcblxuICByZWFkb25seSB1c2VybmFtZT86IHN0cmluZztcblxuICByZWFkb25seSBwYXNzd29yZD86IHN0cmluZztcbn1cblxuZXhwb3J0IGNsYXNzIFNlbGZTaWduZWRDZXJ0aWZpY2F0ZSBleHRlbmRzIENvbnN0cnVjdCB7XG4gIHB1YmxpYyBjZXJ0aWZpY2F0ZTogS2V5VmF1bHRDZXJ0aWZpY2F0ZTtcbiAgcHVibGljIGlkOiBzdHJpbmc7XG4gIHB1YmxpYyBzZWNyZXRJZDogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBTZWxmU2lnbmVkQ2VydGlmaWNhdGVQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG5cbiAgICAvLyBQcm92aWRlIGRlZmF1bHQgdmFsdWVzXG4gICAgY29uc3QgYWN0aW9uVHlwZSA9IHByb3BzLmFjdGlvblR5cGUgPz8gXCJBdXRvUmVuZXdcIjtcbiAgICBjb25zdCBkYXlzQmVmb3JlRXhwaXJ5ID0gcHJvcHMuZGF5c0JlZm9yZUV4cGlyeSA/PyA0NTtcblxuICAgIGNvbnN0IGNlcnRpZmljYXRlID0gbmV3IEtleVZhdWx0Q2VydGlmaWNhdGUoXG4gICAgICB0aGlzLFxuICAgICAgXCJBenVyZUtleVZhdWx0Q2VydGlmaWNhdGVcIixcbiAgICAgIHtcbiAgICAgICAgbmFtZTogcHJvcHMubmFtZSxcbiAgICAgICAga2V5VmF1bHRJZDogcHJvcHMua2V5VmF1bHRJZC5pZCxcbiAgICAgICAgY2VydGlmaWNhdGVQb2xpY3k6IHtcbiAgICAgICAgICBpc3N1ZXJQYXJhbWV0ZXJzOiB7XG4gICAgICAgICAgICBuYW1lOiBcIlNlbGZcIixcbiAgICAgICAgICB9LFxuICAgICAgICAgIGtleVByb3BlcnRpZXM6IHtcbiAgICAgICAgICAgIGtleVR5cGU6IFwiUlNBXCIsXG4gICAgICAgICAgICBrZXlTaXplOiAyMDQ4LFxuICAgICAgICAgICAgcmV1c2VLZXk6IHRydWUsXG4gICAgICAgICAgICBleHBvcnRhYmxlOiB0cnVlLFxuICAgICAgICAgIH0sXG4gICAgICAgICAgbGlmZXRpbWVBY3Rpb246IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgYWN0aW9uOiB7XG4gICAgICAgICAgICAgICAgYWN0aW9uVHlwZTogYWN0aW9uVHlwZSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgdHJpZ2dlcjoge1xuICAgICAgICAgICAgICAgIGRheXNCZWZvcmVFeHBpcnk6IGRheXNCZWZvcmVFeHBpcnksXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgICAgc2VjcmV0UHJvcGVydGllczoge1xuICAgICAgICAgICAgY29udGVudFR5cGU6IFwiYXBwbGljYXRpb24veC1wa2NzMTJcIixcbiAgICAgICAgICB9LFxuICAgICAgICAgIHg1MDlDZXJ0aWZpY2F0ZVByb3BlcnRpZXM6IHtcbiAgICAgICAgICAgIHN1YmplY3Q6IHByb3BzLnN1YmplY3QsXG4gICAgICAgICAgICBzdWJqZWN0QWx0ZXJuYXRpdmVOYW1lczoge1xuICAgICAgICAgICAgICBkbnNOYW1lczogcHJvcHMuZG5zTmFtZXMsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAga2V5VXNhZ2U6IFtcbiAgICAgICAgICAgICAgXCJjUkxTaWduXCIsXG4gICAgICAgICAgICAgIFwiZGF0YUVuY2lwaGVybWVudFwiLFxuICAgICAgICAgICAgICBcImRpZ2l0YWxTaWduYXR1cmVcIixcbiAgICAgICAgICAgICAgXCJrZXlBZ3JlZW1lbnRcIixcbiAgICAgICAgICAgICAgXCJrZXlDZXJ0U2lnblwiLFxuICAgICAgICAgICAgICBcImtleUVuY2lwaGVybWVudFwiLFxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIGV4dGVuZGVkS2V5VXNhZ2U6IFtcIjEuMy42LjEuNS41LjcuMy4xXCJdLFxuICAgICAgICAgICAgdmFsaWRpdHlJbk1vbnRoczogMTIsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgKTtcbiAgICB0aGlzLmNlcnRpZmljYXRlID0gY2VydGlmaWNhdGU7XG5cbiAgICB0aGlzLmlkID0gY2VydGlmaWNhdGUuaWQ7XG4gICAgdGhpcy5zZWNyZXRJZCA9IGNlcnRpZmljYXRlLnNlY3JldElkO1xuXG4gICAgLy8gQWNjdW11bGF0ZSBhbGwgdGhlIGZxZG4gdmFsdWVzXG4gICAgY29uc3QgZGVwZW5kZW5jaWVzOiBzdHJpbmdbXSA9IFtdO1xuICAgIGZvciAoY29uc3QgcG9saWN5IG9mIHByb3BzLmFjY2Vzc1BvbGljaWVzKSB7XG4gICAgICBkZXBlbmRlbmNpZXMucHVzaChwb2xpY3kuZnFkbik7XG4gICAgfVxuXG4gICAgLy8gQWRkIGRlcGVuZGVuY3kgb24gYWxsIGFjY2VzcyBwb2xpY2llc1xuICAgIGNlcnRpZmljYXRlLmFkZE92ZXJyaWRlKFwiZGVwZW5kc19vblwiLCBkZXBlbmRlbmNpZXMpO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBDZXJ0aWZpY2F0ZUlzc3VlciBleHRlbmRzIENvbnN0cnVjdCB7XG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBDZXJ0aWZpY2F0ZUlzc3VlclByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcblxuICAgIGNvbnN0IGNlcnRpZmljYXRlSXNzdWVyID0gbmV3IEtleVZhdWx0Q2VydGlmaWNhdGVJc3N1ZXIoXG4gICAgICB0aGlzLFxuICAgICAgXCJBenVyZUtleVZhdWx0Q2VydGlmaWNhdGVcIixcbiAgICAgIHtcbiAgICAgICAgbmFtZTogcHJvcHMubmFtZSxcbiAgICAgICAga2V5VmF1bHRJZDogcHJvcHMua2V5VmF1bHRJZC5pZCxcbiAgICAgICAgcHJvdmlkZXJOYW1lOiBwcm9wcy5wcm92aWRlck5hbWUsXG4gICAgICB9LFxuICAgICk7XG5cbiAgICAvLyBBY2N1bXVsYXRlIGFsbCB0aGUgZnFkbiB2YWx1ZXNcbiAgICBjb25zdCBkZXBlbmRlbmNpZXM6IHN0cmluZ1tdID0gW107XG4gICAgZm9yIChjb25zdCBwb2xpY3kgb2YgcHJvcHMuYWNjZXNzUG9saWNpZXMpIHtcbiAgICAgIGRlcGVuZGVuY2llcy5wdXNoKHBvbGljeS5mcWRuKTtcbiAgICB9XG5cbiAgICAvLyBBZGQgZGVwZW5kZW5jeSBvbiBhbGwgYWNjZXNzIHBvbGljaWVzXG4gICAgY2VydGlmaWNhdGVJc3N1ZXIuYWRkT3ZlcnJpZGUoXCJkZXBlbmRzX29uXCIsIGRlcGVuZGVuY2llcyk7XG4gIH1cbn1cbiJdfQ==
145
+ CertificateIssuer[_b] = { fqn: "@microsoft/terraform-cdk-constructs.azure_keyvault.CertificateIssuer", version: "0.0.3-pre.7" };
146
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2VydGlmaWNhdGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXp1cmUta2V5dmF1bHQvbGliL2NlcnRpZmljYXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsNkZBQXdGLENBQUMsOERBQThEO0FBQ3ZKLDJHQUFxRztBQUNyRywyQ0FBdUM7QUFvRnZDLE1BQWEscUJBQXNCLFNBQVEsc0JBQVM7SUFLbEQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztPQXFCRztJQUNILFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBaUM7UUFDekUsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVqQix5QkFBeUI7UUFDekIsTUFBTSxVQUFVLEdBQUcsS0FBSyxDQUFDLFVBQVUsSUFBSSxXQUFXLENBQUM7UUFDbkQsTUFBTSxnQkFBZ0IsR0FBRyxLQUFLLENBQUMsZ0JBQWdCLElBQUksRUFBRSxDQUFDO1FBRXRELE1BQU0sV0FBVyxHQUFHLElBQUksMkNBQW1CLENBQ3pDLElBQUksRUFDSiwwQkFBMEIsRUFDMUI7WUFDRSxJQUFJLEVBQUUsS0FBSyxDQUFDLElBQUk7WUFDaEIsVUFBVSxFQUFFLEtBQUssQ0FBQyxVQUFVLENBQUMsRUFBRTtZQUMvQixpQkFBaUIsRUFBRTtnQkFDakIsZ0JBQWdCLEVBQUU7b0JBQ2hCLElBQUksRUFBRSxNQUFNO2lCQUNiO2dCQUNELGFBQWEsRUFBRTtvQkFDYixPQUFPLEVBQUUsS0FBSztvQkFDZCxPQUFPLEVBQUUsSUFBSTtvQkFDYixRQUFRLEVBQUUsSUFBSTtvQkFDZCxVQUFVLEVBQUUsSUFBSTtpQkFDakI7Z0JBQ0QsY0FBYyxFQUFFO29CQUNkO3dCQUNFLE1BQU0sRUFBRTs0QkFDTixVQUFVLEVBQUUsVUFBVTt5QkFDdkI7d0JBQ0QsT0FBTyxFQUFFOzRCQUNQLGdCQUFnQixFQUFFLGdCQUFnQjt5QkFDbkM7cUJBQ0Y7aUJBQ0Y7Z0JBQ0QsZ0JBQWdCLEVBQUU7b0JBQ2hCLFdBQVcsRUFBRSxzQkFBc0I7aUJBQ3BDO2dCQUNELHlCQUF5QixFQUFFO29CQUN6QixPQUFPLEVBQUUsS0FBSyxDQUFDLE9BQU87b0JBQ3RCLHVCQUF1QixFQUFFO3dCQUN2QixRQUFRLEVBQUUsS0FBSyxDQUFDLFFBQVE7cUJBQ3pCO29CQUNELFFBQVEsRUFBRTt3QkFDUixTQUFTO3dCQUNULGtCQUFrQjt3QkFDbEIsa0JBQWtCO3dCQUNsQixjQUFjO3dCQUNkLGFBQWE7d0JBQ2IsaUJBQWlCO3FCQUNsQjtvQkFDRCxnQkFBZ0IsRUFBRSxDQUFDLG1CQUFtQixDQUFDO29CQUN2QyxnQkFBZ0IsRUFBRSxFQUFFO2lCQUNyQjthQUNGO1NBQ0YsQ0FDRixDQUFDO1FBQ0YsSUFBSSxDQUFDLFdBQVcsR0FBRyxXQUFXLENBQUM7UUFFL0IsSUFBSSxDQUFDLEVBQUUsR0FBRyxXQUFXLENBQUMsRUFBRSxDQUFDO1FBQ3pCLElBQUksQ0FBQyxRQUFRLEdBQUcsV0FBVyxDQUFDLFFBQVEsQ0FBQztRQUVyQyxpQ0FBaUM7UUFDakMsTUFBTSxZQUFZLEdBQWEsRUFBRSxDQUFDO1FBQ2xDLEtBQUssTUFBTSxNQUFNLElBQUksS0FBSyxDQUFDLGNBQWMsRUFBRTtZQUN6QyxZQUFZLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUNoQztRQUVELHdDQUF3QztRQUN4QyxXQUFXLENBQUMsV0FBVyxDQUFDLFlBQVksRUFBRSxZQUFZLENBQUMsQ0FBQztJQUN0RCxDQUFDOztBQS9GSCxzREFnR0M7OztBQUVELE1BQWEsaUJBQWtCLFNBQVEsc0JBQVM7SUFDOUM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O09BNkJHO0lBQ0gsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUE2QjtRQUNyRSxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRWpCLE1BQU0saUJBQWlCLEdBQUcsSUFBSSx3REFBeUIsQ0FDckQsSUFBSSxFQUNKLDBCQUEwQixFQUMxQjtZQUNFLElBQUksRUFBRSxLQUFLLENBQUMsSUFBSTtZQUNoQixVQUFVLEVBQUUsS0FBSyxDQUFDLFVBQVUsQ0FBQyxFQUFFO1lBQy9CLFlBQVksRUFBRSxLQUFLLENBQUMsWUFBWTtTQUNqQyxDQUNGLENBQUM7UUFFRixpQ0FBaUM7UUFDakMsTUFBTSxZQUFZLEdBQWEsRUFBRSxDQUFDO1FBQ2xDLEtBQUssTUFBTSxNQUFNLElBQUksS0FBSyxDQUFDLGNBQWMsRUFBRTtZQUN6QyxZQUFZLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUNoQztRQUVELHdDQUF3QztRQUN4QyxpQkFBaUIsQ0FBQyxXQUFXLENBQUMsWUFBWSxFQUFFLFlBQVksQ0FBQyxDQUFDO0lBQzVELENBQUM7O0FBcERILDhDQXFEQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEtleVZhdWx0Q2VydGlmaWNhdGUgfSBmcm9tIFwiQGNka3RmL3Byb3ZpZGVyLWF6dXJlcm0vbGliL2tleS12YXVsdC1jZXJ0aWZpY2F0ZVwiOyAvLyBBZGp1c3QgdGhlIGltcG9ydCBwYXRoIGJhc2VkIG9uIHRoZSBhY3R1YWwgbW9kdWxlIGxvY2F0aW9uLlxuaW1wb3J0IHsgS2V5VmF1bHRDZXJ0aWZpY2F0ZUlzc3VlciB9IGZyb20gXCJAY2RrdGYvcHJvdmlkZXItYXp1cmVybS9saWIva2V5LXZhdWx0LWNlcnRpZmljYXRlLWlzc3VlclwiO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcbmltcG9ydCB7IEFjY2Vzc1BvbGljeSB9IGZyb20gXCIuL3BvbGljeVwiO1xuaW1wb3J0IHsgVmF1bHQgfSBmcm9tIFwiLi92YXVsdFwiO1xuXG4vKipcbiAqIFByb3BlcnRpZXMgcmVxdWlyZWQgdG8gY3JlYXRlIGEgc2VsZi1zaWduZWQgY2VydGlmaWNhdGUgd2l0aGluIEF6dXJlIEtleSBWYXVsdC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTZWxmU2lnbmVkQ2VydGlmaWNhdGVQcm9wcyB7XG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgY2VydGlmaWNhdGUgdG8gYmUgc3RvcmVkIGluIEF6dXJlIEtleSBWYXVsdC5cbiAgICovXG4gIHJlYWRvbmx5IG5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIHN1YmplY3QgbmFtZSBmb3IgdGhlIGNlcnRpZmljYXRlLCB0eXBpY2FsbHkgcmVwcmVzZW50ZWQgaW4gWC41MDkgZGlzdGluZ3Vpc2hlZCBuYW1lIGZvcm1hdC5cbiAgICovXG4gIHJlYWRvbmx5IHN1YmplY3Q6IHN0cmluZztcblxuICAvKipcbiAgICogQWRkaXRpb25hbCBETlMgbmFtZXMgdG8gYmUgaW5jbHVkZWQgaW4gdGhlIGNlcnRpZmljYXRlLiBVc2VmdWwgZm9yIGNyZWF0aW5nIGNlcnRpZmljYXRlcyB2YWxpZCBmb3IgbXVsdGlwbGUgaG9zdG5hbWVzLlxuICAgKi9cbiAgcmVhZG9ubHkgZG5zTmFtZXM6IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBUaGUgSUQgb2YgdGhlIEF6dXJlIEtleSBWYXVsdCB3aGVyZSB0aGUgY2VydGlmaWNhdGUgd2lsbCBiZSBjcmVhdGVkIGFuZCBzdG9yZWQuXG4gICAqL1xuICByZWFkb25seSBrZXlWYXVsdElkOiBWYXVsdDtcblxuICAvKipcbiAgICogU3BlY2lmaWVzIHRoZSB0eXBlIG9mIGFjdGlvbiB0byBwZXJmb3JtIHdpdGggdGhlIGNlcnRpZmljYXRlLCBzdWNoIGFzICdjcmVhdGUnIG9yICdyZW5ldycuXG4gICAqL1xuICByZWFkb25seSBhY3Rpb25UeXBlPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgdGhlIG51bWJlciBvZiBkYXlzIGJlZm9yZSBleHBpcnkgd2hlbiBhbiBhY3Rpb24gc2hvdWxkIGJlIHRha2VuIChlLmcuLCByZW5ldyB0aGUgY2VydGlmaWNhdGUpLlxuICAgKi9cbiAgcmVhZG9ubHkgZGF5c0JlZm9yZUV4cGlyeT86IG51bWJlcjtcblxuICAvKipcbiAgICogQWNjZXNzIHBvbGljaWVzIGRlZmluaW5nIHdobyBjYW4gYWNjZXNzIHRoaXMgY2VydGlmaWNhdGUgd2l0aGluIHRoZSBBenVyZSBLZXkgVmF1bHQuXG4gICAqL1xuICByZWFkb25seSBhY2Nlc3NQb2xpY2llczogQWNjZXNzUG9saWN5W107XG5cbiAgLyoqXG4gICAqIFRhZ3MgdG8gYmUgYXNzb2NpYXRlZCB3aXRoIHRoZSBjZXJ0aWZpY2F0ZSBmb3Igb3JnYW5pemF0aW9uYWwgcHVycG9zZXMuXG4gICAqL1xuICByZWFkb25seSB0YWdzPzogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfTtcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIHJlcXVpcmVkIHRvIGNvbmZpZ3VyZSBhIGNlcnRpZmljYXRlIGlzc3VlciB3aXRoaW4gQXp1cmUgS2V5IFZhdWx0LlxuICovXG5leHBvcnQgaW50ZXJmYWNlIENlcnRpZmljYXRlSXNzdWVyUHJvcHMge1xuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIGNlcnRpZmljYXRlIGlzc3VlciBhcyBpdCB3aWxsIGFwcGVhciBpbiBBenVyZSBLZXkgVmF1bHQuXG4gICAqL1xuICByZWFkb25seSBuYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBwcm92aWRlciB0aGF0IHdpbGwgaXNzdWUgdGhlIGNlcnRpZmljYXRlLCBzdWNoIGFzICdEaWdpQ2VydCcgb3IgJ0dsb2JhbFNpZ24nLlxuICAgKi9cbiAgcmVhZG9ubHkgcHJvdmlkZXJOYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBJRCBvZiB0aGUgQXp1cmUgS2V5IFZhdWx0IHdoZXJlIHRoZSBpc3N1ZXIgd2lsbCBiZSBjb25maWd1cmVkLlxuICAgKi9cbiAgcmVhZG9ubHkga2V5VmF1bHRJZDogVmF1bHQ7XG5cbiAgLyoqXG4gICAqIEFjY2VzcyBwb2xpY2llcyBkZWZpbmluZyB3aG8gY2FuIG1hbmFnZSB0aGlzIGlzc3VlciBhbmQgdGhlIGNlcnRpZmljYXRlcyBpdCBpc3N1ZXMgd2l0aGluIHRoZSBLZXkgVmF1bHQuXG4gICAqL1xuICByZWFkb25seSBhY2Nlc3NQb2xpY2llczogQWNjZXNzUG9saWN5W107XG5cbiAgLyoqXG4gICAqIFRoZSB1c2VybmFtZSByZXF1aXJlZCB0byBhdXRoZW50aWNhdGUgd2l0aCB0aGUgY2VydGlmaWNhdGUgcHJvdmlkZXIgKGlmIGFwcGxpY2FibGUpLlxuICAgKi9cbiAgcmVhZG9ubHkgdXNlcm5hbWU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBwYXNzd29yZCByZXF1aXJlZCB0byBhdXRoZW50aWNhdGUgd2l0aCB0aGUgY2VydGlmaWNhdGUgcHJvdmlkZXIgKGlmIGFwcGxpY2FibGUpLlxuICAgKi9cbiAgcmVhZG9ubHkgcGFzc3dvcmQ/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBjbGFzcyBTZWxmU2lnbmVkQ2VydGlmaWNhdGUgZXh0ZW5kcyBDb25zdHJ1Y3Qge1xuICBwdWJsaWMgY2VydGlmaWNhdGU6IEtleVZhdWx0Q2VydGlmaWNhdGU7XG4gIHB1YmxpYyBpZDogc3RyaW5nO1xuICBwdWJsaWMgc2VjcmV0SWQ6IHN0cmluZztcblxuICAvKipcbiAgICogQ29uc3RydWN0cyBhIHNlbGYtc2lnbmVkIGNlcnRpZmljYXRlIHdpdGhpbiBhbiBBenVyZSBLZXkgVmF1bHQuXG4gICAqXG4gICAqIFRoaXMgY2xhc3MgaXMgcmVzcG9uc2libGUgZm9yIHRoZSBjcmVhdGlvbiBhbmQgbWFuYWdlbWVudCBvZiBhIHNlbGYtc2lnbmVkIGNlcnRpZmljYXRlLCBtYWtpbmcgaXQgYXZhaWxhYmxlXG4gICAqIHdpdGhpbiBhbiBBenVyZSBLZXkgVmF1bHQuIFRoZSBjZXJ0aWZpY2F0ZSBjYW4gYmUgdXNlZCBmb3IgdGVzdGluZyBvciBpbnRlcm5hbCBzZWN1cmUgY29tbXVuaWNhdGlvbnMuXG4gICAqXG4gICAqIEBwYXJhbSBzY29wZSAtIFRoZSBzY29wZSBpbiB3aGljaCB0byBkZWZpbmUgdGhpcyBjb25zdHJ1Y3QsIHVzdWFsbHkgcmVwcmVzZW50aW5nIHRoZSBDbG91ZCBEZXZlbG9wbWVudCBLaXQgKENESykgc3RhY2suXG4gICAqIEBwYXJhbSBpZCAtIFRoZSB1bmlxdWUgaWRlbnRpZmllciBmb3IgdGhpcyBpbnN0YW5jZSBvZiB0aGUgY2VydGlmaWNhdGUuXG4gICAqIEBwYXJhbSBwcm9wcyAtIFRoZSBwcm9wZXJ0aWVzIGZvciBjcmVhdGluZyB0aGUgc2VsZi1zaWduZWQgY2VydGlmaWNhdGUgYXMgZGVmaW5lZCBpbiBTZWxmU2lnbmVkQ2VydGlmaWNhdGVQcm9wcy5cbiAgICpcbiAgICogRXhhbXBsZSB1c2FnZTpcbiAgICogYGBgdHlwZXNjcmlwdFxuICAgKiBuZXcgU2VsZlNpZ25lZENlcnRpZmljYXRlKHRoaXMsICdNeVNlbGZTaWduZWRDZXJ0Jywge1xuICAgKiAgIG5hbWU6ICdleGFtcGxlQ2VydCcsXG4gICAqICAgc3ViamVjdDogJ0NOPWV4YW1wbGUuY29tJyxcbiAgICogICBkbnNOYW1lczogWydleGFtcGxlLmNvbScsICd3d3cuZXhhbXBsZS5jb20nXSxcbiAgICogICBrZXlWYXVsdElkOiBteUtleVZhdWx0LFxuICAgKiAgIGFjY2Vzc1BvbGljaWVzOiBbeyB1c2VySWQ6ICd1c2VyMTIzJywgcGVybWlzc2lvbnM6IFsnYWxsJ10gfV0sXG4gICAqICAgdGFnczogeyBwcm9qZWN0OiAnTXkgUHJvamVjdCcgfVxuICAgKiB9KTtcbiAgICogYGBgXG4gICAqL1xuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogU2VsZlNpZ25lZENlcnRpZmljYXRlUHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuXG4gICAgLy8gUHJvdmlkZSBkZWZhdWx0IHZhbHVlc1xuICAgIGNvbnN0IGFjdGlvblR5cGUgPSBwcm9wcy5hY3Rpb25UeXBlID8/IFwiQXV0b1JlbmV3XCI7XG4gICAgY29uc3QgZGF5c0JlZm9yZUV4cGlyeSA9IHByb3BzLmRheXNCZWZvcmVFeHBpcnkgPz8gNDU7XG5cbiAgICBjb25zdCBjZXJ0aWZpY2F0ZSA9IG5ldyBLZXlWYXVsdENlcnRpZmljYXRlKFxuICAgICAgdGhpcyxcbiAgICAgIFwiQXp1cmVLZXlWYXVsdENlcnRpZmljYXRlXCIsXG4gICAgICB7XG4gICAgICAgIG5hbWU6IHByb3BzLm5hbWUsXG4gICAgICAgIGtleVZhdWx0SWQ6IHByb3BzLmtleVZhdWx0SWQuaWQsXG4gICAgICAgIGNlcnRpZmljYXRlUG9saWN5OiB7XG4gICAgICAgICAgaXNzdWVyUGFyYW1ldGVyczoge1xuICAgICAgICAgICAgbmFtZTogXCJTZWxmXCIsXG4gICAgICAgICAgfSxcbiAgICAgICAgICBrZXlQcm9wZXJ0aWVzOiB7XG4gICAgICAgICAgICBrZXlUeXBlOiBcIlJTQVwiLFxuICAgICAgICAgICAga2V5U2l6ZTogMjA0OCxcbiAgICAgICAgICAgIHJldXNlS2V5OiB0cnVlLFxuICAgICAgICAgICAgZXhwb3J0YWJsZTogdHJ1ZSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIGxpZmV0aW1lQWN0aW9uOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIGFjdGlvbjoge1xuICAgICAgICAgICAgICAgIGFjdGlvblR5cGU6IGFjdGlvblR5cGUsXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIHRyaWdnZXI6IHtcbiAgICAgICAgICAgICAgICBkYXlzQmVmb3JlRXhwaXJ5OiBkYXlzQmVmb3JlRXhwaXJ5LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICBdLFxuICAgICAgICAgIHNlY3JldFByb3BlcnRpZXM6IHtcbiAgICAgICAgICAgIGNvbnRlbnRUeXBlOiBcImFwcGxpY2F0aW9uL3gtcGtjczEyXCIsXG4gICAgICAgICAgfSxcbiAgICAgICAgICB4NTA5Q2VydGlmaWNhdGVQcm9wZXJ0aWVzOiB7XG4gICAgICAgICAgICBzdWJqZWN0OiBwcm9wcy5zdWJqZWN0LFxuICAgICAgICAgICAgc3ViamVjdEFsdGVybmF0aXZlTmFtZXM6IHtcbiAgICAgICAgICAgICAgZG5zTmFtZXM6IHByb3BzLmRuc05hbWVzLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGtleVVzYWdlOiBbXG4gICAgICAgICAgICAgIFwiY1JMU2lnblwiLFxuICAgICAgICAgICAgICBcImRhdGFFbmNpcGhlcm1lbnRcIixcbiAgICAgICAgICAgICAgXCJkaWdpdGFsU2lnbmF0dXJlXCIsXG4gICAgICAgICAgICAgIFwia2V5QWdyZWVtZW50XCIsXG4gICAgICAgICAgICAgIFwia2V5Q2VydFNpZ25cIixcbiAgICAgICAgICAgICAgXCJrZXlFbmNpcGhlcm1lbnRcIixcbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBleHRlbmRlZEtleVVzYWdlOiBbXCIxLjMuNi4xLjUuNS43LjMuMVwiXSxcbiAgICAgICAgICAgIHZhbGlkaXR5SW5Nb250aHM6IDEyLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICk7XG4gICAgdGhpcy5jZXJ0aWZpY2F0ZSA9IGNlcnRpZmljYXRlO1xuXG4gICAgdGhpcy5pZCA9IGNlcnRpZmljYXRlLmlkO1xuICAgIHRoaXMuc2VjcmV0SWQgPSBjZXJ0aWZpY2F0ZS5zZWNyZXRJZDtcblxuICAgIC8vIEFjY3VtdWxhdGUgYWxsIHRoZSBmcWRuIHZhbHVlc1xuICAgIGNvbnN0IGRlcGVuZGVuY2llczogc3RyaW5nW10gPSBbXTtcbiAgICBmb3IgKGNvbnN0IHBvbGljeSBvZiBwcm9wcy5hY2Nlc3NQb2xpY2llcykge1xuICAgICAgZGVwZW5kZW5jaWVzLnB1c2gocG9saWN5LmZxZG4pO1xuICAgIH1cblxuICAgIC8vIEFkZCBkZXBlbmRlbmN5IG9uIGFsbCBhY2Nlc3MgcG9saWNpZXNcbiAgICBjZXJ0aWZpY2F0ZS5hZGRPdmVycmlkZShcImRlcGVuZHNfb25cIiwgZGVwZW5kZW5jaWVzKTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgQ2VydGlmaWNhdGVJc3N1ZXIgZXh0ZW5kcyBDb25zdHJ1Y3Qge1xuICAvKipcbiAgICogQ29uc3RydWN0cyBhIG5ldyBDZXJ0aWZpY2F0ZSBJc3N1ZXIgd2l0aGluIGFuIEF6dXJlIEtleSBWYXVsdC5cbiAgICpcbiAgICogVGhpcyBjbGFzcyBpcyByZXNwb25zaWJsZSBmb3Igc2V0dGluZyB1cCBhIGNlcnRpZmljYXRlIGlzc3VlciBpbiBBenVyZSBLZXkgVmF1bHQuIEEgY2VydGlmaWNhdGUgaXNzdWVyIGlzIGFuIGVudGl0eVxuICAgKiB0aGF0IGlzc3VlcyBkaWdpdGFsIGNlcnRpZmljYXRlcyBmb3IgdXNlIGluIFNTTC9UTFMgYW5kIG90aGVyIGNyeXB0b2dyYXBoaWMgc2VjdXJpdHkgY29udGV4dHMuIEJ5IGNvbmZpZ3VyaW5nIGFuIGlzc3VlcixcbiAgICogeW91IGNhbiBtYW5hZ2UgY2VydGlmaWNhdGUgbGlmZWN5Y2xlIChpc3N1ZSwgcmVuZXcsIHJldm9rZSkgdGhyb3VnaCBBenVyZSBLZXkgVmF1bHQgaW4gY29uanVuY3Rpb24gd2l0aCBleHRlcm5hbCBjZXJ0aWZpY2F0ZVxuICAgKiBhdXRob3JpdGllcyAoQ0FzKS5cbiAgICpcbiAgICogQHBhcmFtIHNjb3BlIC0gVGhlIHNjb3BlIGluIHdoaWNoIHRvIGRlZmluZSB0aGlzIGNvbnN0cnVjdCwgdXN1YWxseSByZXByZXNlbnRpbmcgdGhlIENsb3VkIERldmVsb3BtZW50IEtpdCAoQ0RLKSBzdGFjay5cbiAgICogQHBhcmFtIGlkIC0gVGhlIHVuaXF1ZSBpZGVudGlmaWVyIGZvciB0aGlzIGluc3RhbmNlIG9mIHRoZSBjZXJ0aWZpY2F0ZSBpc3N1ZXIuXG4gICAqIEBwYXJhbSBwcm9wcyAtIFRoZSBwcm9wZXJ0aWVzIGZvciBjb25maWd1cmluZyB0aGUgY2VydGlmaWNhdGUgaXNzdWVyIGFzIGRlZmluZWQgaW4gQ2VydGlmaWNhdGVJc3N1ZXJQcm9wcy4gVGhlc2UgcHJvcGVydGllcyBpbmNsdWRlOlxuICAgKiAgICAgICAgICAgICAgICAtIGBuYW1lYDogUmVxdWlyZWQuIFRoZSBuYW1lIG9mIHRoZSBpc3N1ZXIgYXMgaXQgd2lsbCBhcHBlYXIgaW4gQXp1cmUgS2V5IFZhdWx0LlxuICAgKiAgICAgICAgICAgICAgICAtIGBwcm92aWRlck5hbWVgOiBSZXF1aXJlZC4gVGhlIG5hbWUgb2YgdGhlIHByb3ZpZGVyIHRoYXQgd2lsbCBpc3N1ZSB0aGUgY2VydGlmaWNhdGVzLCBzdWNoIGFzICdEaWdpQ2VydCcgb3IgJ0dsb2JhbFNpZ24nLlxuICAgKiAgICAgICAgICAgICAgICAtIGBrZXlWYXVsdElkYDogUmVxdWlyZWQuIFRoZSBJRCBvZiB0aGUgQXp1cmUgS2V5IFZhdWx0IHdoZXJlIHRoZSBpc3N1ZXIgd2lsbCBiZSBjb25maWd1cmVkLlxuICAgKiAgICAgICAgICAgICAgICAtIGBhY2Nlc3NQb2xpY2llc2A6IFJlcXVpcmVkLiBBY2Nlc3MgcG9saWNpZXMgZGVmaW5pbmcgd2hvIGNhbiBtYW5hZ2UgdGhpcyBpc3N1ZXIgd2l0aGluIHRoZSBLZXkgVmF1bHQuXG4gICAqICAgICAgICAgICAgICAgIC0gYHVzZXJuYW1lYDogT3B0aW9uYWwuIFRoZSB1c2VybmFtZSByZXF1aXJlZCB0byBhdXRoZW50aWNhdGUgd2l0aCB0aGUgY2VydGlmaWNhdGUgcHJvdmlkZXIgKGlmIGFwcGxpY2FibGUpLlxuICAgKiAgICAgICAgICAgICAgICAtIGBwYXNzd29yZGA6IE9wdGlvbmFsLiBUaGUgcGFzc3dvcmQgcmVxdWlyZWQgdG8gYXV0aGVudGljYXRlIHdpdGggdGhlIGNlcnRpZmljYXRlIHByb3ZpZGVyIChpZiBhcHBsaWNhYmxlKS5cbiAgICpcbiAgICogRXhhbXBsZSB1c2FnZTpcbiAgICogYGBgdHlwZXNjcmlwdFxuICAgKiBuZXcgQ2VydGlmaWNhdGVJc3N1ZXIodGhpcywgJ015Q2VydElzc3VlcicsIHtcbiAgICogICBuYW1lOiAnTXlJc3N1ZXInLFxuICAgKiAgIHByb3ZpZGVyTmFtZTogJ0RpZ2lDZXJ0JyxcbiAgICogICBrZXlWYXVsdElkOiBteUtleVZhdWx0LFxuICAgKiAgIGFjY2Vzc1BvbGljaWVzOiBbeyB1c2VySWQ6ICd1c2VyMTIzJywgcGVybWlzc2lvbnM6IFsnbWFuYWdlSXNzdWVyJ10gfV0sXG4gICAqICAgdXNlcm5hbWU6ICd1c2VyQGV4YW1wbGUuY29tJyxcbiAgICogICBwYXNzd29yZDogJ3NlY3VyZXBhc3N3b3JkJ1xuICAgKiB9KTtcbiAgICogYGBgXG4gICAqL1xuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogQ2VydGlmaWNhdGVJc3N1ZXJQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG5cbiAgICBjb25zdCBjZXJ0aWZpY2F0ZUlzc3VlciA9IG5ldyBLZXlWYXVsdENlcnRpZmljYXRlSXNzdWVyKFxuICAgICAgdGhpcyxcbiAgICAgIFwiQXp1cmVLZXlWYXVsdENlcnRpZmljYXRlXCIsXG4gICAgICB7XG4gICAgICAgIG5hbWU6IHByb3BzLm5hbWUsXG4gICAgICAgIGtleVZhdWx0SWQ6IHByb3BzLmtleVZhdWx0SWQuaWQsXG4gICAgICAgIHByb3ZpZGVyTmFtZTogcHJvcHMucHJvdmlkZXJOYW1lLFxuICAgICAgfSxcbiAgICApO1xuXG4gICAgLy8gQWNjdW11bGF0ZSBhbGwgdGhlIGZxZG4gdmFsdWVzXG4gICAgY29uc3QgZGVwZW5kZW5jaWVzOiBzdHJpbmdbXSA9IFtdO1xuICAgIGZvciAoY29uc3QgcG9saWN5IG9mIHByb3BzLmFjY2Vzc1BvbGljaWVzKSB7XG4gICAgICBkZXBlbmRlbmNpZXMucHVzaChwb2xpY3kuZnFkbik7XG4gICAgfVxuXG4gICAgLy8gQWRkIGRlcGVuZGVuY3kgb24gYWxsIGFjY2VzcyBwb2xpY2llc1xuICAgIGNlcnRpZmljYXRlSXNzdWVyLmFkZE92ZXJyaWRlKFwiZGVwZW5kc19vblwiLCBkZXBlbmRlbmNpZXMpO1xuICB9XG59XG4iXX0=
@@ -32,5 +32,41 @@ export interface KeyProps {
32
32
  }
33
33
  export declare class Key extends Construct {
34
34
  vaultKey: KeyVaultKey;
35
+ /**
36
+ * Constructs a new Key resource in Azure Key Vault.
37
+ *
38
+ * This class is responsible for the creation and management of a cryptographic key stored in Azure Key Vault.
39
+ * The key can be used for a variety of cryptographic operations, such as encryption, decryption, signing, or
40
+ * verifying signatures, depending on the permissions granted. It supports different key types and configurations,
41
+ * allowing for customization to meet specific security requirements.
42
+ *
43
+ * @param scope - The scope in which to define this construct, usually representing the Cloud Development Kit (CDK) stack.
44
+ * @param id - The unique identifier for this instance of the Key.
45
+ * @param props - The properties for creating the key as defined in KeyProps. These properties include:
46
+ * - `name`: Required. The name of the key as it will appear in Azure Key Vault.
47
+ * - `keyVaultId`: Required. The ID of the Azure Key Vault where the key will be created.
48
+ * - `keyType`: Required. The type of cryptographic key to create (e.g., RSA, EC).
49
+ * - `keySize`: Optional. The size of the key, typically specified for RSA keys.
50
+ * - `keyOpts`: Optional. Additional options or attributes related to the key's capabilities such as encrypt, decrypt, wrapKey, unwrapKey.
51
+ * - `rotationPolicy`: Optional. The policy settings for rotating the key automatically.
52
+ * - `expires`: Optional. The expiration date of the key in UTC format (YYYY-MM-DDTHH:MM:SSZ).
53
+ * - `accessPolicies`: Required. Access policies defining who can access this key within the Key Vault.
54
+ *
55
+ * Example usage:
56
+ * ```typescript
57
+ * new Key(this, 'myKey', {
58
+ * name: 'encryptionKey',
59
+ * keyVaultId: myKeyVault,
60
+ * keyType: 'RSA',
61
+ * keySize: 2048,
62
+ * keyOpts: ['encrypt', 'decrypt', 'sign', 'verify'],
63
+ * rotationPolicy: {
64
+ * expiryTime: 'P90D'
65
+ * },
66
+ * expires: '2030-01-01T00:00:00Z',
67
+ * accessPolicies: [{ userId: 'user123', permissions: ['get', 'list', 'update'] }]
68
+ * });
69
+ * ```
70
+ */
35
71
  constructor(scope: Construct, id: string, props: KeyProps);
36
72
  }
@@ -6,6 +6,42 @@ const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
6
6
  const key_vault_key_1 = require("@cdktf/provider-azurerm/lib/key-vault-key");
7
7
  const constructs_1 = require("constructs");
8
8
  class Key extends constructs_1.Construct {
9
+ /**
10
+ * Constructs a new Key resource in Azure Key Vault.
11
+ *
12
+ * This class is responsible for the creation and management of a cryptographic key stored in Azure Key Vault.
13
+ * The key can be used for a variety of cryptographic operations, such as encryption, decryption, signing, or
14
+ * verifying signatures, depending on the permissions granted. It supports different key types and configurations,
15
+ * allowing for customization to meet specific security requirements.
16
+ *
17
+ * @param scope - The scope in which to define this construct, usually representing the Cloud Development Kit (CDK) stack.
18
+ * @param id - The unique identifier for this instance of the Key.
19
+ * @param props - The properties for creating the key as defined in KeyProps. These properties include:
20
+ * - `name`: Required. The name of the key as it will appear in Azure Key Vault.
21
+ * - `keyVaultId`: Required. The ID of the Azure Key Vault where the key will be created.
22
+ * - `keyType`: Required. The type of cryptographic key to create (e.g., RSA, EC).
23
+ * - `keySize`: Optional. The size of the key, typically specified for RSA keys.
24
+ * - `keyOpts`: Optional. Additional options or attributes related to the key's capabilities such as encrypt, decrypt, wrapKey, unwrapKey.
25
+ * - `rotationPolicy`: Optional. The policy settings for rotating the key automatically.
26
+ * - `expires`: Optional. The expiration date of the key in UTC format (YYYY-MM-DDTHH:MM:SSZ).
27
+ * - `accessPolicies`: Required. Access policies defining who can access this key within the Key Vault.
28
+ *
29
+ * Example usage:
30
+ * ```typescript
31
+ * new Key(this, 'myKey', {
32
+ * name: 'encryptionKey',
33
+ * keyVaultId: myKeyVault,
34
+ * keyType: 'RSA',
35
+ * keySize: 2048,
36
+ * keyOpts: ['encrypt', 'decrypt', 'sign', 'verify'],
37
+ * rotationPolicy: {
38
+ * expiryTime: 'P90D'
39
+ * },
40
+ * expires: '2030-01-01T00:00:00Z',
41
+ * accessPolicies: [{ userId: 'user123', permissions: ['get', 'list', 'update'] }]
42
+ * });
43
+ * ```
44
+ */
9
45
  constructor(scope, id, props) {
10
46
  super(scope, id);
11
47
  const key = new key_vault_key_1.KeyVaultKey(this, "AzureKeyVaultKey", {
@@ -29,5 +65,5 @@ class Key extends constructs_1.Construct {
29
65
  }
30
66
  exports.Key = Key;
31
67
  _a = JSII_RTTI_SYMBOL_1;
32
- Key[_a] = { fqn: "@microsoft/terraform-cdk-constructs.azure_keyvault.Key", version: "0.0.3-pre.6" };
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2F6dXJlLWtleXZhdWx0L2xpYi9rZXkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSw2RUFHbUQ7QUFDbkQsMkNBQXVDO0FBd0N2QyxNQUFhLEdBQUksU0FBUSxzQkFBUztJQUdoQyxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQWU7UUFDdkQsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVqQixNQUFNLEdBQUcsR0FBRyxJQUFJLDJCQUFXLENBQUMsSUFBSSxFQUFFLGtCQUFrQixFQUFFO1lBQ3BELElBQUksRUFBRSxLQUFLLENBQUMsSUFBSTtZQUNoQixVQUFVLEVBQUUsS0FBSyxDQUFDLFVBQVUsQ0FBQyxFQUFFO1lBQy9CLE9BQU8sRUFBRSxLQUFLLENBQUMsT0FBTztZQUN0QixPQUFPLEVBQUUsS0FBSyxDQUFDLE9BQU87WUFDdEIsT0FBTyxFQUFFLEtBQUssQ0FBQyxPQUFPO1lBQ3RCLGNBQWMsRUFBRSxLQUFLLENBQUMsY0FBYztZQUNwQyxjQUFjLEVBQUUsS0FBSyxDQUFDLE9BQU87U0FDOUIsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLFFBQVEsR0FBRyxHQUFHLENBQUM7UUFFcEIsaUNBQWlDO1FBQ2pDLE1BQU0sWUFBWSxHQUFhLEVBQUUsQ0FBQztRQUNsQyxLQUFLLE1BQU0sTUFBTSxJQUFJLEtBQUssQ0FBQyxjQUFjLEVBQUU7WUFDekMsWUFBWSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDaEM7UUFFRCx3Q0FBd0M7UUFDeEMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxZQUFZLEVBQUUsWUFBWSxDQUFDLENBQUM7SUFDOUMsQ0FBQzs7QUF6Qkgsa0JBMEJDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgS2V5VmF1bHRLZXksXG4gIEtleVZhdWx0S2V5Um90YXRpb25Qb2xpY3ksXG59IGZyb20gXCJAY2RrdGYvcHJvdmlkZXItYXp1cmVybS9saWIva2V5LXZhdWx0LWtleVwiO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcbmltcG9ydCB7IEFjY2Vzc1BvbGljeSB9IGZyb20gXCIuL3BvbGljeVwiO1xuaW1wb3J0IHsgVmF1bHQgfSBmcm9tIFwiLi92YXVsdFwiO1xuXG5leHBvcnQgaW50ZXJmYWNlIEtleVByb3BzIHtcbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBrZXkgaW4gdGhlIEF6dXJlIEtleSBWYXVsdC5cbiAgICovXG4gIHJlYWRvbmx5IG5hbWU6IHN0cmluZztcblxuICByZWFkb25seSBrZXlWYXVsdElkOiBWYXVsdDtcblxuICAvKipcbiAgICogVGhlIHR5cGUgb2Yga2V5IHRvIGNyZWF0ZSAoZS5nLiwgUlNBLCBFQywgZXRjLikuXG4gICAqL1xuICByZWFkb25seSBrZXlUeXBlOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBzaXplIG9mIHRoZSBrZXksIHR5cGljYWxseSBzcGVjaWZpZWQgZm9yIFJTQSBrZXlzLlxuICAgKi9cbiAgcmVhZG9ubHkga2V5U2l6ZT86IG51bWJlcjtcblxuICAvKipcbiAgICogQWRkaXRpb25hbCBvcHRpb25zIG9yIGF0dHJpYnV0ZXMgcmVsYXRlZCB0byB0aGUga2V5LlxuICAgKi9cbiAgcmVhZG9ubHkga2V5T3B0czogc3RyaW5nW107IC8vIFRoaXMgaXMgYSBndWVzcyBiYXNlZCBvbiB0aGUgbmFtZTsgYWRqdXN0IHRoZSB0eXBlIGlmIG5lZWRlZC5cblxuICAvKipcbiAgICogVGhlIHBvbGljeSBmb3Iga2V5IHJvdGF0aW9uLlxuICAgKi9cbiAgcmVhZG9ubHkgcm90YXRpb25Qb2xpY3k/OiBLZXlWYXVsdEtleVJvdGF0aW9uUG9saWN5O1xuXG4gIC8qKlxuICAgKiBFeHBpcmF0aW9uIGRhdGUgb2YgdGhlIGtleS4gRm9ybWF0OiBVVEMsIFlZWVktTU0tRERUSEg6TU06U1NaLlxuICAgKi9cbiAgcmVhZG9ubHkgZXhwaXJlcz86IHN0cmluZztcblxuICByZWFkb25seSBhY2Nlc3NQb2xpY2llczogQWNjZXNzUG9saWN5W107XG59XG5cbmV4cG9ydCBjbGFzcyBLZXkgZXh0ZW5kcyBDb25zdHJ1Y3Qge1xuICBwdWJsaWMgdmF1bHRLZXk6IEtleVZhdWx0S2V5O1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBLZXlQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG5cbiAgICBjb25zdCBrZXkgPSBuZXcgS2V5VmF1bHRLZXkodGhpcywgXCJBenVyZUtleVZhdWx0S2V5XCIsIHtcbiAgICAgIG5hbWU6IHByb3BzLm5hbWUsXG4gICAgICBrZXlWYXVsdElkOiBwcm9wcy5rZXlWYXVsdElkLmlkLFxuICAgICAga2V5VHlwZTogcHJvcHMua2V5VHlwZSxcbiAgICAgIGtleVNpemU6IHByb3BzLmtleVNpemUsXG4gICAgICBrZXlPcHRzOiBwcm9wcy5rZXlPcHRzLFxuICAgICAgcm90YXRpb25Qb2xpY3k6IHByb3BzLnJvdGF0aW9uUG9saWN5LFxuICAgICAgZXhwaXJhdGlvbkRhdGU6IHByb3BzLmV4cGlyZXMsXG4gICAgfSk7XG4gICAgdGhpcy52YXVsdEtleSA9IGtleTtcblxuICAgIC8vIEFjY3VtdWxhdGUgYWxsIHRoZSBmcWRuIHZhbHVlc1xuICAgIGNvbnN0IGRlcGVuZGVuY2llczogc3RyaW5nW10gPSBbXTtcbiAgICBmb3IgKGNvbnN0IHBvbGljeSBvZiBwcm9wcy5hY2Nlc3NQb2xpY2llcykge1xuICAgICAgZGVwZW5kZW5jaWVzLnB1c2gocG9saWN5LmZxZG4pO1xuICAgIH1cblxuICAgIC8vIEFkZCBkZXBlbmRlbmN5IG9uIGFsbCBhY2Nlc3MgcG9saWNpZXNcbiAgICBrZXkuYWRkT3ZlcnJpZGUoXCJkZXBlbmRzX29uXCIsIGRlcGVuZGVuY2llcyk7XG4gIH1cbn1cbiJdfQ==
68
+ Key[_a] = { fqn: "@microsoft/terraform-cdk-constructs.azure_keyvault.Key", version: "0.0.3-pre.7" };
69
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2F6dXJlLWtleXZhdWx0L2xpYi9rZXkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSw2RUFHbUQ7QUFDbkQsMkNBQXVDO0FBd0N2QyxNQUFhLEdBQUksU0FBUSxzQkFBUztJQUdoQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7T0FtQ0c7SUFDSCxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQWU7UUFDdkQsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVqQixNQUFNLEdBQUcsR0FBRyxJQUFJLDJCQUFXLENBQUMsSUFBSSxFQUFFLGtCQUFrQixFQUFFO1lBQ3BELElBQUksRUFBRSxLQUFLLENBQUMsSUFBSTtZQUNoQixVQUFVLEVBQUUsS0FBSyxDQUFDLFVBQVUsQ0FBQyxFQUFFO1lBQy9CLE9BQU8sRUFBRSxLQUFLLENBQUMsT0FBTztZQUN0QixPQUFPLEVBQUUsS0FBSyxDQUFDLE9BQU87WUFDdEIsT0FBTyxFQUFFLEtBQUssQ0FBQyxPQUFPO1lBQ3RCLGNBQWMsRUFBRSxLQUFLLENBQUMsY0FBYztZQUNwQyxjQUFjLEVBQUUsS0FBSyxDQUFDLE9BQU87U0FDOUIsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLFFBQVEsR0FBRyxHQUFHLENBQUM7UUFFcEIsaUNBQWlDO1FBQ2pDLE1BQU0sWUFBWSxHQUFhLEVBQUUsQ0FBQztRQUNsQyxLQUFLLE1BQU0sTUFBTSxJQUFJLEtBQUssQ0FBQyxjQUFjLEVBQUU7WUFDekMsWUFBWSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDaEM7UUFFRCx3Q0FBd0M7UUFDeEMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxZQUFZLEVBQUUsWUFBWSxDQUFDLENBQUM7SUFDOUMsQ0FBQzs7QUE3REgsa0JBOERDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgS2V5VmF1bHRLZXksXG4gIEtleVZhdWx0S2V5Um90YXRpb25Qb2xpY3ksXG59IGZyb20gXCJAY2RrdGYvcHJvdmlkZXItYXp1cmVybS9saWIva2V5LXZhdWx0LWtleVwiO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcbmltcG9ydCB7IEFjY2Vzc1BvbGljeSB9IGZyb20gXCIuL3BvbGljeVwiO1xuaW1wb3J0IHsgVmF1bHQgfSBmcm9tIFwiLi92YXVsdFwiO1xuXG5leHBvcnQgaW50ZXJmYWNlIEtleVByb3BzIHtcbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBrZXkgaW4gdGhlIEF6dXJlIEtleSBWYXVsdC5cbiAgICovXG4gIHJlYWRvbmx5IG5hbWU6IHN0cmluZztcblxuICByZWFkb25seSBrZXlWYXVsdElkOiBWYXVsdDtcblxuICAvKipcbiAgICogVGhlIHR5cGUgb2Yga2V5IHRvIGNyZWF0ZSAoZS5nLiwgUlNBLCBFQywgZXRjLikuXG4gICAqL1xuICByZWFkb25seSBrZXlUeXBlOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBzaXplIG9mIHRoZSBrZXksIHR5cGljYWxseSBzcGVjaWZpZWQgZm9yIFJTQSBrZXlzLlxuICAgKi9cbiAgcmVhZG9ubHkga2V5U2l6ZT86IG51bWJlcjtcblxuICAvKipcbiAgICogQWRkaXRpb25hbCBvcHRpb25zIG9yIGF0dHJpYnV0ZXMgcmVsYXRlZCB0byB0aGUga2V5LlxuICAgKi9cbiAgcmVhZG9ubHkga2V5T3B0czogc3RyaW5nW107IC8vIFRoaXMgaXMgYSBndWVzcyBiYXNlZCBvbiB0aGUgbmFtZTsgYWRqdXN0IHRoZSB0eXBlIGlmIG5lZWRlZC5cblxuICAvKipcbiAgICogVGhlIHBvbGljeSBmb3Iga2V5IHJvdGF0aW9uLlxuICAgKi9cbiAgcmVhZG9ubHkgcm90YXRpb25Qb2xpY3k/OiBLZXlWYXVsdEtleVJvdGF0aW9uUG9saWN5O1xuXG4gIC8qKlxuICAgKiBFeHBpcmF0aW9uIGRhdGUgb2YgdGhlIGtleS4gRm9ybWF0OiBVVEMsIFlZWVktTU0tRERUSEg6TU06U1NaLlxuICAgKi9cbiAgcmVhZG9ubHkgZXhwaXJlcz86IHN0cmluZztcblxuICByZWFkb25seSBhY2Nlc3NQb2xpY2llczogQWNjZXNzUG9saWN5W107XG59XG5cbmV4cG9ydCBjbGFzcyBLZXkgZXh0ZW5kcyBDb25zdHJ1Y3Qge1xuICBwdWJsaWMgdmF1bHRLZXk6IEtleVZhdWx0S2V5O1xuXG4gIC8qKlxuICAgKiBDb25zdHJ1Y3RzIGEgbmV3IEtleSByZXNvdXJjZSBpbiBBenVyZSBLZXkgVmF1bHQuXG4gICAqXG4gICAqIFRoaXMgY2xhc3MgaXMgcmVzcG9uc2libGUgZm9yIHRoZSBjcmVhdGlvbiBhbmQgbWFuYWdlbWVudCBvZiBhIGNyeXB0b2dyYXBoaWMga2V5IHN0b3JlZCBpbiBBenVyZSBLZXkgVmF1bHQuXG4gICAqIFRoZSBrZXkgY2FuIGJlIHVzZWQgZm9yIGEgdmFyaWV0eSBvZiBjcnlwdG9ncmFwaGljIG9wZXJhdGlvbnMsIHN1Y2ggYXMgZW5jcnlwdGlvbiwgZGVjcnlwdGlvbiwgc2lnbmluZywgb3JcbiAgICogdmVyaWZ5aW5nIHNpZ25hdHVyZXMsIGRlcGVuZGluZyBvbiB0aGUgcGVybWlzc2lvbnMgZ3JhbnRlZC4gSXQgc3VwcG9ydHMgZGlmZmVyZW50IGtleSB0eXBlcyBhbmQgY29uZmlndXJhdGlvbnMsXG4gICAqIGFsbG93aW5nIGZvciBjdXN0b21pemF0aW9uIHRvIG1lZXQgc3BlY2lmaWMgc2VjdXJpdHkgcmVxdWlyZW1lbnRzLlxuICAgKlxuICAgKiBAcGFyYW0gc2NvcGUgLSBUaGUgc2NvcGUgaW4gd2hpY2ggdG8gZGVmaW5lIHRoaXMgY29uc3RydWN0LCB1c3VhbGx5IHJlcHJlc2VudGluZyB0aGUgQ2xvdWQgRGV2ZWxvcG1lbnQgS2l0IChDREspIHN0YWNrLlxuICAgKiBAcGFyYW0gaWQgLSBUaGUgdW5pcXVlIGlkZW50aWZpZXIgZm9yIHRoaXMgaW5zdGFuY2Ugb2YgdGhlIEtleS5cbiAgICogQHBhcmFtIHByb3BzIC0gVGhlIHByb3BlcnRpZXMgZm9yIGNyZWF0aW5nIHRoZSBrZXkgYXMgZGVmaW5lZCBpbiBLZXlQcm9wcy4gVGhlc2UgcHJvcGVydGllcyBpbmNsdWRlOlxuICAgKiAgICAgICAgICAgICAgICAtIGBuYW1lYDogUmVxdWlyZWQuIFRoZSBuYW1lIG9mIHRoZSBrZXkgYXMgaXQgd2lsbCBhcHBlYXIgaW4gQXp1cmUgS2V5IFZhdWx0LlxuICAgKiAgICAgICAgICAgICAgICAtIGBrZXlWYXVsdElkYDogUmVxdWlyZWQuIFRoZSBJRCBvZiB0aGUgQXp1cmUgS2V5IFZhdWx0IHdoZXJlIHRoZSBrZXkgd2lsbCBiZSBjcmVhdGVkLlxuICAgKiAgICAgICAgICAgICAgICAtIGBrZXlUeXBlYDogUmVxdWlyZWQuIFRoZSB0eXBlIG9mIGNyeXB0b2dyYXBoaWMga2V5IHRvIGNyZWF0ZSAoZS5nLiwgUlNBLCBFQykuXG4gICAqICAgICAgICAgICAgICAgIC0gYGtleVNpemVgOiBPcHRpb25hbC4gVGhlIHNpemUgb2YgdGhlIGtleSwgdHlwaWNhbGx5IHNwZWNpZmllZCBmb3IgUlNBIGtleXMuXG4gICAqICAgICAgICAgICAgICAgIC0gYGtleU9wdHNgOiBPcHRpb25hbC4gQWRkaXRpb25hbCBvcHRpb25zIG9yIGF0dHJpYnV0ZXMgcmVsYXRlZCB0byB0aGUga2V5J3MgY2FwYWJpbGl0aWVzIHN1Y2ggYXMgZW5jcnlwdCwgZGVjcnlwdCwgd3JhcEtleSwgdW53cmFwS2V5LlxuICAgKiAgICAgICAgICAgICAgICAtIGByb3RhdGlvblBvbGljeWA6IE9wdGlvbmFsLiBUaGUgcG9saWN5IHNldHRpbmdzIGZvciByb3RhdGluZyB0aGUga2V5IGF1dG9tYXRpY2FsbHkuXG4gICAqICAgICAgICAgICAgICAgIC0gYGV4cGlyZXNgOiBPcHRpb25hbC4gVGhlIGV4cGlyYXRpb24gZGF0ZSBvZiB0aGUga2V5IGluIFVUQyBmb3JtYXQgKFlZWVktTU0tRERUSEg6TU06U1NaKS5cbiAgICogICAgICAgICAgICAgICAgLSBgYWNjZXNzUG9saWNpZXNgOiBSZXF1aXJlZC4gQWNjZXNzIHBvbGljaWVzIGRlZmluaW5nIHdobyBjYW4gYWNjZXNzIHRoaXMga2V5IHdpdGhpbiB0aGUgS2V5IFZhdWx0LlxuICAgKlxuICAgKiBFeGFtcGxlIHVzYWdlOlxuICAgKiBgYGB0eXBlc2NyaXB0XG4gICAqIG5ldyBLZXkodGhpcywgJ215S2V5Jywge1xuICAgKiAgIG5hbWU6ICdlbmNyeXB0aW9uS2V5JyxcbiAgICogICBrZXlWYXVsdElkOiBteUtleVZhdWx0LFxuICAgKiAgIGtleVR5cGU6ICdSU0EnLFxuICAgKiAgIGtleVNpemU6IDIwNDgsXG4gICAqICAga2V5T3B0czogWydlbmNyeXB0JywgJ2RlY3J5cHQnLCAnc2lnbicsICd2ZXJpZnknXSxcbiAgICogICByb3RhdGlvblBvbGljeToge1xuICAgKiAgICAgZXhwaXJ5VGltZTogJ1A5MEQnXG4gICAqICAgfSxcbiAgICogICBleHBpcmVzOiAnMjAzMC0wMS0wMVQwMDowMDowMFonLFxuICAgKiAgIGFjY2Vzc1BvbGljaWVzOiBbeyB1c2VySWQ6ICd1c2VyMTIzJywgcGVybWlzc2lvbnM6IFsnZ2V0JywgJ2xpc3QnLCAndXBkYXRlJ10gfV1cbiAgICogfSk7XG4gICAqIGBgYFxuICAgKi9cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IEtleVByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcblxuICAgIGNvbnN0IGtleSA9IG5ldyBLZXlWYXVsdEtleSh0aGlzLCBcIkF6dXJlS2V5VmF1bHRLZXlcIiwge1xuICAgICAgbmFtZTogcHJvcHMubmFtZSxcbiAgICAgIGtleVZhdWx0SWQ6IHByb3BzLmtleVZhdWx0SWQuaWQsXG4gICAgICBrZXlUeXBlOiBwcm9wcy5rZXlUeXBlLFxuICAgICAga2V5U2l6ZTogcHJvcHMua2V5U2l6ZSxcbiAgICAgIGtleU9wdHM6IHByb3BzLmtleU9wdHMsXG4gICAgICByb3RhdGlvblBvbGljeTogcHJvcHMucm90YXRpb25Qb2xpY3ksXG4gICAgICBleHBpcmF0aW9uRGF0ZTogcHJvcHMuZXhwaXJlcyxcbiAgICB9KTtcbiAgICB0aGlzLnZhdWx0S2V5ID0ga2V5O1xuXG4gICAgLy8gQWNjdW11bGF0ZSBhbGwgdGhlIGZxZG4gdmFsdWVzXG4gICAgY29uc3QgZGVwZW5kZW5jaWVzOiBzdHJpbmdbXSA9IFtdO1xuICAgIGZvciAoY29uc3QgcG9saWN5IG9mIHByb3BzLmFjY2Vzc1BvbGljaWVzKSB7XG4gICAgICBkZXBlbmRlbmNpZXMucHVzaChwb2xpY3kuZnFkbik7XG4gICAgfVxuXG4gICAgLy8gQWRkIGRlcGVuZGVuY3kgb24gYWxsIGFjY2VzcyBwb2xpY2llc1xuICAgIGtleS5hZGRPdmVycmlkZShcImRlcGVuZHNfb25cIiwgZGVwZW5kZW5jaWVzKTtcbiAgfVxufVxuIl19
@@ -42,5 +42,35 @@ export interface AccessPolicyProps {
42
42
  }
43
43
  export declare class AccessPolicy extends Construct {
44
44
  readonly fqdn: string;
45
+ /**
46
+ * Constructs a new Access Policy for Azure Key Vault.
47
+ *
48
+ * This class is responsible for setting up access policies that define what operations an Azure AD identity
49
+ * can perform on the keys, secrets, certificates, and storage accounts within a specified Azure Key Vault.
50
+ *
51
+ * @param scope - The scope in which to define this construct, usually representing the Cloud Development Kit (CDK) stack.
52
+ * @param id - The unique identifier for this instance of the access policy.
53
+ * @param props - The properties for creating the access policy as defined in AccessPolicyProps. These include:
54
+ * - `keyVaultId`: The Azure Key Vault identifier where the policy will be set.
55
+ * - `tenantId`: The tenant ID of the Azure AD tenant where the Key Vault is hosted.
56
+ * - `objectId`: The object ID of the Azure AD identity (user, group, or service principal).
57
+ * - `secretPermissions`: Optional list of permissions to secrets within the Key Vault.
58
+ * - `certificatePermissions`: Optional list of permissions to certificates within the Key Vault.
59
+ * - `keyPermissions`: Optional list of permissions to keys within the Key Vault.
60
+ * - `storagePermissions`: Optional list of permissions to storage accounts linked to the Key Vault.
61
+ *
62
+ * Example usage:
63
+ * ```typescript
64
+ * new AccessPolicy(this, 'MyAccessPolicy', {
65
+ * keyVaultId: myKeyVault,
66
+ * tenantId: 'my-tenant-id',
67
+ * objectId: 'user-object-id',
68
+ * keyPermissions: ['get', 'list', 'update'],
69
+ * secretPermissions: ['get'],
70
+ * certificatePermissions: ['get', 'list'],
71
+ * storagePermissions: ['get', 'list']
72
+ * });
73
+ * ```
74
+ */
45
75
  constructor(scope: Construct, id: string, props: AccessPolicyProps);
46
76
  }
@@ -6,6 +6,36 @@ const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
6
6
  const key_vault_access_policy_1 = require("@cdktf/provider-azurerm/lib/key-vault-access-policy");
7
7
  const constructs_1 = require("constructs");
8
8
  class AccessPolicy extends constructs_1.Construct {
9
+ /**
10
+ * Constructs a new Access Policy for Azure Key Vault.
11
+ *
12
+ * This class is responsible for setting up access policies that define what operations an Azure AD identity
13
+ * can perform on the keys, secrets, certificates, and storage accounts within a specified Azure Key Vault.
14
+ *
15
+ * @param scope - The scope in which to define this construct, usually representing the Cloud Development Kit (CDK) stack.
16
+ * @param id - The unique identifier for this instance of the access policy.
17
+ * @param props - The properties for creating the access policy as defined in AccessPolicyProps. These include:
18
+ * - `keyVaultId`: The Azure Key Vault identifier where the policy will be set.
19
+ * - `tenantId`: The tenant ID of the Azure AD tenant where the Key Vault is hosted.
20
+ * - `objectId`: The object ID of the Azure AD identity (user, group, or service principal).
21
+ * - `secretPermissions`: Optional list of permissions to secrets within the Key Vault.
22
+ * - `certificatePermissions`: Optional list of permissions to certificates within the Key Vault.
23
+ * - `keyPermissions`: Optional list of permissions to keys within the Key Vault.
24
+ * - `storagePermissions`: Optional list of permissions to storage accounts linked to the Key Vault.
25
+ *
26
+ * Example usage:
27
+ * ```typescript
28
+ * new AccessPolicy(this, 'MyAccessPolicy', {
29
+ * keyVaultId: myKeyVault,
30
+ * tenantId: 'my-tenant-id',
31
+ * objectId: 'user-object-id',
32
+ * keyPermissions: ['get', 'list', 'update'],
33
+ * secretPermissions: ['get'],
34
+ * certificatePermissions: ['get', 'list'],
35
+ * storagePermissions: ['get', 'list']
36
+ * });
37
+ * ```
38
+ */
9
39
  constructor(scope, id, props) {
10
40
  super(scope, id);
11
41
  const policy = new key_vault_access_policy_1.KeyVaultAccessPolicyA(this, "policy", {
@@ -22,5 +52,5 @@ class AccessPolicy extends constructs_1.Construct {
22
52
  }
23
53
  exports.AccessPolicy = AccessPolicy;
24
54
  _a = JSII_RTTI_SYMBOL_1;
25
- AccessPolicy[_a] = { fqn: "@microsoft/terraform-cdk-constructs.azure_keyvault.AccessPolicy", version: "0.0.3-pre.6" };
26
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9saWN5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2F6dXJlLWtleXZhdWx0L2xpYi9wb2xpY3kudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxpR0FBNEY7QUFDNUYsMkNBQXVDO0FBa0R2QyxNQUFhLFlBQWEsU0FBUSxzQkFBUztJQUd6QyxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQXdCO1FBQ2hFLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFFakIsTUFBTSxNQUFNLEdBQUcsSUFBSSwrQ0FBcUIsQ0FBQyxJQUFJLEVBQUUsUUFBUSxFQUFFO1lBQ3ZELFVBQVUsRUFBRSxLQUFLLENBQUMsVUFBVSxDQUFDLEVBQUU7WUFDL0IsUUFBUSxFQUFFLEtBQUssQ0FBQyxRQUFRO1lBQ3hCLFFBQVEsRUFBRSxLQUFLLENBQUMsUUFBUTtZQUN4QixpQkFBaUIsRUFBRSxLQUFLLENBQUMsaUJBQWlCO1lBQzFDLHNCQUFzQixFQUFFLEtBQUssQ0FBQyxzQkFBc0I7WUFDcEQsY0FBYyxFQUFFLEtBQUssQ0FBQyxjQUFjO1lBQ3BDLGtCQUFrQixFQUFFLEtBQUssQ0FBQyxrQkFBa0I7U0FDN0MsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLElBQUksR0FBRyxrQ0FBa0MsR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUM7SUFDM0UsQ0FBQzs7QUFqQkgsb0NBa0JDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgS2V5VmF1bHRBY2Nlc3NQb2xpY3lBIH0gZnJvbSBcIkBjZGt0Zi9wcm92aWRlci1henVyZXJtL2xpYi9rZXktdmF1bHQtYWNjZXNzLXBvbGljeVwiO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcbmltcG9ydCB7IFZhdWx0IH0gZnJvbSBcIi4vdmF1bHRcIjtcblxuZXhwb3J0IGludGVyZmFjZSBBY2Nlc3NQb2xpY3lQcm9wcyB7XG4gIC8qKlxuICAgKiBUaGUgQXp1cmUgS2V5IFZhdWx0IGluc3RhbmNlIG9yIGl0cyBpZGVudGlmaWVyLlxuICAgKi9cbiAgcmVhZG9ubHkga2V5VmF1bHRJZDogVmF1bHQ7XG5cbiAgLyoqXG4gICAqIFRoZSBBenVyZSBBY3RpdmUgRGlyZWN0b3J5IHRlbmFudCBJRCB3aGVyZSB0aGUgS2V5IFZhdWx0IGlzIGhvc3RlZC5cbiAgICogVGhpcyBpcyB0eXBpY2FsbHkgdGhlIGRpcmVjdG9yeSBJRCBvZiB5b3VyIEF6dXJlIEFELlxuICAgKi9cbiAgcmVhZG9ubHkgdGVuYW50SWQ6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIEF6dXJlIEFjdGl2ZSBEaXJlY3Rvcnkgb2JqZWN0IElEIGZvciB3aGljaCB0aGUgcG9saWN5IHdpbGwgYmUgYXBwbGllZC5cbiAgICogVGhpcyBjYW4gYmUgYSB1c2VyLCBncm91cCwgb3Igc2VydmljZSBwcmluY2lwYWwuXG4gICAqL1xuICByZWFkb25seSBvYmplY3RJZDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgcGVybWlzc2lvbnMgdG8gc2VjcmV0cyBzdG9yZWQgaW4gdGhlIEtleSBWYXVsdC5cbiAgICogUG9zc2libGUgdmFsdWVzIG1pZ2h0IGluY2x1ZGU6ICdnZXQnLCAnbGlzdCcsICdzZXQnLCAnZGVsZXRlJywgZXRjLlxuICAgKiBJZiBub3QgcHJvdmlkZWQsIG5vIHNlY3JldCBwZXJtaXNzaW9ucyBhcmUgc2V0LlxuICAgKi9cbiAgcmVhZG9ubHkgc2VjcmV0UGVybWlzc2lvbnM/OiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogVGhlIHBlcm1pc3Npb25zIHRvIGNlcnRpZmljYXRlcyBzdG9yZWQgaW4gdGhlIEtleSBWYXVsdC5cbiAgICogUG9zc2libGUgdmFsdWVzIG1pZ2h0IGluY2x1ZGU6ICdnZXQnLCAnbGlzdCcsICdjcmVhdGUnLCAndXBkYXRlJywgZXRjLlxuICAgKiBJZiBub3QgcHJvdmlkZWQsIG5vIGNlcnRpZmljYXRlIHBlcm1pc3Npb25zIGFyZSBzZXQuXG4gICAqL1xuICByZWFkb25seSBjZXJ0aWZpY2F0ZVBlcm1pc3Npb25zPzogc3RyaW5nW107XG5cbiAgLyoqXG4gICAqIFRoZSBwZXJtaXNzaW9ucyB0byBrZXlzIHN0b3JlZCBpbiB0aGUgS2V5IFZhdWx0LlxuICAgKiBQb3NzaWJsZSB2YWx1ZXMgbWlnaHQgaW5jbHVkZTogJ2dldCcsICdsaXN0JywgJ2NyZWF0ZScsICdzaWduJywgZXRjLlxuICAgKiBJZiBub3QgcHJvdmlkZWQsIG5vIGtleSBwZXJtaXNzaW9ucyBhcmUgc2V0LlxuICAgKi9cbiAgcmVhZG9ubHkga2V5UGVybWlzc2lvbnM/OiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogVGhlIHBlcm1pc3Npb25zIHRvIHN0b3JhZ2UgYWNjb3VudHMgbGlua2VkIHRvIHRoZSBLZXkgVmF1bHQuXG4gICAqIFBvc3NpYmxlIHZhbHVlcyBtaWdodCBpbmNsdWRlOiAnZ2V0JywgJ2xpc3QnLCAnZGVsZXRlJywgJ3NldCcsIGV0Yy5cbiAgICogSWYgbm90IHByb3ZpZGVkLCBubyBzdG9yYWdlIHBlcm1pc3Npb25zIGFyZSBzZXQuXG4gICAqL1xuICByZWFkb25seSBzdG9yYWdlUGVybWlzc2lvbnM/OiBzdHJpbmdbXTtcbn1cblxuZXhwb3J0IGNsYXNzIEFjY2Vzc1BvbGljeSBleHRlbmRzIENvbnN0cnVjdCB7XG4gIHB1YmxpYyByZWFkb25seSBmcWRuOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IEFjY2Vzc1BvbGljeVByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcblxuICAgIGNvbnN0IHBvbGljeSA9IG5ldyBLZXlWYXVsdEFjY2Vzc1BvbGljeUEodGhpcywgXCJwb2xpY3lcIiwge1xuICAgICAga2V5VmF1bHRJZDogcHJvcHMua2V5VmF1bHRJZC5pZCxcbiAgICAgIHRlbmFudElkOiBwcm9wcy50ZW5hbnRJZCxcbiAgICAgIG9iamVjdElkOiBwcm9wcy5vYmplY3RJZCxcbiAgICAgIHNlY3JldFBlcm1pc3Npb25zOiBwcm9wcy5zZWNyZXRQZXJtaXNzaW9ucyxcbiAgICAgIGNlcnRpZmljYXRlUGVybWlzc2lvbnM6IHByb3BzLmNlcnRpZmljYXRlUGVybWlzc2lvbnMsXG4gICAgICBrZXlQZXJtaXNzaW9uczogcHJvcHMua2V5UGVybWlzc2lvbnMsXG4gICAgICBzdG9yYWdlUGVybWlzc2lvbnM6IHByb3BzLnN0b3JhZ2VQZXJtaXNzaW9ucyxcbiAgICB9KTtcblxuICAgIHRoaXMuZnFkbiA9IFwiYXp1cmVybV9rZXlfdmF1bHRfYWNjZXNzX3BvbGljeS5cIiArIHBvbGljeS5mcmllbmRseVVuaXF1ZUlkO1xuICB9XG59XG4iXX0=
55
+ AccessPolicy[_a] = { fqn: "@microsoft/terraform-cdk-constructs.azure_keyvault.AccessPolicy", version: "0.0.3-pre.7" };
56
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9saWN5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2F6dXJlLWtleXZhdWx0L2xpYi9wb2xpY3kudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxpR0FBNEY7QUFDNUYsMkNBQXVDO0FBa0R2QyxNQUFhLFlBQWEsU0FBUSxzQkFBUztJQUd6Qzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7T0E2Qkc7SUFDSCxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQXdCO1FBQ2hFLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFFakIsTUFBTSxNQUFNLEdBQUcsSUFBSSwrQ0FBcUIsQ0FBQyxJQUFJLEVBQUUsUUFBUSxFQUFFO1lBQ3ZELFVBQVUsRUFBRSxLQUFLLENBQUMsVUFBVSxDQUFDLEVBQUU7WUFDL0IsUUFBUSxFQUFFLEtBQUssQ0FBQyxRQUFRO1lBQ3hCLFFBQVEsRUFBRSxLQUFLLENBQUMsUUFBUTtZQUN4QixpQkFBaUIsRUFBRSxLQUFLLENBQUMsaUJBQWlCO1lBQzFDLHNCQUFzQixFQUFFLEtBQUssQ0FBQyxzQkFBc0I7WUFDcEQsY0FBYyxFQUFFLEtBQUssQ0FBQyxjQUFjO1lBQ3BDLGtCQUFrQixFQUFFLEtBQUssQ0FBQyxrQkFBa0I7U0FDN0MsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLElBQUksR0FBRyxrQ0FBa0MsR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUM7SUFDM0UsQ0FBQzs7QUEvQ0gsb0NBZ0RDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgS2V5VmF1bHRBY2Nlc3NQb2xpY3lBIH0gZnJvbSBcIkBjZGt0Zi9wcm92aWRlci1henVyZXJtL2xpYi9rZXktdmF1bHQtYWNjZXNzLXBvbGljeVwiO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcbmltcG9ydCB7IFZhdWx0IH0gZnJvbSBcIi4vdmF1bHRcIjtcblxuZXhwb3J0IGludGVyZmFjZSBBY2Nlc3NQb2xpY3lQcm9wcyB7XG4gIC8qKlxuICAgKiBUaGUgQXp1cmUgS2V5IFZhdWx0IGluc3RhbmNlIG9yIGl0cyBpZGVudGlmaWVyLlxuICAgKi9cbiAgcmVhZG9ubHkga2V5VmF1bHRJZDogVmF1bHQ7XG5cbiAgLyoqXG4gICAqIFRoZSBBenVyZSBBY3RpdmUgRGlyZWN0b3J5IHRlbmFudCBJRCB3aGVyZSB0aGUgS2V5IFZhdWx0IGlzIGhvc3RlZC5cbiAgICogVGhpcyBpcyB0eXBpY2FsbHkgdGhlIGRpcmVjdG9yeSBJRCBvZiB5b3VyIEF6dXJlIEFELlxuICAgKi9cbiAgcmVhZG9ubHkgdGVuYW50SWQ6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIEF6dXJlIEFjdGl2ZSBEaXJlY3Rvcnkgb2JqZWN0IElEIGZvciB3aGljaCB0aGUgcG9saWN5IHdpbGwgYmUgYXBwbGllZC5cbiAgICogVGhpcyBjYW4gYmUgYSB1c2VyLCBncm91cCwgb3Igc2VydmljZSBwcmluY2lwYWwuXG4gICAqL1xuICByZWFkb25seSBvYmplY3RJZDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgcGVybWlzc2lvbnMgdG8gc2VjcmV0cyBzdG9yZWQgaW4gdGhlIEtleSBWYXVsdC5cbiAgICogUG9zc2libGUgdmFsdWVzIG1pZ2h0IGluY2x1ZGU6ICdnZXQnLCAnbGlzdCcsICdzZXQnLCAnZGVsZXRlJywgZXRjLlxuICAgKiBJZiBub3QgcHJvdmlkZWQsIG5vIHNlY3JldCBwZXJtaXNzaW9ucyBhcmUgc2V0LlxuICAgKi9cbiAgcmVhZG9ubHkgc2VjcmV0UGVybWlzc2lvbnM/OiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogVGhlIHBlcm1pc3Npb25zIHRvIGNlcnRpZmljYXRlcyBzdG9yZWQgaW4gdGhlIEtleSBWYXVsdC5cbiAgICogUG9zc2libGUgdmFsdWVzIG1pZ2h0IGluY2x1ZGU6ICdnZXQnLCAnbGlzdCcsICdjcmVhdGUnLCAndXBkYXRlJywgZXRjLlxuICAgKiBJZiBub3QgcHJvdmlkZWQsIG5vIGNlcnRpZmljYXRlIHBlcm1pc3Npb25zIGFyZSBzZXQuXG4gICAqL1xuICByZWFkb25seSBjZXJ0aWZpY2F0ZVBlcm1pc3Npb25zPzogc3RyaW5nW107XG5cbiAgLyoqXG4gICAqIFRoZSBwZXJtaXNzaW9ucyB0byBrZXlzIHN0b3JlZCBpbiB0aGUgS2V5IFZhdWx0LlxuICAgKiBQb3NzaWJsZSB2YWx1ZXMgbWlnaHQgaW5jbHVkZTogJ2dldCcsICdsaXN0JywgJ2NyZWF0ZScsICdzaWduJywgZXRjLlxuICAgKiBJZiBub3QgcHJvdmlkZWQsIG5vIGtleSBwZXJtaXNzaW9ucyBhcmUgc2V0LlxuICAgKi9cbiAgcmVhZG9ubHkga2V5UGVybWlzc2lvbnM/OiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogVGhlIHBlcm1pc3Npb25zIHRvIHN0b3JhZ2UgYWNjb3VudHMgbGlua2VkIHRvIHRoZSBLZXkgVmF1bHQuXG4gICAqIFBvc3NpYmxlIHZhbHVlcyBtaWdodCBpbmNsdWRlOiAnZ2V0JywgJ2xpc3QnLCAnZGVsZXRlJywgJ3NldCcsIGV0Yy5cbiAgICogSWYgbm90IHByb3ZpZGVkLCBubyBzdG9yYWdlIHBlcm1pc3Npb25zIGFyZSBzZXQuXG4gICAqL1xuICByZWFkb25seSBzdG9yYWdlUGVybWlzc2lvbnM/OiBzdHJpbmdbXTtcbn1cblxuZXhwb3J0IGNsYXNzIEFjY2Vzc1BvbGljeSBleHRlbmRzIENvbnN0cnVjdCB7XG4gIHB1YmxpYyByZWFkb25seSBmcWRuOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIENvbnN0cnVjdHMgYSBuZXcgQWNjZXNzIFBvbGljeSBmb3IgQXp1cmUgS2V5IFZhdWx0LlxuICAgKlxuICAgKiBUaGlzIGNsYXNzIGlzIHJlc3BvbnNpYmxlIGZvciBzZXR0aW5nIHVwIGFjY2VzcyBwb2xpY2llcyB0aGF0IGRlZmluZSB3aGF0IG9wZXJhdGlvbnMgYW4gQXp1cmUgQUQgaWRlbnRpdHlcbiAgICogY2FuIHBlcmZvcm0gb24gdGhlIGtleXMsIHNlY3JldHMsIGNlcnRpZmljYXRlcywgYW5kIHN0b3JhZ2UgYWNjb3VudHMgd2l0aGluIGEgc3BlY2lmaWVkIEF6dXJlIEtleSBWYXVsdC5cbiAgICpcbiAgICogQHBhcmFtIHNjb3BlIC0gVGhlIHNjb3BlIGluIHdoaWNoIHRvIGRlZmluZSB0aGlzIGNvbnN0cnVjdCwgdXN1YWxseSByZXByZXNlbnRpbmcgdGhlIENsb3VkIERldmVsb3BtZW50IEtpdCAoQ0RLKSBzdGFjay5cbiAgICogQHBhcmFtIGlkIC0gVGhlIHVuaXF1ZSBpZGVudGlmaWVyIGZvciB0aGlzIGluc3RhbmNlIG9mIHRoZSBhY2Nlc3MgcG9saWN5LlxuICAgKiBAcGFyYW0gcHJvcHMgLSBUaGUgcHJvcGVydGllcyBmb3IgY3JlYXRpbmcgdGhlIGFjY2VzcyBwb2xpY3kgYXMgZGVmaW5lZCBpbiBBY2Nlc3NQb2xpY3lQcm9wcy4gVGhlc2UgaW5jbHVkZTpcbiAgICogICAgICAgICAgICAgICAgLSBga2V5VmF1bHRJZGA6IFRoZSBBenVyZSBLZXkgVmF1bHQgaWRlbnRpZmllciB3aGVyZSB0aGUgcG9saWN5IHdpbGwgYmUgc2V0LlxuICAgKiAgICAgICAgICAgICAgICAtIGB0ZW5hbnRJZGA6IFRoZSB0ZW5hbnQgSUQgb2YgdGhlIEF6dXJlIEFEIHRlbmFudCB3aGVyZSB0aGUgS2V5IFZhdWx0IGlzIGhvc3RlZC5cbiAgICogICAgICAgICAgICAgICAgLSBgb2JqZWN0SWRgOiBUaGUgb2JqZWN0IElEIG9mIHRoZSBBenVyZSBBRCBpZGVudGl0eSAodXNlciwgZ3JvdXAsIG9yIHNlcnZpY2UgcHJpbmNpcGFsKS5cbiAgICogICAgICAgICAgICAgICAgLSBgc2VjcmV0UGVybWlzc2lvbnNgOiBPcHRpb25hbCBsaXN0IG9mIHBlcm1pc3Npb25zIHRvIHNlY3JldHMgd2l0aGluIHRoZSBLZXkgVmF1bHQuXG4gICAqICAgICAgICAgICAgICAgIC0gYGNlcnRpZmljYXRlUGVybWlzc2lvbnNgOiBPcHRpb25hbCBsaXN0IG9mIHBlcm1pc3Npb25zIHRvIGNlcnRpZmljYXRlcyB3aXRoaW4gdGhlIEtleSBWYXVsdC5cbiAgICogICAgICAgICAgICAgICAgLSBga2V5UGVybWlzc2lvbnNgOiBPcHRpb25hbCBsaXN0IG9mIHBlcm1pc3Npb25zIHRvIGtleXMgd2l0aGluIHRoZSBLZXkgVmF1bHQuXG4gICAqICAgICAgICAgICAgICAgIC0gYHN0b3JhZ2VQZXJtaXNzaW9uc2A6IE9wdGlvbmFsIGxpc3Qgb2YgcGVybWlzc2lvbnMgdG8gc3RvcmFnZSBhY2NvdW50cyBsaW5rZWQgdG8gdGhlIEtleSBWYXVsdC5cbiAgICpcbiAgICogRXhhbXBsZSB1c2FnZTpcbiAgICogYGBgdHlwZXNjcmlwdFxuICAgKiBuZXcgQWNjZXNzUG9saWN5KHRoaXMsICdNeUFjY2Vzc1BvbGljeScsIHtcbiAgICogICBrZXlWYXVsdElkOiBteUtleVZhdWx0LFxuICAgKiAgIHRlbmFudElkOiAnbXktdGVuYW50LWlkJyxcbiAgICogICBvYmplY3RJZDogJ3VzZXItb2JqZWN0LWlkJyxcbiAgICogICBrZXlQZXJtaXNzaW9uczogWydnZXQnLCAnbGlzdCcsICd1cGRhdGUnXSxcbiAgICogICBzZWNyZXRQZXJtaXNzaW9uczogWydnZXQnXSxcbiAgICogICBjZXJ0aWZpY2F0ZVBlcm1pc3Npb25zOiBbJ2dldCcsICdsaXN0J10sXG4gICAqICAgc3RvcmFnZVBlcm1pc3Npb25zOiBbJ2dldCcsICdsaXN0J11cbiAgICogfSk7XG4gICAqIGBgYFxuICAgKi9cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IEFjY2Vzc1BvbGljeVByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcblxuICAgIGNvbnN0IHBvbGljeSA9IG5ldyBLZXlWYXVsdEFjY2Vzc1BvbGljeUEodGhpcywgXCJwb2xpY3lcIiwge1xuICAgICAga2V5VmF1bHRJZDogcHJvcHMua2V5VmF1bHRJZC5pZCxcbiAgICAgIHRlbmFudElkOiBwcm9wcy50ZW5hbnRJZCxcbiAgICAgIG9iamVjdElkOiBwcm9wcy5vYmplY3RJZCxcbiAgICAgIHNlY3JldFBlcm1pc3Npb25zOiBwcm9wcy5zZWNyZXRQZXJtaXNzaW9ucyxcbiAgICAgIGNlcnRpZmljYXRlUGVybWlzc2lvbnM6IHByb3BzLmNlcnRpZmljYXRlUGVybWlzc2lvbnMsXG4gICAgICBrZXlQZXJtaXNzaW9uczogcHJvcHMua2V5UGVybWlzc2lvbnMsXG4gICAgICBzdG9yYWdlUGVybWlzc2lvbnM6IHByb3BzLnN0b3JhZ2VQZXJtaXNzaW9ucyxcbiAgICB9KTtcblxuICAgIHRoaXMuZnFkbiA9IFwiYXp1cmVybV9rZXlfdmF1bHRfYWNjZXNzX3BvbGljeS5cIiArIHBvbGljeS5mcmllbmRseVVuaXF1ZUlkO1xuICB9XG59XG4iXX0=
@@ -35,5 +35,36 @@ export interface SecretProps {
35
35
  }
36
36
  export declare class Secret extends Construct {
37
37
  secretId: string;
38
+ /**
39
+ * Constructs a new Azure Key Vault Secret within a specified Key Vault.
40
+ *
41
+ * This class facilitates the creation and management of a secret, allowing sensitive information to be stored securely
42
+ * and accessed as needed while maintaining confidentiality and control through defined access policies.
43
+ *
44
+ * @param scope - The scope in which to define this construct, typically representing the Cloud Development Kit (CDK) stack.
45
+ * @param id - The unique identifier for this instance of the secret.
46
+ * @param props - The properties for creating the secret as defined in SecretProps. These include:
47
+ * - `keyVaultId`: The ID of the Key Vault in which to store the secret.
48
+ * - `name`: The name of the secret.
49
+ * - `value`: The confidential data to be stored as the secret.
50
+ * - `expirationDate`: Optional. The expiration date of the secret.
51
+ * - `contentType`: Optional. A label hinting at the content type of the secret's value.
52
+ * - `accessPolicies`: Access policies that dictate permissions for the secret.
53
+ *
54
+ * Example usage:
55
+ * ```typescript
56
+ * new Secret(this, 'mySecret', {
57
+ * keyVaultId: myKeyVault,
58
+ * name: 'dbPassword',
59
+ * value: 'p@ssw0rd!',
60
+ * expirationDate: '2030-01-01T00:00:00Z',
61
+ * contentType: 'password',
62
+ * accessPolicies: [{
63
+ * objectId: '12345-user-object-id',
64
+ * permissions: ['get', 'list']
65
+ * }]
66
+ * });
67
+ * ```
68
+ */
38
69
  constructor(scope: Construct, id: string, props: SecretProps);
39
70
  }