pulumi-azuread 5.48.0a1706744699__py3-none-any.whl → 6.8.0a1766208344__py3-none-any.whl

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.

Potentially problematic release.


This version of pulumi-azuread might be problematic. Click here for more details.

Files changed (87) hide show
  1. pulumi_azuread/__init__.py +48 -1
  2. pulumi_azuread/_inputs.py +3803 -919
  3. pulumi_azuread/_utilities.py +52 -12
  4. pulumi_azuread/access_package.py +84 -78
  5. pulumi_azuread/access_package_assignment_policy.py +202 -196
  6. pulumi_azuread/access_package_catalog.py +82 -76
  7. pulumi_azuread/access_package_catalog_role_assignment.py +73 -67
  8. pulumi_azuread/access_package_resource_catalog_association.py +73 -67
  9. pulumi_azuread/access_package_resource_package_association.py +79 -73
  10. pulumi_azuread/administrative_unit.py +120 -100
  11. pulumi_azuread/administrative_unit_member.py +66 -50
  12. pulumi_azuread/administrative_unit_role_member.py +75 -69
  13. pulumi_azuread/app_role_assignment.py +164 -264
  14. pulumi_azuread/application.py +766 -692
  15. pulumi_azuread/application_api_access.py +84 -80
  16. pulumi_azuread/application_app_role.py +120 -116
  17. pulumi_azuread/application_certificate.py +349 -211
  18. pulumi_azuread/application_fallback_public_client.py +50 -44
  19. pulumi_azuread/application_federated_identity_credential.py +142 -197
  20. pulumi_azuread/application_from_template.py +90 -84
  21. pulumi_azuread/application_identifier_uri.py +56 -52
  22. pulumi_azuread/application_known_clients.py +50 -44
  23. pulumi_azuread/application_optional_claims.py +87 -81
  24. pulumi_azuread/application_owner.py +76 -42
  25. pulumi_azuread/application_password.py +159 -205
  26. pulumi_azuread/application_permission_scope.py +160 -156
  27. pulumi_azuread/application_pre_authorized.py +120 -236
  28. pulumi_azuread/application_redirect_uris.py +75 -69
  29. pulumi_azuread/application_registration.py +315 -309
  30. pulumi_azuread/authentication_strength_policy.py +73 -67
  31. pulumi_azuread/claims_mapping_policy.py +48 -42
  32. pulumi_azuread/conditional_access_policy.py +248 -232
  33. pulumi_azuread/config/__init__.py +2 -1
  34. pulumi_azuread/config/__init__.pyi +23 -17
  35. pulumi_azuread/config/vars.py +47 -37
  36. pulumi_azuread/custom_directory_role.py +128 -122
  37. pulumi_azuread/directory_role.py +60 -54
  38. pulumi_azuread/directory_role_assignment.py +194 -181
  39. pulumi_azuread/directory_role_eligibility_schedule_request.py +86 -80
  40. pulumi_azuread/directory_role_member.py +54 -48
  41. pulumi_azuread/get_access_package.py +45 -31
  42. pulumi_azuread/get_access_package_catalog.py +40 -27
  43. pulumi_azuread/get_access_package_catalog_role.py +39 -25
  44. pulumi_azuread/get_administrative_unit.py +42 -27
  45. pulumi_azuread/get_application.py +135 -94
  46. pulumi_azuread/get_application_published_app_ids.py +42 -47
  47. pulumi_azuread/get_application_template.py +49 -33
  48. pulumi_azuread/get_client_config.py +24 -15
  49. pulumi_azuread/get_directory_object.py +32 -21
  50. pulumi_azuread/get_directory_role_templates.py +20 -12
  51. pulumi_azuread/get_directory_roles.py +23 -14
  52. pulumi_azuread/get_domains.py +65 -46
  53. pulumi_azuread/get_group.py +147 -88
  54. pulumi_azuread/get_group_role_management_policy.py +178 -0
  55. pulumi_azuread/get_groups.py +71 -51
  56. pulumi_azuread/get_named_location.py +47 -22
  57. pulumi_azuread/get_service_principal.py +108 -90
  58. pulumi_azuread/get_service_principals.py +60 -64
  59. pulumi_azuread/get_user.py +186 -118
  60. pulumi_azuread/get_users.py +96 -53
  61. pulumi_azuread/group.py +622 -464
  62. pulumi_azuread/group_member.py +56 -50
  63. pulumi_azuread/group_role_management_policy.py +544 -0
  64. pulumi_azuread/group_without_members.py +1610 -0
  65. pulumi_azuread/invitation.py +126 -120
  66. pulumi_azuread/named_location.py +90 -76
  67. pulumi_azuread/outputs.py +2844 -1308
  68. pulumi_azuread/privileged_access_group_assignment_schedule.py +695 -0
  69. pulumi_azuread/privileged_access_group_eligibility_schedule.py +695 -0
  70. pulumi_azuread/provider.py +292 -246
  71. pulumi_azuread/pulumi-plugin.json +2 -1
  72. pulumi_azuread/service_principal.py +400 -461
  73. pulumi_azuread/service_principal_certificate.py +230 -145
  74. pulumi_azuread/service_principal_claims_mapping_policy_assignment.py +53 -47
  75. pulumi_azuread/service_principal_delegated_permission_grant.py +146 -140
  76. pulumi_azuread/service_principal_password.py +156 -141
  77. pulumi_azuread/service_principal_token_signing_certificate.py +119 -124
  78. pulumi_azuread/synchronization_job.py +105 -111
  79. pulumi_azuread/synchronization_job_provision_on_demand.py +396 -0
  80. pulumi_azuread/synchronization_secret.py +64 -70
  81. pulumi_azuread/user.py +776 -730
  82. pulumi_azuread/user_flow_attribute.py +76 -70
  83. {pulumi_azuread-5.48.0a1706744699.dist-info → pulumi_azuread-6.8.0a1766208344.dist-info}/METADATA +21 -20
  84. pulumi_azuread-6.8.0a1766208344.dist-info/RECORD +87 -0
  85. {pulumi_azuread-5.48.0a1706744699.dist-info → pulumi_azuread-6.8.0a1766208344.dist-info}/WHEEL +1 -1
  86. pulumi_azuread-5.48.0a1706744699.dist-info/RECORD +0 -81
  87. {pulumi_azuread-5.48.0a1706744699.dist-info → pulumi_azuread-6.8.0a1766208344.dist-info}/top_level.txt +0 -0
@@ -1,12 +1,17 @@
1
1
  # coding=utf-8
2
- # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
2
+ # *** WARNING: this file was generated by pulumi-language-python. ***
3
3
  # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
4
 
5
- import copy
5
+ import builtins as _builtins
6
6
  import warnings
7
+ import sys
7
8
  import pulumi
8
9
  import pulumi.runtime
9
10
  from typing import Any, Mapping, Optional, Sequence, Union, overload
11
+ if sys.version_info >= (3, 11):
12
+ from typing import NotRequired, TypedDict, TypeAlias
13
+ else:
14
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
10
15
  from . import _utilities
11
16
 
12
17
  __all__ = ['ServicePrincipalCertificateArgs', 'ServicePrincipalCertificate']
@@ -14,28 +19,28 @@ __all__ = ['ServicePrincipalCertificateArgs', 'ServicePrincipalCertificate']
14
19
  @pulumi.input_type
15
20
  class ServicePrincipalCertificateArgs:
16
21
  def __init__(__self__, *,
17
- service_principal_id: pulumi.Input[str],
18
- value: pulumi.Input[str],
19
- encoding: Optional[pulumi.Input[str]] = None,
20
- end_date: Optional[pulumi.Input[str]] = None,
21
- end_date_relative: Optional[pulumi.Input[str]] = None,
22
- key_id: Optional[pulumi.Input[str]] = None,
23
- start_date: Optional[pulumi.Input[str]] = None,
24
- type: Optional[pulumi.Input[str]] = None):
22
+ service_principal_id: pulumi.Input[_builtins.str],
23
+ value: pulumi.Input[_builtins.str],
24
+ encoding: Optional[pulumi.Input[_builtins.str]] = None,
25
+ end_date: Optional[pulumi.Input[_builtins.str]] = None,
26
+ end_date_relative: Optional[pulumi.Input[_builtins.str]] = None,
27
+ key_id: Optional[pulumi.Input[_builtins.str]] = None,
28
+ start_date: Optional[pulumi.Input[_builtins.str]] = None,
29
+ type: Optional[pulumi.Input[_builtins.str]] = None):
25
30
  """
26
31
  The set of arguments for constructing a ServicePrincipalCertificate resource.
27
- :param pulumi.Input[str] service_principal_id: The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created.
28
- :param pulumi.Input[str] value: The certificate data, which can be PEM encoded, base64 encoded DER or hexadecimal encoded DER. See also the `encoding` argument.
29
- :param pulumi.Input[str] encoding: Specifies the encoding used for the supplied certificate data. Must be one of `pem`, `base64` or `hex`. Defaults to `pem`.
32
+ :param pulumi.Input[_builtins.str] service_principal_id: The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created.
33
+ :param pulumi.Input[_builtins.str] value: The certificate data, which can be PEM encoded, base64 encoded DER or hexadecimal encoded DER. See also the `encoding` argument.
34
+ :param pulumi.Input[_builtins.str] encoding: Specifies the encoding used for the supplied certificate data. Must be one of `pem`, `base64` or `hex`. Defaults to `pem`.
30
35
 
31
36
  > **Tip for Azure Key Vault** The `hex` encoding option is useful for consuming certificate data from the azurerm_key_vault_certificate resource.
32
- :param pulumi.Input[str] end_date: The end date until which the certificate is valid, formatted as an RFC3339 date string (e.g. `2018-01-01T01:02:03Z`). Changing this field forces a new resource to be created.
33
- :param pulumi.Input[str] end_date_relative: A relative duration for which the certificate is valid until, for example `240h` (10 days) or `2400h30m`. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h". Changing this field forces a new resource to be created.
37
+ :param pulumi.Input[_builtins.str] end_date: The end date until which the certificate is valid, formatted as an RFC3339 date string (e.g. `2018-01-01T01:02:03Z`). Changing this field forces a new resource to be created.
38
+ :param pulumi.Input[_builtins.str] end_date_relative: A relative duration for which the certificate is valid until, for example `240h` (10 days) or `2400h30m`. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h". Changing this field forces a new resource to be created.
34
39
 
35
40
  > One of `end_date` or `end_date_relative` must be set. The maximum duration is determined by Azure AD.
36
- :param pulumi.Input[str] key_id: A UUID used to uniquely identify this certificate. If not specified a UUID will be automatically generated. Changing this field forces a new resource to be created.
37
- :param pulumi.Input[str] start_date: The start date from which the certificate is valid, formatted as an RFC3339 date string (e.g. `2018-01-01T01:02:03Z`). If this isn't specified, the value is determined by Azure Active Directory and is usually the start date of the certificate for asymmetric keys, or the current timestamp for symmetric keys. Changing this field forces a new resource to be created.
38
- :param pulumi.Input[str] type: The type of key/certificate. Must be one of `AsymmetricX509Cert` or `Symmetric`. Changing this fields forces a new resource to be created.
41
+ :param pulumi.Input[_builtins.str] key_id: A UUID used to uniquely identify this certificate. If not specified a UUID will be automatically generated. Changing this field forces a new resource to be created.
42
+ :param pulumi.Input[_builtins.str] start_date: The start date from which the certificate is valid, formatted as an RFC3339 date string (e.g. `2018-01-01T01:02:03Z`). If this isn't specified, the value is determined by Azure Active Directory and is usually the start date of the certificate for asymmetric keys, or the current timestamp for symmetric keys. Changing this field forces a new resource to be created.
43
+ :param pulumi.Input[_builtins.str] type: The type of key/certificate. Must be one of `AsymmetricX509Cert` or `Symmetric`. Changing this fields forces a new resource to be created.
39
44
  """
40
45
  pulumi.set(__self__, "service_principal_id", service_principal_id)
41
46
  pulumi.set(__self__, "value", value)
@@ -43,6 +48,9 @@ class ServicePrincipalCertificateArgs:
43
48
  pulumi.set(__self__, "encoding", encoding)
44
49
  if end_date is not None:
45
50
  pulumi.set(__self__, "end_date", end_date)
51
+ if end_date_relative is not None:
52
+ warnings.warn("""The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property.""", DeprecationWarning)
53
+ pulumi.log.warn("""end_date_relative is deprecated: The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property.""")
46
54
  if end_date_relative is not None:
47
55
  pulumi.set(__self__, "end_date_relative", end_date_relative)
48
56
  if key_id is not None:
@@ -52,33 +60,33 @@ class ServicePrincipalCertificateArgs:
52
60
  if type is not None:
53
61
  pulumi.set(__self__, "type", type)
54
62
 
55
- @property
63
+ @_builtins.property
56
64
  @pulumi.getter(name="servicePrincipalId")
57
- def service_principal_id(self) -> pulumi.Input[str]:
65
+ def service_principal_id(self) -> pulumi.Input[_builtins.str]:
58
66
  """
59
- The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created.
67
+ The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created.
60
68
  """
61
69
  return pulumi.get(self, "service_principal_id")
62
70
 
63
71
  @service_principal_id.setter
64
- def service_principal_id(self, value: pulumi.Input[str]):
72
+ def service_principal_id(self, value: pulumi.Input[_builtins.str]):
65
73
  pulumi.set(self, "service_principal_id", value)
66
74
 
67
- @property
75
+ @_builtins.property
68
76
  @pulumi.getter
69
- def value(self) -> pulumi.Input[str]:
77
+ def value(self) -> pulumi.Input[_builtins.str]:
70
78
  """
71
79
  The certificate data, which can be PEM encoded, base64 encoded DER or hexadecimal encoded DER. See also the `encoding` argument.
72
80
  """
73
81
  return pulumi.get(self, "value")
74
82
 
75
83
  @value.setter
76
- def value(self, value: pulumi.Input[str]):
84
+ def value(self, value: pulumi.Input[_builtins.str]):
77
85
  pulumi.set(self, "value", value)
78
86
 
79
- @property
87
+ @_builtins.property
80
88
  @pulumi.getter
81
- def encoding(self) -> Optional[pulumi.Input[str]]:
89
+ def encoding(self) -> Optional[pulumi.Input[_builtins.str]]:
82
90
  """
83
91
  Specifies the encoding used for the supplied certificate data. Must be one of `pem`, `base64` or `hex`. Defaults to `pem`.
84
92
 
@@ -87,24 +95,25 @@ class ServicePrincipalCertificateArgs:
87
95
  return pulumi.get(self, "encoding")
88
96
 
89
97
  @encoding.setter
90
- def encoding(self, value: Optional[pulumi.Input[str]]):
98
+ def encoding(self, value: Optional[pulumi.Input[_builtins.str]]):
91
99
  pulumi.set(self, "encoding", value)
92
100
 
93
- @property
101
+ @_builtins.property
94
102
  @pulumi.getter(name="endDate")
95
- def end_date(self) -> Optional[pulumi.Input[str]]:
103
+ def end_date(self) -> Optional[pulumi.Input[_builtins.str]]:
96
104
  """
97
105
  The end date until which the certificate is valid, formatted as an RFC3339 date string (e.g. `2018-01-01T01:02:03Z`). Changing this field forces a new resource to be created.
98
106
  """
99
107
  return pulumi.get(self, "end_date")
100
108
 
101
109
  @end_date.setter
102
- def end_date(self, value: Optional[pulumi.Input[str]]):
110
+ def end_date(self, value: Optional[pulumi.Input[_builtins.str]]):
103
111
  pulumi.set(self, "end_date", value)
104
112
 
105
- @property
113
+ @_builtins.property
106
114
  @pulumi.getter(name="endDateRelative")
107
- def end_date_relative(self) -> Optional[pulumi.Input[str]]:
115
+ @_utilities.deprecated("""The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property.""")
116
+ def end_date_relative(self) -> Optional[pulumi.Input[_builtins.str]]:
108
117
  """
109
118
  A relative duration for which the certificate is valid until, for example `240h` (10 days) or `2400h30m`. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h". Changing this field forces a new resource to be created.
110
119
 
@@ -113,76 +122,79 @@ class ServicePrincipalCertificateArgs:
113
122
  return pulumi.get(self, "end_date_relative")
114
123
 
115
124
  @end_date_relative.setter
116
- def end_date_relative(self, value: Optional[pulumi.Input[str]]):
125
+ def end_date_relative(self, value: Optional[pulumi.Input[_builtins.str]]):
117
126
  pulumi.set(self, "end_date_relative", value)
118
127
 
119
- @property
128
+ @_builtins.property
120
129
  @pulumi.getter(name="keyId")
121
- def key_id(self) -> Optional[pulumi.Input[str]]:
130
+ def key_id(self) -> Optional[pulumi.Input[_builtins.str]]:
122
131
  """
123
132
  A UUID used to uniquely identify this certificate. If not specified a UUID will be automatically generated. Changing this field forces a new resource to be created.
124
133
  """
125
134
  return pulumi.get(self, "key_id")
126
135
 
127
136
  @key_id.setter
128
- def key_id(self, value: Optional[pulumi.Input[str]]):
137
+ def key_id(self, value: Optional[pulumi.Input[_builtins.str]]):
129
138
  pulumi.set(self, "key_id", value)
130
139
 
131
- @property
140
+ @_builtins.property
132
141
  @pulumi.getter(name="startDate")
133
- def start_date(self) -> Optional[pulumi.Input[str]]:
142
+ def start_date(self) -> Optional[pulumi.Input[_builtins.str]]:
134
143
  """
135
144
  The start date from which the certificate is valid, formatted as an RFC3339 date string (e.g. `2018-01-01T01:02:03Z`). If this isn't specified, the value is determined by Azure Active Directory and is usually the start date of the certificate for asymmetric keys, or the current timestamp for symmetric keys. Changing this field forces a new resource to be created.
136
145
  """
137
146
  return pulumi.get(self, "start_date")
138
147
 
139
148
  @start_date.setter
140
- def start_date(self, value: Optional[pulumi.Input[str]]):
149
+ def start_date(self, value: Optional[pulumi.Input[_builtins.str]]):
141
150
  pulumi.set(self, "start_date", value)
142
151
 
143
- @property
152
+ @_builtins.property
144
153
  @pulumi.getter
145
- def type(self) -> Optional[pulumi.Input[str]]:
154
+ def type(self) -> Optional[pulumi.Input[_builtins.str]]:
146
155
  """
147
156
  The type of key/certificate. Must be one of `AsymmetricX509Cert` or `Symmetric`. Changing this fields forces a new resource to be created.
148
157
  """
149
158
  return pulumi.get(self, "type")
150
159
 
151
160
  @type.setter
152
- def type(self, value: Optional[pulumi.Input[str]]):
161
+ def type(self, value: Optional[pulumi.Input[_builtins.str]]):
153
162
  pulumi.set(self, "type", value)
154
163
 
155
164
 
156
165
  @pulumi.input_type
157
166
  class _ServicePrincipalCertificateState:
158
167
  def __init__(__self__, *,
159
- encoding: Optional[pulumi.Input[str]] = None,
160
- end_date: Optional[pulumi.Input[str]] = None,
161
- end_date_relative: Optional[pulumi.Input[str]] = None,
162
- key_id: Optional[pulumi.Input[str]] = None,
163
- service_principal_id: Optional[pulumi.Input[str]] = None,
164
- start_date: Optional[pulumi.Input[str]] = None,
165
- type: Optional[pulumi.Input[str]] = None,
166
- value: Optional[pulumi.Input[str]] = None):
168
+ encoding: Optional[pulumi.Input[_builtins.str]] = None,
169
+ end_date: Optional[pulumi.Input[_builtins.str]] = None,
170
+ end_date_relative: Optional[pulumi.Input[_builtins.str]] = None,
171
+ key_id: Optional[pulumi.Input[_builtins.str]] = None,
172
+ service_principal_id: Optional[pulumi.Input[_builtins.str]] = None,
173
+ start_date: Optional[pulumi.Input[_builtins.str]] = None,
174
+ type: Optional[pulumi.Input[_builtins.str]] = None,
175
+ value: Optional[pulumi.Input[_builtins.str]] = None):
167
176
  """
168
177
  Input properties used for looking up and filtering ServicePrincipalCertificate resources.
169
- :param pulumi.Input[str] encoding: Specifies the encoding used for the supplied certificate data. Must be one of `pem`, `base64` or `hex`. Defaults to `pem`.
178
+ :param pulumi.Input[_builtins.str] encoding: Specifies the encoding used for the supplied certificate data. Must be one of `pem`, `base64` or `hex`. Defaults to `pem`.
170
179
 
171
180
  > **Tip for Azure Key Vault** The `hex` encoding option is useful for consuming certificate data from the azurerm_key_vault_certificate resource.
172
- :param pulumi.Input[str] end_date: The end date until which the certificate is valid, formatted as an RFC3339 date string (e.g. `2018-01-01T01:02:03Z`). Changing this field forces a new resource to be created.
173
- :param pulumi.Input[str] end_date_relative: A relative duration for which the certificate is valid until, for example `240h` (10 days) or `2400h30m`. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h". Changing this field forces a new resource to be created.
181
+ :param pulumi.Input[_builtins.str] end_date: The end date until which the certificate is valid, formatted as an RFC3339 date string (e.g. `2018-01-01T01:02:03Z`). Changing this field forces a new resource to be created.
182
+ :param pulumi.Input[_builtins.str] end_date_relative: A relative duration for which the certificate is valid until, for example `240h` (10 days) or `2400h30m`. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h". Changing this field forces a new resource to be created.
174
183
 
175
184
  > One of `end_date` or `end_date_relative` must be set. The maximum duration is determined by Azure AD.
176
- :param pulumi.Input[str] key_id: A UUID used to uniquely identify this certificate. If not specified a UUID will be automatically generated. Changing this field forces a new resource to be created.
177
- :param pulumi.Input[str] service_principal_id: The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created.
178
- :param pulumi.Input[str] start_date: The start date from which the certificate is valid, formatted as an RFC3339 date string (e.g. `2018-01-01T01:02:03Z`). If this isn't specified, the value is determined by Azure Active Directory and is usually the start date of the certificate for asymmetric keys, or the current timestamp for symmetric keys. Changing this field forces a new resource to be created.
179
- :param pulumi.Input[str] type: The type of key/certificate. Must be one of `AsymmetricX509Cert` or `Symmetric`. Changing this fields forces a new resource to be created.
180
- :param pulumi.Input[str] value: The certificate data, which can be PEM encoded, base64 encoded DER or hexadecimal encoded DER. See also the `encoding` argument.
185
+ :param pulumi.Input[_builtins.str] key_id: A UUID used to uniquely identify this certificate. If not specified a UUID will be automatically generated. Changing this field forces a new resource to be created.
186
+ :param pulumi.Input[_builtins.str] service_principal_id: The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created.
187
+ :param pulumi.Input[_builtins.str] start_date: The start date from which the certificate is valid, formatted as an RFC3339 date string (e.g. `2018-01-01T01:02:03Z`). If this isn't specified, the value is determined by Azure Active Directory and is usually the start date of the certificate for asymmetric keys, or the current timestamp for symmetric keys. Changing this field forces a new resource to be created.
188
+ :param pulumi.Input[_builtins.str] type: The type of key/certificate. Must be one of `AsymmetricX509Cert` or `Symmetric`. Changing this fields forces a new resource to be created.
189
+ :param pulumi.Input[_builtins.str] value: The certificate data, which can be PEM encoded, base64 encoded DER or hexadecimal encoded DER. See also the `encoding` argument.
181
190
  """
182
191
  if encoding is not None:
183
192
  pulumi.set(__self__, "encoding", encoding)
184
193
  if end_date is not None:
185
194
  pulumi.set(__self__, "end_date", end_date)
195
+ if end_date_relative is not None:
196
+ warnings.warn("""The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property.""", DeprecationWarning)
197
+ pulumi.log.warn("""end_date_relative is deprecated: The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property.""")
186
198
  if end_date_relative is not None:
187
199
  pulumi.set(__self__, "end_date_relative", end_date_relative)
188
200
  if key_id is not None:
@@ -196,9 +208,9 @@ class _ServicePrincipalCertificateState:
196
208
  if value is not None:
197
209
  pulumi.set(__self__, "value", value)
198
210
 
199
- @property
211
+ @_builtins.property
200
212
  @pulumi.getter
201
- def encoding(self) -> Optional[pulumi.Input[str]]:
213
+ def encoding(self) -> Optional[pulumi.Input[_builtins.str]]:
202
214
  """
203
215
  Specifies the encoding used for the supplied certificate data. Must be one of `pem`, `base64` or `hex`. Defaults to `pem`.
204
216
 
@@ -207,24 +219,25 @@ class _ServicePrincipalCertificateState:
207
219
  return pulumi.get(self, "encoding")
208
220
 
209
221
  @encoding.setter
210
- def encoding(self, value: Optional[pulumi.Input[str]]):
222
+ def encoding(self, value: Optional[pulumi.Input[_builtins.str]]):
211
223
  pulumi.set(self, "encoding", value)
212
224
 
213
- @property
225
+ @_builtins.property
214
226
  @pulumi.getter(name="endDate")
215
- def end_date(self) -> Optional[pulumi.Input[str]]:
227
+ def end_date(self) -> Optional[pulumi.Input[_builtins.str]]:
216
228
  """
217
229
  The end date until which the certificate is valid, formatted as an RFC3339 date string (e.g. `2018-01-01T01:02:03Z`). Changing this field forces a new resource to be created.
218
230
  """
219
231
  return pulumi.get(self, "end_date")
220
232
 
221
233
  @end_date.setter
222
- def end_date(self, value: Optional[pulumi.Input[str]]):
234
+ def end_date(self, value: Optional[pulumi.Input[_builtins.str]]):
223
235
  pulumi.set(self, "end_date", value)
224
236
 
225
- @property
237
+ @_builtins.property
226
238
  @pulumi.getter(name="endDateRelative")
227
- def end_date_relative(self) -> Optional[pulumi.Input[str]]:
239
+ @_utilities.deprecated("""The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property.""")
240
+ def end_date_relative(self) -> Optional[pulumi.Input[_builtins.str]]:
228
241
  """
229
242
  A relative duration for which the certificate is valid until, for example `240h` (10 days) or `2400h30m`. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h". Changing this field forces a new resource to be created.
230
243
 
@@ -233,109 +246,145 @@ class _ServicePrincipalCertificateState:
233
246
  return pulumi.get(self, "end_date_relative")
234
247
 
235
248
  @end_date_relative.setter
236
- def end_date_relative(self, value: Optional[pulumi.Input[str]]):
249
+ def end_date_relative(self, value: Optional[pulumi.Input[_builtins.str]]):
237
250
  pulumi.set(self, "end_date_relative", value)
238
251
 
239
- @property
252
+ @_builtins.property
240
253
  @pulumi.getter(name="keyId")
241
- def key_id(self) -> Optional[pulumi.Input[str]]:
254
+ def key_id(self) -> Optional[pulumi.Input[_builtins.str]]:
242
255
  """
243
256
  A UUID used to uniquely identify this certificate. If not specified a UUID will be automatically generated. Changing this field forces a new resource to be created.
244
257
  """
245
258
  return pulumi.get(self, "key_id")
246
259
 
247
260
  @key_id.setter
248
- def key_id(self, value: Optional[pulumi.Input[str]]):
261
+ def key_id(self, value: Optional[pulumi.Input[_builtins.str]]):
249
262
  pulumi.set(self, "key_id", value)
250
263
 
251
- @property
264
+ @_builtins.property
252
265
  @pulumi.getter(name="servicePrincipalId")
253
- def service_principal_id(self) -> Optional[pulumi.Input[str]]:
266
+ def service_principal_id(self) -> Optional[pulumi.Input[_builtins.str]]:
254
267
  """
255
- The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created.
268
+ The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created.
256
269
  """
257
270
  return pulumi.get(self, "service_principal_id")
258
271
 
259
272
  @service_principal_id.setter
260
- def service_principal_id(self, value: Optional[pulumi.Input[str]]):
273
+ def service_principal_id(self, value: Optional[pulumi.Input[_builtins.str]]):
261
274
  pulumi.set(self, "service_principal_id", value)
262
275
 
263
- @property
276
+ @_builtins.property
264
277
  @pulumi.getter(name="startDate")
265
- def start_date(self) -> Optional[pulumi.Input[str]]:
278
+ def start_date(self) -> Optional[pulumi.Input[_builtins.str]]:
266
279
  """
267
280
  The start date from which the certificate is valid, formatted as an RFC3339 date string (e.g. `2018-01-01T01:02:03Z`). If this isn't specified, the value is determined by Azure Active Directory and is usually the start date of the certificate for asymmetric keys, or the current timestamp for symmetric keys. Changing this field forces a new resource to be created.
268
281
  """
269
282
  return pulumi.get(self, "start_date")
270
283
 
271
284
  @start_date.setter
272
- def start_date(self, value: Optional[pulumi.Input[str]]):
285
+ def start_date(self, value: Optional[pulumi.Input[_builtins.str]]):
273
286
  pulumi.set(self, "start_date", value)
274
287
 
275
- @property
288
+ @_builtins.property
276
289
  @pulumi.getter
277
- def type(self) -> Optional[pulumi.Input[str]]:
290
+ def type(self) -> Optional[pulumi.Input[_builtins.str]]:
278
291
  """
279
292
  The type of key/certificate. Must be one of `AsymmetricX509Cert` or `Symmetric`. Changing this fields forces a new resource to be created.
280
293
  """
281
294
  return pulumi.get(self, "type")
282
295
 
283
296
  @type.setter
284
- def type(self, value: Optional[pulumi.Input[str]]):
297
+ def type(self, value: Optional[pulumi.Input[_builtins.str]]):
285
298
  pulumi.set(self, "type", value)
286
299
 
287
- @property
300
+ @_builtins.property
288
301
  @pulumi.getter
289
- def value(self) -> Optional[pulumi.Input[str]]:
302
+ def value(self) -> Optional[pulumi.Input[_builtins.str]]:
290
303
  """
291
304
  The certificate data, which can be PEM encoded, base64 encoded DER or hexadecimal encoded DER. See also the `encoding` argument.
292
305
  """
293
306
  return pulumi.get(self, "value")
294
307
 
295
308
  @value.setter
296
- def value(self, value: Optional[pulumi.Input[str]]):
309
+ def value(self, value: Optional[pulumi.Input[_builtins.str]]):
297
310
  pulumi.set(self, "value", value)
298
311
 
299
312
 
313
+ @pulumi.type_token("azuread:index/servicePrincipalCertificate:ServicePrincipalCertificate")
300
314
  class ServicePrincipalCertificate(pulumi.CustomResource):
301
315
  @overload
302
316
  def __init__(__self__,
303
317
  resource_name: str,
304
318
  opts: Optional[pulumi.ResourceOptions] = None,
305
- encoding: Optional[pulumi.Input[str]] = None,
306
- end_date: Optional[pulumi.Input[str]] = None,
307
- end_date_relative: Optional[pulumi.Input[str]] = None,
308
- key_id: Optional[pulumi.Input[str]] = None,
309
- service_principal_id: Optional[pulumi.Input[str]] = None,
310
- start_date: Optional[pulumi.Input[str]] = None,
311
- type: Optional[pulumi.Input[str]] = None,
312
- value: Optional[pulumi.Input[str]] = None,
319
+ encoding: Optional[pulumi.Input[_builtins.str]] = None,
320
+ end_date: Optional[pulumi.Input[_builtins.str]] = None,
321
+ end_date_relative: Optional[pulumi.Input[_builtins.str]] = None,
322
+ key_id: Optional[pulumi.Input[_builtins.str]] = None,
323
+ service_principal_id: Optional[pulumi.Input[_builtins.str]] = None,
324
+ start_date: Optional[pulumi.Input[_builtins.str]] = None,
325
+ type: Optional[pulumi.Input[_builtins.str]] = None,
326
+ value: Optional[pulumi.Input[_builtins.str]] = None,
313
327
  __props__=None):
314
328
  """
329
+ ## Example Usage
330
+
331
+ *Using a PEM certificate*
332
+
333
+ ```python
334
+ import pulumi
335
+ import pulumi_azuread as azuread
336
+ import pulumi_std as std
337
+
338
+ example = azuread.Application("example", display_name="example")
339
+ example_service_principal = azuread.ServicePrincipal("example", client_id=example.client_id)
340
+ example_service_principal_certificate = azuread.ServicePrincipalCertificate("example",
341
+ service_principal_id=example_service_principal.id,
342
+ type="AsymmetricX509Cert",
343
+ value=std.file(input="cert.pem").result,
344
+ end_date="2021-05-01T01:02:03Z")
345
+ ```
346
+
347
+ *Using a DER certificate*
348
+
349
+ ```python
350
+ import pulumi
351
+ import pulumi_azuread as azuread
352
+ import pulumi_std as std
353
+
354
+ example = azuread.Application("example", display_name="example")
355
+ example_service_principal = azuread.ServicePrincipal("example", client_id=example.client_id)
356
+ example_service_principal_certificate = azuread.ServicePrincipalCertificate("example",
357
+ service_principal_id=example_service_principal.id,
358
+ type="AsymmetricX509Cert",
359
+ encoding="base64",
360
+ value=std.base64encode(input=std.file(input="cert.der").result).result,
361
+ end_date="2021-05-01T01:02:03Z")
362
+ ```
363
+
315
364
  ## Import
316
365
 
317
366
  Certificates can be imported using the object ID of the associated service principal and the key ID of the certificate credential, e.g.
318
367
 
319
368
  ```sh
320
- $ pulumi import azuread:index/servicePrincipalCertificate:ServicePrincipalCertificate example 00000000-0000-0000-0000-000000000000/certificate/11111111-1111-1111-1111-111111111111
369
+ $ pulumi import azuread:index/servicePrincipalCertificate:ServicePrincipalCertificate example 00000000-0000-0000-0000-000000000000/certificate/11111111-1111-1111-1111-111111111111
321
370
  ```
322
371
 
323
- -> This ID format is unique to Terraform and is composed of the service principal's object ID, the string "certificate" and the certificate's key ID in the format `{ServicePrincipalObjectId}/certificate/{CertificateKeyId}`.
372
+ -> This ID format is unique to Terraform and is composed of the service principal's object ID, the string "certificate" and the certificate's key ID in the format `{ServicePrincipalObjectId}/certificate/{CertificateKeyId}`.
324
373
 
325
374
  :param str resource_name: The name of the resource.
326
375
  :param pulumi.ResourceOptions opts: Options for the resource.
327
- :param pulumi.Input[str] encoding: Specifies the encoding used for the supplied certificate data. Must be one of `pem`, `base64` or `hex`. Defaults to `pem`.
376
+ :param pulumi.Input[_builtins.str] encoding: Specifies the encoding used for the supplied certificate data. Must be one of `pem`, `base64` or `hex`. Defaults to `pem`.
328
377
 
329
378
  > **Tip for Azure Key Vault** The `hex` encoding option is useful for consuming certificate data from the azurerm_key_vault_certificate resource.
330
- :param pulumi.Input[str] end_date: The end date until which the certificate is valid, formatted as an RFC3339 date string (e.g. `2018-01-01T01:02:03Z`). Changing this field forces a new resource to be created.
331
- :param pulumi.Input[str] end_date_relative: A relative duration for which the certificate is valid until, for example `240h` (10 days) or `2400h30m`. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h". Changing this field forces a new resource to be created.
379
+ :param pulumi.Input[_builtins.str] end_date: The end date until which the certificate is valid, formatted as an RFC3339 date string (e.g. `2018-01-01T01:02:03Z`). Changing this field forces a new resource to be created.
380
+ :param pulumi.Input[_builtins.str] end_date_relative: A relative duration for which the certificate is valid until, for example `240h` (10 days) or `2400h30m`. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h". Changing this field forces a new resource to be created.
332
381
 
333
382
  > One of `end_date` or `end_date_relative` must be set. The maximum duration is determined by Azure AD.
334
- :param pulumi.Input[str] key_id: A UUID used to uniquely identify this certificate. If not specified a UUID will be automatically generated. Changing this field forces a new resource to be created.
335
- :param pulumi.Input[str] service_principal_id: The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created.
336
- :param pulumi.Input[str] start_date: The start date from which the certificate is valid, formatted as an RFC3339 date string (e.g. `2018-01-01T01:02:03Z`). If this isn't specified, the value is determined by Azure Active Directory and is usually the start date of the certificate for asymmetric keys, or the current timestamp for symmetric keys. Changing this field forces a new resource to be created.
337
- :param pulumi.Input[str] type: The type of key/certificate. Must be one of `AsymmetricX509Cert` or `Symmetric`. Changing this fields forces a new resource to be created.
338
- :param pulumi.Input[str] value: The certificate data, which can be PEM encoded, base64 encoded DER or hexadecimal encoded DER. See also the `encoding` argument.
383
+ :param pulumi.Input[_builtins.str] key_id: A UUID used to uniquely identify this certificate. If not specified a UUID will be automatically generated. Changing this field forces a new resource to be created.
384
+ :param pulumi.Input[_builtins.str] service_principal_id: The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created.
385
+ :param pulumi.Input[_builtins.str] start_date: The start date from which the certificate is valid, formatted as an RFC3339 date string (e.g. `2018-01-01T01:02:03Z`). If this isn't specified, the value is determined by Azure Active Directory and is usually the start date of the certificate for asymmetric keys, or the current timestamp for symmetric keys. Changing this field forces a new resource to be created.
386
+ :param pulumi.Input[_builtins.str] type: The type of key/certificate. Must be one of `AsymmetricX509Cert` or `Symmetric`. Changing this fields forces a new resource to be created.
387
+ :param pulumi.Input[_builtins.str] value: The certificate data, which can be PEM encoded, base64 encoded DER or hexadecimal encoded DER. See also the `encoding` argument.
339
388
  """
340
389
  ...
341
390
  @overload
@@ -344,15 +393,50 @@ class ServicePrincipalCertificate(pulumi.CustomResource):
344
393
  args: ServicePrincipalCertificateArgs,
345
394
  opts: Optional[pulumi.ResourceOptions] = None):
346
395
  """
396
+ ## Example Usage
397
+
398
+ *Using a PEM certificate*
399
+
400
+ ```python
401
+ import pulumi
402
+ import pulumi_azuread as azuread
403
+ import pulumi_std as std
404
+
405
+ example = azuread.Application("example", display_name="example")
406
+ example_service_principal = azuread.ServicePrincipal("example", client_id=example.client_id)
407
+ example_service_principal_certificate = azuread.ServicePrincipalCertificate("example",
408
+ service_principal_id=example_service_principal.id,
409
+ type="AsymmetricX509Cert",
410
+ value=std.file(input="cert.pem").result,
411
+ end_date="2021-05-01T01:02:03Z")
412
+ ```
413
+
414
+ *Using a DER certificate*
415
+
416
+ ```python
417
+ import pulumi
418
+ import pulumi_azuread as azuread
419
+ import pulumi_std as std
420
+
421
+ example = azuread.Application("example", display_name="example")
422
+ example_service_principal = azuread.ServicePrincipal("example", client_id=example.client_id)
423
+ example_service_principal_certificate = azuread.ServicePrincipalCertificate("example",
424
+ service_principal_id=example_service_principal.id,
425
+ type="AsymmetricX509Cert",
426
+ encoding="base64",
427
+ value=std.base64encode(input=std.file(input="cert.der").result).result,
428
+ end_date="2021-05-01T01:02:03Z")
429
+ ```
430
+
347
431
  ## Import
348
432
 
349
433
  Certificates can be imported using the object ID of the associated service principal and the key ID of the certificate credential, e.g.
350
434
 
351
435
  ```sh
352
- $ pulumi import azuread:index/servicePrincipalCertificate:ServicePrincipalCertificate example 00000000-0000-0000-0000-000000000000/certificate/11111111-1111-1111-1111-111111111111
436
+ $ pulumi import azuread:index/servicePrincipalCertificate:ServicePrincipalCertificate example 00000000-0000-0000-0000-000000000000/certificate/11111111-1111-1111-1111-111111111111
353
437
  ```
354
438
 
355
- -> This ID format is unique to Terraform and is composed of the service principal's object ID, the string "certificate" and the certificate's key ID in the format `{ServicePrincipalObjectId}/certificate/{CertificateKeyId}`.
439
+ -> This ID format is unique to Terraform and is composed of the service principal's object ID, the string "certificate" and the certificate's key ID in the format `{ServicePrincipalObjectId}/certificate/{CertificateKeyId}`.
356
440
 
357
441
  :param str resource_name: The name of the resource.
358
442
  :param ServicePrincipalCertificateArgs args: The arguments to use to populate this resource's properties.
@@ -369,14 +453,14 @@ class ServicePrincipalCertificate(pulumi.CustomResource):
369
453
  def _internal_init(__self__,
370
454
  resource_name: str,
371
455
  opts: Optional[pulumi.ResourceOptions] = None,
372
- encoding: Optional[pulumi.Input[str]] = None,
373
- end_date: Optional[pulumi.Input[str]] = None,
374
- end_date_relative: Optional[pulumi.Input[str]] = None,
375
- key_id: Optional[pulumi.Input[str]] = None,
376
- service_principal_id: Optional[pulumi.Input[str]] = None,
377
- start_date: Optional[pulumi.Input[str]] = None,
378
- type: Optional[pulumi.Input[str]] = None,
379
- value: Optional[pulumi.Input[str]] = None,
456
+ encoding: Optional[pulumi.Input[_builtins.str]] = None,
457
+ end_date: Optional[pulumi.Input[_builtins.str]] = None,
458
+ end_date_relative: Optional[pulumi.Input[_builtins.str]] = None,
459
+ key_id: Optional[pulumi.Input[_builtins.str]] = None,
460
+ service_principal_id: Optional[pulumi.Input[_builtins.str]] = None,
461
+ start_date: Optional[pulumi.Input[_builtins.str]] = None,
462
+ type: Optional[pulumi.Input[_builtins.str]] = None,
463
+ value: Optional[pulumi.Input[_builtins.str]] = None,
380
464
  __props__=None):
381
465
  opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
382
466
  if not isinstance(opts, pulumi.ResourceOptions):
@@ -410,14 +494,14 @@ class ServicePrincipalCertificate(pulumi.CustomResource):
410
494
  def get(resource_name: str,
411
495
  id: pulumi.Input[str],
412
496
  opts: Optional[pulumi.ResourceOptions] = None,
413
- encoding: Optional[pulumi.Input[str]] = None,
414
- end_date: Optional[pulumi.Input[str]] = None,
415
- end_date_relative: Optional[pulumi.Input[str]] = None,
416
- key_id: Optional[pulumi.Input[str]] = None,
417
- service_principal_id: Optional[pulumi.Input[str]] = None,
418
- start_date: Optional[pulumi.Input[str]] = None,
419
- type: Optional[pulumi.Input[str]] = None,
420
- value: Optional[pulumi.Input[str]] = None) -> 'ServicePrincipalCertificate':
497
+ encoding: Optional[pulumi.Input[_builtins.str]] = None,
498
+ end_date: Optional[pulumi.Input[_builtins.str]] = None,
499
+ end_date_relative: Optional[pulumi.Input[_builtins.str]] = None,
500
+ key_id: Optional[pulumi.Input[_builtins.str]] = None,
501
+ service_principal_id: Optional[pulumi.Input[_builtins.str]] = None,
502
+ start_date: Optional[pulumi.Input[_builtins.str]] = None,
503
+ type: Optional[pulumi.Input[_builtins.str]] = None,
504
+ value: Optional[pulumi.Input[_builtins.str]] = None) -> 'ServicePrincipalCertificate':
421
505
  """
422
506
  Get an existing ServicePrincipalCertificate resource's state with the given name, id, and optional extra
423
507
  properties used to qualify the lookup.
@@ -425,18 +509,18 @@ class ServicePrincipalCertificate(pulumi.CustomResource):
425
509
  :param str resource_name: The unique name of the resulting resource.
426
510
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
427
511
  :param pulumi.ResourceOptions opts: Options for the resource.
428
- :param pulumi.Input[str] encoding: Specifies the encoding used for the supplied certificate data. Must be one of `pem`, `base64` or `hex`. Defaults to `pem`.
512
+ :param pulumi.Input[_builtins.str] encoding: Specifies the encoding used for the supplied certificate data. Must be one of `pem`, `base64` or `hex`. Defaults to `pem`.
429
513
 
430
514
  > **Tip for Azure Key Vault** The `hex` encoding option is useful for consuming certificate data from the azurerm_key_vault_certificate resource.
431
- :param pulumi.Input[str] end_date: The end date until which the certificate is valid, formatted as an RFC3339 date string (e.g. `2018-01-01T01:02:03Z`). Changing this field forces a new resource to be created.
432
- :param pulumi.Input[str] end_date_relative: A relative duration for which the certificate is valid until, for example `240h` (10 days) or `2400h30m`. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h". Changing this field forces a new resource to be created.
515
+ :param pulumi.Input[_builtins.str] end_date: The end date until which the certificate is valid, formatted as an RFC3339 date string (e.g. `2018-01-01T01:02:03Z`). Changing this field forces a new resource to be created.
516
+ :param pulumi.Input[_builtins.str] end_date_relative: A relative duration for which the certificate is valid until, for example `240h` (10 days) or `2400h30m`. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h". Changing this field forces a new resource to be created.
433
517
 
434
518
  > One of `end_date` or `end_date_relative` must be set. The maximum duration is determined by Azure AD.
435
- :param pulumi.Input[str] key_id: A UUID used to uniquely identify this certificate. If not specified a UUID will be automatically generated. Changing this field forces a new resource to be created.
436
- :param pulumi.Input[str] service_principal_id: The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created.
437
- :param pulumi.Input[str] start_date: The start date from which the certificate is valid, formatted as an RFC3339 date string (e.g. `2018-01-01T01:02:03Z`). If this isn't specified, the value is determined by Azure Active Directory and is usually the start date of the certificate for asymmetric keys, or the current timestamp for symmetric keys. Changing this field forces a new resource to be created.
438
- :param pulumi.Input[str] type: The type of key/certificate. Must be one of `AsymmetricX509Cert` or `Symmetric`. Changing this fields forces a new resource to be created.
439
- :param pulumi.Input[str] value: The certificate data, which can be PEM encoded, base64 encoded DER or hexadecimal encoded DER. See also the `encoding` argument.
519
+ :param pulumi.Input[_builtins.str] key_id: A UUID used to uniquely identify this certificate. If not specified a UUID will be automatically generated. Changing this field forces a new resource to be created.
520
+ :param pulumi.Input[_builtins.str] service_principal_id: The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created.
521
+ :param pulumi.Input[_builtins.str] start_date: The start date from which the certificate is valid, formatted as an RFC3339 date string (e.g. `2018-01-01T01:02:03Z`). If this isn't specified, the value is determined by Azure Active Directory and is usually the start date of the certificate for asymmetric keys, or the current timestamp for symmetric keys. Changing this field forces a new resource to be created.
522
+ :param pulumi.Input[_builtins.str] type: The type of key/certificate. Must be one of `AsymmetricX509Cert` or `Symmetric`. Changing this fields forces a new resource to be created.
523
+ :param pulumi.Input[_builtins.str] value: The certificate data, which can be PEM encoded, base64 encoded DER or hexadecimal encoded DER. See also the `encoding` argument.
440
524
  """
441
525
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
442
526
 
@@ -452,9 +536,9 @@ class ServicePrincipalCertificate(pulumi.CustomResource):
452
536
  __props__.__dict__["value"] = value
453
537
  return ServicePrincipalCertificate(resource_name, opts=opts, __props__=__props__)
454
538
 
455
- @property
539
+ @_builtins.property
456
540
  @pulumi.getter
457
- def encoding(self) -> pulumi.Output[Optional[str]]:
541
+ def encoding(self) -> pulumi.Output[Optional[_builtins.str]]:
458
542
  """
459
543
  Specifies the encoding used for the supplied certificate data. Must be one of `pem`, `base64` or `hex`. Defaults to `pem`.
460
544
 
@@ -462,17 +546,18 @@ class ServicePrincipalCertificate(pulumi.CustomResource):
462
546
  """
463
547
  return pulumi.get(self, "encoding")
464
548
 
465
- @property
549
+ @_builtins.property
466
550
  @pulumi.getter(name="endDate")
467
- def end_date(self) -> pulumi.Output[str]:
551
+ def end_date(self) -> pulumi.Output[_builtins.str]:
468
552
  """
469
553
  The end date until which the certificate is valid, formatted as an RFC3339 date string (e.g. `2018-01-01T01:02:03Z`). Changing this field forces a new resource to be created.
470
554
  """
471
555
  return pulumi.get(self, "end_date")
472
556
 
473
- @property
557
+ @_builtins.property
474
558
  @pulumi.getter(name="endDateRelative")
475
- def end_date_relative(self) -> pulumi.Output[Optional[str]]:
559
+ @_utilities.deprecated("""The `end_date_relative` property is deprecated and will be removed in a future version of the AzureAD provider. Please instead use the Terraform `timeadd()` function to calculate a value for the `end_date` property.""")
560
+ def end_date_relative(self) -> pulumi.Output[Optional[_builtins.str]]:
476
561
  """
477
562
  A relative duration for which the certificate is valid until, for example `240h` (10 days) or `2400h30m`. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h". Changing this field forces a new resource to be created.
478
563
 
@@ -480,41 +565,41 @@ class ServicePrincipalCertificate(pulumi.CustomResource):
480
565
  """
481
566
  return pulumi.get(self, "end_date_relative")
482
567
 
483
- @property
568
+ @_builtins.property
484
569
  @pulumi.getter(name="keyId")
485
- def key_id(self) -> pulumi.Output[str]:
570
+ def key_id(self) -> pulumi.Output[_builtins.str]:
486
571
  """
487
572
  A UUID used to uniquely identify this certificate. If not specified a UUID will be automatically generated. Changing this field forces a new resource to be created.
488
573
  """
489
574
  return pulumi.get(self, "key_id")
490
575
 
491
- @property
576
+ @_builtins.property
492
577
  @pulumi.getter(name="servicePrincipalId")
493
- def service_principal_id(self) -> pulumi.Output[str]:
578
+ def service_principal_id(self) -> pulumi.Output[_builtins.str]:
494
579
  """
495
- The object ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created.
580
+ The ID of the service principal for which this certificate should be created. Changing this field forces a new resource to be created.
496
581
  """
497
582
  return pulumi.get(self, "service_principal_id")
498
583
 
499
- @property
584
+ @_builtins.property
500
585
  @pulumi.getter(name="startDate")
501
- def start_date(self) -> pulumi.Output[str]:
586
+ def start_date(self) -> pulumi.Output[_builtins.str]:
502
587
  """
503
588
  The start date from which the certificate is valid, formatted as an RFC3339 date string (e.g. `2018-01-01T01:02:03Z`). If this isn't specified, the value is determined by Azure Active Directory and is usually the start date of the certificate for asymmetric keys, or the current timestamp for symmetric keys. Changing this field forces a new resource to be created.
504
589
  """
505
590
  return pulumi.get(self, "start_date")
506
591
 
507
- @property
592
+ @_builtins.property
508
593
  @pulumi.getter
509
- def type(self) -> pulumi.Output[Optional[str]]:
594
+ def type(self) -> pulumi.Output[Optional[_builtins.str]]:
510
595
  """
511
596
  The type of key/certificate. Must be one of `AsymmetricX509Cert` or `Symmetric`. Changing this fields forces a new resource to be created.
512
597
  """
513
598
  return pulumi.get(self, "type")
514
599
 
515
- @property
600
+ @_builtins.property
516
601
  @pulumi.getter
517
- def value(self) -> pulumi.Output[str]:
602
+ def value(self) -> pulumi.Output[_builtins.str]:
518
603
  """
519
604
  The certificate data, which can be PEM encoded, base64 encoded DER or hexadecimal encoded DER. See also the `encoding` argument.
520
605
  """