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
  from . import outputs
12
17
  from ._inputs import *
@@ -16,58 +21,50 @@ __all__ = ['ServicePrincipalArgs', 'ServicePrincipal']
16
21
  @pulumi.input_type
17
22
  class ServicePrincipalArgs:
18
23
  def __init__(__self__, *,
19
- account_enabled: Optional[pulumi.Input[bool]] = None,
20
- alternative_names: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
21
- app_role_assignment_required: Optional[pulumi.Input[bool]] = None,
22
- application_id: Optional[pulumi.Input[str]] = None,
23
- client_id: Optional[pulumi.Input[str]] = None,
24
- description: Optional[pulumi.Input[str]] = None,
24
+ client_id: pulumi.Input[_builtins.str],
25
+ account_enabled: Optional[pulumi.Input[_builtins.bool]] = None,
26
+ alternative_names: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
27
+ app_role_assignment_required: Optional[pulumi.Input[_builtins.bool]] = None,
28
+ description: Optional[pulumi.Input[_builtins.str]] = None,
25
29
  feature_tags: Optional[pulumi.Input[Sequence[pulumi.Input['ServicePrincipalFeatureTagArgs']]]] = None,
26
30
  features: Optional[pulumi.Input[Sequence[pulumi.Input['ServicePrincipalFeatureArgs']]]] = None,
27
- login_url: Optional[pulumi.Input[str]] = None,
28
- notes: Optional[pulumi.Input[str]] = None,
29
- notification_email_addresses: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
30
- owners: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
31
- preferred_single_sign_on_mode: Optional[pulumi.Input[str]] = None,
31
+ login_url: Optional[pulumi.Input[_builtins.str]] = None,
32
+ notes: Optional[pulumi.Input[_builtins.str]] = None,
33
+ notification_email_addresses: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
34
+ owners: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
35
+ preferred_single_sign_on_mode: Optional[pulumi.Input[_builtins.str]] = None,
32
36
  saml_single_sign_on: Optional[pulumi.Input['ServicePrincipalSamlSingleSignOnArgs']] = None,
33
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
34
- use_existing: Optional[pulumi.Input[bool]] = None):
37
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
38
+ use_existing: Optional[pulumi.Input[_builtins.bool]] = None):
35
39
  """
36
40
  The set of arguments for constructing a ServicePrincipal resource.
37
- :param pulumi.Input[bool] account_enabled: Whether or not the service principal account is enabled. Defaults to `true`.
38
- :param pulumi.Input[Sequence[pulumi.Input[str]]] alternative_names: A set of alternative names, used to retrieve service principals by subscription, identify resource group and full resource ids for managed identities.
39
- :param pulumi.Input[bool] app_role_assignment_required: Whether this service principal requires an app role assignment to a user or group before Azure AD will issue a user or access token to the application. Defaults to `false`.
40
- :param pulumi.Input[str] application_id: The application ID (client ID) of the application for which to create a service principal
41
- :param pulumi.Input[str] client_id: The client ID of the application for which to create a service principal.
42
- :param pulumi.Input[str] description: A description of the service principal provided for internal end-users.
41
+ :param pulumi.Input[_builtins.str] client_id: The client ID of the application for which to create a service principal.
42
+ :param pulumi.Input[_builtins.bool] account_enabled: Whether or not the service principal account is enabled. Defaults to `true`.
43
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] alternative_names: A set of alternative names, used to retrieve service principals by subscription, identify resource group and full resource ids for managed identities.
44
+ :param pulumi.Input[_builtins.bool] app_role_assignment_required: Whether this service principal requires an app role assignment to a user or group before Azure AD will issue a user or access token to the application. Defaults to `false`.
45
+ :param pulumi.Input[_builtins.str] description: A description of the service principal provided for internal end-users.
43
46
  :param pulumi.Input[Sequence[pulumi.Input['ServicePrincipalFeatureTagArgs']]] feature_tags: A `feature_tags` block as described below. Cannot be used together with the `tags` property.
44
47
 
45
48
  > **Features and Tags** Features are configured for a service principal using tags, and are provided as a shortcut to set the corresponding magic tag value for each feature. You cannot configure `feature_tags` and `tags` for a service principal at the same time, so if you need to assign additional custom tags it's recommended to use the `tags` property instead. Any tags configured for the linked application will propagate to this service principal.
46
49
  :param pulumi.Input[Sequence[pulumi.Input['ServicePrincipalFeatureArgs']]] features: Block of features to configure for this service principal using tags
47
- :param pulumi.Input[str] login_url: The URL where the service provider redirects the user to Azure AD to authenticate. Azure AD uses the URL to launch the application from Microsoft 365 or the Azure AD My Apps. When blank, Azure AD performs IdP-initiated sign-on for applications configured with SAML-based single sign-on.
48
- :param pulumi.Input[str] notes: A free text field to capture information about the service principal, typically used for operational purposes.
49
- :param pulumi.Input[Sequence[pulumi.Input[str]]] notification_email_addresses: A set of email addresses where Azure AD sends a notification when the active certificate is near the expiration date. This is only for the certificates used to sign the SAML token issued for Azure AD Gallery applications.
50
- :param pulumi.Input[Sequence[pulumi.Input[str]]] owners: A list of object IDs of principals that will be granted ownership of the service principal
51
- :param pulumi.Input[str] preferred_single_sign_on_mode: The single sign-on mode configured for this application. Azure AD uses the preferred single sign-on mode to launch the application from Microsoft 365 or the Azure AD My Apps. Supported values are `oidc`, `password`, `saml` or `notSupported`. Omit this property or specify a blank string to unset.
50
+ :param pulumi.Input[_builtins.str] login_url: The URL where the service provider redirects the user to Azure AD to authenticate. Azure AD uses the URL to launch the application from Microsoft 365 or the Azure AD My Apps. When blank, Azure AD performs IdP-initiated sign-on for applications configured with SAML-based single sign-on.
51
+ :param pulumi.Input[_builtins.str] notes: A free text field to capture information about the service principal, typically used for operational purposes.
52
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] notification_email_addresses: A set of email addresses where Azure AD sends a notification when the active certificate is near the expiration date. This is only for the certificates used to sign the SAML token issued for Azure AD Gallery applications.
53
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] owners: A list of object IDs of principals that will be granted ownership of the service principal
54
+ :param pulumi.Input[_builtins.str] preferred_single_sign_on_mode: The single sign-on mode configured for this application. Azure AD uses the preferred single sign-on mode to launch the application from Microsoft 365 or the Azure AD My Apps. Supported values are `oidc`, `password`, `saml` or `notSupported`. Omit this property or specify a blank string to unset.
52
55
  :param pulumi.Input['ServicePrincipalSamlSingleSignOnArgs'] saml_single_sign_on: A `saml_single_sign_on` block as documented below.
53
- :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A set of tags to apply to the service principal for configuring specific behaviours of the service principal. Note that these are not provided for use by practitioners. Cannot be used together with the `feature_tags` block.
56
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] tags: A set of tags to apply to the service principal for configuring specific behaviours of the service principal. Note that these are not provided for use by practitioners. Cannot be used together with the `feature_tags` block.
54
57
 
55
58
  > **Tags and Features** Azure Active Directory uses special tag values to configure the behavior of service principals. These can be specified using either the `tags` property or with the `feature_tags` block. If you need to set any custom tag values not supported by the `feature_tags` block, it's recommended to use the `tags` property. Tag values set for the linked application will also propagate to this service principal.
56
- :param pulumi.Input[bool] use_existing: When true, the resource will return an existing service principal instead of failing with an error
59
+ :param pulumi.Input[_builtins.bool] use_existing: When true, the resource will return an existing service principal instead of failing with an error
57
60
  """
61
+ pulumi.set(__self__, "client_id", client_id)
58
62
  if account_enabled is not None:
59
63
  pulumi.set(__self__, "account_enabled", account_enabled)
60
64
  if alternative_names is not None:
61
65
  pulumi.set(__self__, "alternative_names", alternative_names)
62
66
  if app_role_assignment_required is not None:
63
67
  pulumi.set(__self__, "app_role_assignment_required", app_role_assignment_required)
64
- if application_id is not None:
65
- warnings.warn("""The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider""", DeprecationWarning)
66
- pulumi.log.warn("""application_id is deprecated: The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider""")
67
- if application_id is not None:
68
- pulumi.set(__self__, "application_id", application_id)
69
- if client_id is not None:
70
- pulumi.set(__self__, "client_id", client_id)
71
68
  if description is not None:
72
69
  pulumi.set(__self__, "description", description)
73
70
  if feature_tags is not None:
@@ -94,82 +91,67 @@ class ServicePrincipalArgs:
94
91
  if use_existing is not None:
95
92
  pulumi.set(__self__, "use_existing", use_existing)
96
93
 
97
- @property
94
+ @_builtins.property
95
+ @pulumi.getter(name="clientId")
96
+ def client_id(self) -> pulumi.Input[_builtins.str]:
97
+ """
98
+ The client ID of the application for which to create a service principal.
99
+ """
100
+ return pulumi.get(self, "client_id")
101
+
102
+ @client_id.setter
103
+ def client_id(self, value: pulumi.Input[_builtins.str]):
104
+ pulumi.set(self, "client_id", value)
105
+
106
+ @_builtins.property
98
107
  @pulumi.getter(name="accountEnabled")
99
- def account_enabled(self) -> Optional[pulumi.Input[bool]]:
108
+ def account_enabled(self) -> Optional[pulumi.Input[_builtins.bool]]:
100
109
  """
101
110
  Whether or not the service principal account is enabled. Defaults to `true`.
102
111
  """
103
112
  return pulumi.get(self, "account_enabled")
104
113
 
105
114
  @account_enabled.setter
106
- def account_enabled(self, value: Optional[pulumi.Input[bool]]):
115
+ def account_enabled(self, value: Optional[pulumi.Input[_builtins.bool]]):
107
116
  pulumi.set(self, "account_enabled", value)
108
117
 
109
- @property
118
+ @_builtins.property
110
119
  @pulumi.getter(name="alternativeNames")
111
- def alternative_names(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
120
+ def alternative_names(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
112
121
  """
113
122
  A set of alternative names, used to retrieve service principals by subscription, identify resource group and full resource ids for managed identities.
114
123
  """
115
124
  return pulumi.get(self, "alternative_names")
116
125
 
117
126
  @alternative_names.setter
118
- def alternative_names(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
127
+ def alternative_names(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
119
128
  pulumi.set(self, "alternative_names", value)
120
129
 
121
- @property
130
+ @_builtins.property
122
131
  @pulumi.getter(name="appRoleAssignmentRequired")
123
- def app_role_assignment_required(self) -> Optional[pulumi.Input[bool]]:
132
+ def app_role_assignment_required(self) -> Optional[pulumi.Input[_builtins.bool]]:
124
133
  """
125
134
  Whether this service principal requires an app role assignment to a user or group before Azure AD will issue a user or access token to the application. Defaults to `false`.
126
135
  """
127
136
  return pulumi.get(self, "app_role_assignment_required")
128
137
 
129
138
  @app_role_assignment_required.setter
130
- def app_role_assignment_required(self, value: Optional[pulumi.Input[bool]]):
139
+ def app_role_assignment_required(self, value: Optional[pulumi.Input[_builtins.bool]]):
131
140
  pulumi.set(self, "app_role_assignment_required", value)
132
141
 
133
- @property
134
- @pulumi.getter(name="applicationId")
135
- def application_id(self) -> Optional[pulumi.Input[str]]:
136
- """
137
- The application ID (client ID) of the application for which to create a service principal
138
- """
139
- warnings.warn("""The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider""", DeprecationWarning)
140
- pulumi.log.warn("""application_id is deprecated: The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider""")
141
-
142
- return pulumi.get(self, "application_id")
143
-
144
- @application_id.setter
145
- def application_id(self, value: Optional[pulumi.Input[str]]):
146
- pulumi.set(self, "application_id", value)
147
-
148
- @property
149
- @pulumi.getter(name="clientId")
150
- def client_id(self) -> Optional[pulumi.Input[str]]:
151
- """
152
- The client ID of the application for which to create a service principal.
153
- """
154
- return pulumi.get(self, "client_id")
155
-
156
- @client_id.setter
157
- def client_id(self, value: Optional[pulumi.Input[str]]):
158
- pulumi.set(self, "client_id", value)
159
-
160
- @property
142
+ @_builtins.property
161
143
  @pulumi.getter
162
- def description(self) -> Optional[pulumi.Input[str]]:
144
+ def description(self) -> Optional[pulumi.Input[_builtins.str]]:
163
145
  """
164
146
  A description of the service principal provided for internal end-users.
165
147
  """
166
148
  return pulumi.get(self, "description")
167
149
 
168
150
  @description.setter
169
- def description(self, value: Optional[pulumi.Input[str]]):
151
+ def description(self, value: Optional[pulumi.Input[_builtins.str]]):
170
152
  pulumi.set(self, "description", value)
171
153
 
172
- @property
154
+ @_builtins.property
173
155
  @pulumi.getter(name="featureTags")
174
156
  def feature_tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ServicePrincipalFeatureTagArgs']]]]:
175
157
  """
@@ -183,82 +165,80 @@ class ServicePrincipalArgs:
183
165
  def feature_tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ServicePrincipalFeatureTagArgs']]]]):
184
166
  pulumi.set(self, "feature_tags", value)
185
167
 
186
- @property
168
+ @_builtins.property
187
169
  @pulumi.getter
170
+ @_utilities.deprecated("""This block has been renamed to `feature_tags` and will be removed in version 3.0 of the provider""")
188
171
  def features(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ServicePrincipalFeatureArgs']]]]:
189
172
  """
190
173
  Block of features to configure for this service principal using tags
191
174
  """
192
- warnings.warn("""This block has been renamed to `feature_tags` and will be removed in version 3.0 of the provider""", DeprecationWarning)
193
- pulumi.log.warn("""features is deprecated: This block has been renamed to `feature_tags` and will be removed in version 3.0 of the provider""")
194
-
195
175
  return pulumi.get(self, "features")
196
176
 
197
177
  @features.setter
198
178
  def features(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ServicePrincipalFeatureArgs']]]]):
199
179
  pulumi.set(self, "features", value)
200
180
 
201
- @property
181
+ @_builtins.property
202
182
  @pulumi.getter(name="loginUrl")
203
- def login_url(self) -> Optional[pulumi.Input[str]]:
183
+ def login_url(self) -> Optional[pulumi.Input[_builtins.str]]:
204
184
  """
205
185
  The URL where the service provider redirects the user to Azure AD to authenticate. Azure AD uses the URL to launch the application from Microsoft 365 or the Azure AD My Apps. When blank, Azure AD performs IdP-initiated sign-on for applications configured with SAML-based single sign-on.
206
186
  """
207
187
  return pulumi.get(self, "login_url")
208
188
 
209
189
  @login_url.setter
210
- def login_url(self, value: Optional[pulumi.Input[str]]):
190
+ def login_url(self, value: Optional[pulumi.Input[_builtins.str]]):
211
191
  pulumi.set(self, "login_url", value)
212
192
 
213
- @property
193
+ @_builtins.property
214
194
  @pulumi.getter
215
- def notes(self) -> Optional[pulumi.Input[str]]:
195
+ def notes(self) -> Optional[pulumi.Input[_builtins.str]]:
216
196
  """
217
197
  A free text field to capture information about the service principal, typically used for operational purposes.
218
198
  """
219
199
  return pulumi.get(self, "notes")
220
200
 
221
201
  @notes.setter
222
- def notes(self, value: Optional[pulumi.Input[str]]):
202
+ def notes(self, value: Optional[pulumi.Input[_builtins.str]]):
223
203
  pulumi.set(self, "notes", value)
224
204
 
225
- @property
205
+ @_builtins.property
226
206
  @pulumi.getter(name="notificationEmailAddresses")
227
- def notification_email_addresses(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
207
+ def notification_email_addresses(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
228
208
  """
229
209
  A set of email addresses where Azure AD sends a notification when the active certificate is near the expiration date. This is only for the certificates used to sign the SAML token issued for Azure AD Gallery applications.
230
210
  """
231
211
  return pulumi.get(self, "notification_email_addresses")
232
212
 
233
213
  @notification_email_addresses.setter
234
- def notification_email_addresses(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
214
+ def notification_email_addresses(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
235
215
  pulumi.set(self, "notification_email_addresses", value)
236
216
 
237
- @property
217
+ @_builtins.property
238
218
  @pulumi.getter
239
- def owners(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
219
+ def owners(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
240
220
  """
241
221
  A list of object IDs of principals that will be granted ownership of the service principal
242
222
  """
243
223
  return pulumi.get(self, "owners")
244
224
 
245
225
  @owners.setter
246
- def owners(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
226
+ def owners(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
247
227
  pulumi.set(self, "owners", value)
248
228
 
249
- @property
229
+ @_builtins.property
250
230
  @pulumi.getter(name="preferredSingleSignOnMode")
251
- def preferred_single_sign_on_mode(self) -> Optional[pulumi.Input[str]]:
231
+ def preferred_single_sign_on_mode(self) -> Optional[pulumi.Input[_builtins.str]]:
252
232
  """
253
233
  The single sign-on mode configured for this application. Azure AD uses the preferred single sign-on mode to launch the application from Microsoft 365 or the Azure AD My Apps. Supported values are `oidc`, `password`, `saml` or `notSupported`. Omit this property or specify a blank string to unset.
254
234
  """
255
235
  return pulumi.get(self, "preferred_single_sign_on_mode")
256
236
 
257
237
  @preferred_single_sign_on_mode.setter
258
- def preferred_single_sign_on_mode(self, value: Optional[pulumi.Input[str]]):
238
+ def preferred_single_sign_on_mode(self, value: Optional[pulumi.Input[_builtins.str]]):
259
239
  pulumi.set(self, "preferred_single_sign_on_mode", value)
260
240
 
261
- @property
241
+ @_builtins.property
262
242
  @pulumi.getter(name="samlSingleSignOn")
263
243
  def saml_single_sign_on(self) -> Optional[pulumi.Input['ServicePrincipalSamlSingleSignOnArgs']]:
264
244
  """
@@ -270,9 +250,9 @@ class ServicePrincipalArgs:
270
250
  def saml_single_sign_on(self, value: Optional[pulumi.Input['ServicePrincipalSamlSingleSignOnArgs']]):
271
251
  pulumi.set(self, "saml_single_sign_on", value)
272
252
 
273
- @property
253
+ @_builtins.property
274
254
  @pulumi.getter
275
- def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
255
+ def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
276
256
  """
277
257
  A set of tags to apply to the service principal for configuring specific behaviours of the service principal. Note that these are not provided for use by practitioners. Cannot be used together with the `feature_tags` block.
278
258
 
@@ -281,91 +261,89 @@ class ServicePrincipalArgs:
281
261
  return pulumi.get(self, "tags")
282
262
 
283
263
  @tags.setter
284
- def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
264
+ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
285
265
  pulumi.set(self, "tags", value)
286
266
 
287
- @property
267
+ @_builtins.property
288
268
  @pulumi.getter(name="useExisting")
289
- def use_existing(self) -> Optional[pulumi.Input[bool]]:
269
+ def use_existing(self) -> Optional[pulumi.Input[_builtins.bool]]:
290
270
  """
291
271
  When true, the resource will return an existing service principal instead of failing with an error
292
272
  """
293
273
  return pulumi.get(self, "use_existing")
294
274
 
295
275
  @use_existing.setter
296
- def use_existing(self, value: Optional[pulumi.Input[bool]]):
276
+ def use_existing(self, value: Optional[pulumi.Input[_builtins.bool]]):
297
277
  pulumi.set(self, "use_existing", value)
298
278
 
299
279
 
300
280
  @pulumi.input_type
301
281
  class _ServicePrincipalState:
302
282
  def __init__(__self__, *,
303
- account_enabled: Optional[pulumi.Input[bool]] = None,
304
- alternative_names: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
305
- app_role_assignment_required: Optional[pulumi.Input[bool]] = None,
306
- app_role_ids: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
283
+ account_enabled: Optional[pulumi.Input[_builtins.bool]] = None,
284
+ alternative_names: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
285
+ app_role_assignment_required: Optional[pulumi.Input[_builtins.bool]] = None,
286
+ app_role_ids: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
307
287
  app_roles: Optional[pulumi.Input[Sequence[pulumi.Input['ServicePrincipalAppRoleArgs']]]] = None,
308
- application_id: Optional[pulumi.Input[str]] = None,
309
- application_tenant_id: Optional[pulumi.Input[str]] = None,
310
- client_id: Optional[pulumi.Input[str]] = None,
311
- description: Optional[pulumi.Input[str]] = None,
312
- display_name: Optional[pulumi.Input[str]] = None,
288
+ application_tenant_id: Optional[pulumi.Input[_builtins.str]] = None,
289
+ client_id: Optional[pulumi.Input[_builtins.str]] = None,
290
+ description: Optional[pulumi.Input[_builtins.str]] = None,
291
+ display_name: Optional[pulumi.Input[_builtins.str]] = None,
313
292
  feature_tags: Optional[pulumi.Input[Sequence[pulumi.Input['ServicePrincipalFeatureTagArgs']]]] = None,
314
293
  features: Optional[pulumi.Input[Sequence[pulumi.Input['ServicePrincipalFeatureArgs']]]] = None,
315
- homepage_url: Optional[pulumi.Input[str]] = None,
316
- login_url: Optional[pulumi.Input[str]] = None,
317
- logout_url: Optional[pulumi.Input[str]] = None,
318
- notes: Optional[pulumi.Input[str]] = None,
319
- notification_email_addresses: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
320
- oauth2_permission_scope_ids: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
294
+ homepage_url: Optional[pulumi.Input[_builtins.str]] = None,
295
+ login_url: Optional[pulumi.Input[_builtins.str]] = None,
296
+ logout_url: Optional[pulumi.Input[_builtins.str]] = None,
297
+ notes: Optional[pulumi.Input[_builtins.str]] = None,
298
+ notification_email_addresses: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
299
+ oauth2_permission_scope_ids: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
321
300
  oauth2_permission_scopes: Optional[pulumi.Input[Sequence[pulumi.Input['ServicePrincipalOauth2PermissionScopeArgs']]]] = None,
322
- object_id: Optional[pulumi.Input[str]] = None,
323
- owners: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
324
- preferred_single_sign_on_mode: Optional[pulumi.Input[str]] = None,
325
- redirect_uris: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
326
- saml_metadata_url: Optional[pulumi.Input[str]] = None,
301
+ object_id: Optional[pulumi.Input[_builtins.str]] = None,
302
+ owners: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
303
+ preferred_single_sign_on_mode: Optional[pulumi.Input[_builtins.str]] = None,
304
+ redirect_uris: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
305
+ saml_metadata_url: Optional[pulumi.Input[_builtins.str]] = None,
327
306
  saml_single_sign_on: Optional[pulumi.Input['ServicePrincipalSamlSingleSignOnArgs']] = None,
328
- service_principal_names: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
329
- sign_in_audience: Optional[pulumi.Input[str]] = None,
330
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
331
- type: Optional[pulumi.Input[str]] = None,
332
- use_existing: Optional[pulumi.Input[bool]] = None):
307
+ service_principal_names: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
308
+ sign_in_audience: Optional[pulumi.Input[_builtins.str]] = None,
309
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
310
+ type: Optional[pulumi.Input[_builtins.str]] = None,
311
+ use_existing: Optional[pulumi.Input[_builtins.bool]] = None):
333
312
  """
334
313
  Input properties used for looking up and filtering ServicePrincipal resources.
335
- :param pulumi.Input[bool] account_enabled: Whether or not the service principal account is enabled. Defaults to `true`.
336
- :param pulumi.Input[Sequence[pulumi.Input[str]]] alternative_names: A set of alternative names, used to retrieve service principals by subscription, identify resource group and full resource ids for managed identities.
337
- :param pulumi.Input[bool] app_role_assignment_required: Whether this service principal requires an app role assignment to a user or group before Azure AD will issue a user or access token to the application. Defaults to `false`.
338
- :param pulumi.Input[Mapping[str, pulumi.Input[str]]] app_role_ids: A mapping of app role values to app role IDs, as published by the associated application, intended to be useful when referencing app roles in other resources in your configuration.
314
+ :param pulumi.Input[_builtins.bool] account_enabled: Whether or not the service principal account is enabled. Defaults to `true`.
315
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] alternative_names: A set of alternative names, used to retrieve service principals by subscription, identify resource group and full resource ids for managed identities.
316
+ :param pulumi.Input[_builtins.bool] app_role_assignment_required: Whether this service principal requires an app role assignment to a user or group before Azure AD will issue a user or access token to the application. Defaults to `false`.
317
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] app_role_ids: A mapping of app role values to app role IDs, as published by the associated application, intended to be useful when referencing app roles in other resources in your configuration.
339
318
  :param pulumi.Input[Sequence[pulumi.Input['ServicePrincipalAppRoleArgs']]] app_roles: A list of app roles published by the associated application, as documented below. For more information [official documentation](https://docs.microsoft.com/en-us/azure/architecture/multitenant-identity/app-roles).
340
- :param pulumi.Input[str] application_id: The application ID (client ID) of the application for which to create a service principal
341
- :param pulumi.Input[str] application_tenant_id: The tenant ID where the associated application is registered.
342
- :param pulumi.Input[str] client_id: The client ID of the application for which to create a service principal.
343
- :param pulumi.Input[str] description: A description of the service principal provided for internal end-users.
344
- :param pulumi.Input[str] display_name: Display name for the app role that appears during app role assignment and in consent experiences.
319
+ :param pulumi.Input[_builtins.str] application_tenant_id: The tenant ID where the associated application is registered.
320
+ :param pulumi.Input[_builtins.str] client_id: The client ID of the application for which to create a service principal.
321
+ :param pulumi.Input[_builtins.str] description: A description of the service principal provided for internal end-users.
322
+ :param pulumi.Input[_builtins.str] display_name: Display name for the app role that appears during app role assignment and in consent experiences.
345
323
  :param pulumi.Input[Sequence[pulumi.Input['ServicePrincipalFeatureTagArgs']]] feature_tags: A `feature_tags` block as described below. Cannot be used together with the `tags` property.
346
324
 
347
325
  > **Features and Tags** Features are configured for a service principal using tags, and are provided as a shortcut to set the corresponding magic tag value for each feature. You cannot configure `feature_tags` and `tags` for a service principal at the same time, so if you need to assign additional custom tags it's recommended to use the `tags` property instead. Any tags configured for the linked application will propagate to this service principal.
348
326
  :param pulumi.Input[Sequence[pulumi.Input['ServicePrincipalFeatureArgs']]] features: Block of features to configure for this service principal using tags
349
- :param pulumi.Input[str] homepage_url: Home page or landing page of the associated application.
350
- :param pulumi.Input[str] login_url: The URL where the service provider redirects the user to Azure AD to authenticate. Azure AD uses the URL to launch the application from Microsoft 365 or the Azure AD My Apps. When blank, Azure AD performs IdP-initiated sign-on for applications configured with SAML-based single sign-on.
351
- :param pulumi.Input[str] logout_url: The URL that will be used by Microsoft's authorization service to log out an user using OpenId Connect front-channel, back-channel or SAML logout protocols, taken from the associated application.
352
- :param pulumi.Input[str] notes: A free text field to capture information about the service principal, typically used for operational purposes.
353
- :param pulumi.Input[Sequence[pulumi.Input[str]]] notification_email_addresses: A set of email addresses where Azure AD sends a notification when the active certificate is near the expiration date. This is only for the certificates used to sign the SAML token issued for Azure AD Gallery applications.
354
- :param pulumi.Input[Mapping[str, pulumi.Input[str]]] oauth2_permission_scope_ids: A mapping of OAuth2.0 permission scope values to scope IDs, as exposed by the associated application, intended to be useful when referencing permission scopes in other resources in your configuration.
327
+ :param pulumi.Input[_builtins.str] homepage_url: Home page or landing page of the associated application.
328
+ :param pulumi.Input[_builtins.str] login_url: The URL where the service provider redirects the user to Azure AD to authenticate. Azure AD uses the URL to launch the application from Microsoft 365 or the Azure AD My Apps. When blank, Azure AD performs IdP-initiated sign-on for applications configured with SAML-based single sign-on.
329
+ :param pulumi.Input[_builtins.str] logout_url: The URL that will be used by Microsoft's authorization service to log out an user using OpenId Connect front-channel, back-channel or SAML logout protocols, taken from the associated application.
330
+ :param pulumi.Input[_builtins.str] notes: A free text field to capture information about the service principal, typically used for operational purposes.
331
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] notification_email_addresses: A set of email addresses where Azure AD sends a notification when the active certificate is near the expiration date. This is only for the certificates used to sign the SAML token issued for Azure AD Gallery applications.
332
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] oauth2_permission_scope_ids: A mapping of OAuth2.0 permission scope values to scope IDs, as exposed by the associated application, intended to be useful when referencing permission scopes in other resources in your configuration.
355
333
  :param pulumi.Input[Sequence[pulumi.Input['ServicePrincipalOauth2PermissionScopeArgs']]] oauth2_permission_scopes: A list of OAuth 2.0 delegated permission scopes exposed by the associated application, as documented below.
356
- :param pulumi.Input[str] object_id: The object ID of the service principal.
357
- :param pulumi.Input[Sequence[pulumi.Input[str]]] owners: A list of object IDs of principals that will be granted ownership of the service principal
358
- :param pulumi.Input[str] preferred_single_sign_on_mode: The single sign-on mode configured for this application. Azure AD uses the preferred single sign-on mode to launch the application from Microsoft 365 or the Azure AD My Apps. Supported values are `oidc`, `password`, `saml` or `notSupported`. Omit this property or specify a blank string to unset.
359
- :param pulumi.Input[Sequence[pulumi.Input[str]]] redirect_uris: A list of URLs where user tokens are sent for sign-in with the associated application, or the redirect URIs where OAuth 2.0 authorization codes and access tokens are sent for the associated application.
360
- :param pulumi.Input[str] saml_metadata_url: The URL where the service exposes SAML metadata for federation.
334
+ :param pulumi.Input[_builtins.str] object_id: The object ID of the service principal.
335
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] owners: A list of object IDs of principals that will be granted ownership of the service principal
336
+ :param pulumi.Input[_builtins.str] preferred_single_sign_on_mode: The single sign-on mode configured for this application. Azure AD uses the preferred single sign-on mode to launch the application from Microsoft 365 or the Azure AD My Apps. Supported values are `oidc`, `password`, `saml` or `notSupported`. Omit this property or specify a blank string to unset.
337
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] redirect_uris: A list of URLs where user tokens are sent for sign-in with the associated application, or the redirect URIs where OAuth 2.0 authorization codes and access tokens are sent for the associated application.
338
+ :param pulumi.Input[_builtins.str] saml_metadata_url: The URL where the service exposes SAML metadata for federation.
361
339
  :param pulumi.Input['ServicePrincipalSamlSingleSignOnArgs'] saml_single_sign_on: A `saml_single_sign_on` block as documented below.
362
- :param pulumi.Input[Sequence[pulumi.Input[str]]] service_principal_names: A list of identifier URI(s), copied over from the associated application.
363
- :param pulumi.Input[str] sign_in_audience: The Microsoft account types that are supported for the associated application. Possible values include `AzureADMyOrg`, `AzureADMultipleOrgs`, `AzureADandPersonalMicrosoftAccount` or `PersonalMicrosoftAccount`.
364
- :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A set of tags to apply to the service principal for configuring specific behaviours of the service principal. Note that these are not provided for use by practitioners. Cannot be used together with the `feature_tags` block.
340
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] service_principal_names: A list of identifier URI(s), copied over from the associated application.
341
+ :param pulumi.Input[_builtins.str] sign_in_audience: The Microsoft account types that are supported for the associated application. Possible values include `AzureADMyOrg`, `AzureADMultipleOrgs`, `AzureADandPersonalMicrosoftAccount` or `PersonalMicrosoftAccount`.
342
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] tags: A set of tags to apply to the service principal for configuring specific behaviours of the service principal. Note that these are not provided for use by practitioners. Cannot be used together with the `feature_tags` block.
365
343
 
366
344
  > **Tags and Features** Azure Active Directory uses special tag values to configure the behavior of service principals. These can be specified using either the `tags` property or with the `feature_tags` block. If you need to set any custom tag values not supported by the `feature_tags` block, it's recommended to use the `tags` property. Tag values set for the linked application will also propagate to this service principal.
367
- :param pulumi.Input[str] type: Whether this delegated permission should be considered safe for non-admin users to consent to on behalf of themselves, or whether an administrator should be required for consent to the permissions. Possible values are `User` or `Admin`.
368
- :param pulumi.Input[bool] use_existing: When true, the resource will return an existing service principal instead of failing with an error
345
+ :param pulumi.Input[_builtins.str] type: Whether this delegated permission should be considered safe for non-admin users to consent to on behalf of themselves, or whether an administrator should be required for consent to the permissions. Possible values are `User` or `Admin`.
346
+ :param pulumi.Input[_builtins.bool] use_existing: When true, the resource will return an existing service principal instead of failing with an error
369
347
  """
370
348
  if account_enabled is not None:
371
349
  pulumi.set(__self__, "account_enabled", account_enabled)
@@ -377,11 +355,6 @@ class _ServicePrincipalState:
377
355
  pulumi.set(__self__, "app_role_ids", app_role_ids)
378
356
  if app_roles is not None:
379
357
  pulumi.set(__self__, "app_roles", app_roles)
380
- if application_id is not None:
381
- warnings.warn("""The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider""", DeprecationWarning)
382
- pulumi.log.warn("""application_id is deprecated: The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider""")
383
- if application_id is not None:
384
- pulumi.set(__self__, "application_id", application_id)
385
358
  if application_tenant_id is not None:
386
359
  pulumi.set(__self__, "application_tenant_id", application_tenant_id)
387
360
  if client_id is not None:
@@ -434,55 +407,55 @@ class _ServicePrincipalState:
434
407
  if use_existing is not None:
435
408
  pulumi.set(__self__, "use_existing", use_existing)
436
409
 
437
- @property
410
+ @_builtins.property
438
411
  @pulumi.getter(name="accountEnabled")
439
- def account_enabled(self) -> Optional[pulumi.Input[bool]]:
412
+ def account_enabled(self) -> Optional[pulumi.Input[_builtins.bool]]:
440
413
  """
441
414
  Whether or not the service principal account is enabled. Defaults to `true`.
442
415
  """
443
416
  return pulumi.get(self, "account_enabled")
444
417
 
445
418
  @account_enabled.setter
446
- def account_enabled(self, value: Optional[pulumi.Input[bool]]):
419
+ def account_enabled(self, value: Optional[pulumi.Input[_builtins.bool]]):
447
420
  pulumi.set(self, "account_enabled", value)
448
421
 
449
- @property
422
+ @_builtins.property
450
423
  @pulumi.getter(name="alternativeNames")
451
- def alternative_names(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
424
+ def alternative_names(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
452
425
  """
453
426
  A set of alternative names, used to retrieve service principals by subscription, identify resource group and full resource ids for managed identities.
454
427
  """
455
428
  return pulumi.get(self, "alternative_names")
456
429
 
457
430
  @alternative_names.setter
458
- def alternative_names(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
431
+ def alternative_names(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
459
432
  pulumi.set(self, "alternative_names", value)
460
433
 
461
- @property
434
+ @_builtins.property
462
435
  @pulumi.getter(name="appRoleAssignmentRequired")
463
- def app_role_assignment_required(self) -> Optional[pulumi.Input[bool]]:
436
+ def app_role_assignment_required(self) -> Optional[pulumi.Input[_builtins.bool]]:
464
437
  """
465
438
  Whether this service principal requires an app role assignment to a user or group before Azure AD will issue a user or access token to the application. Defaults to `false`.
466
439
  """
467
440
  return pulumi.get(self, "app_role_assignment_required")
468
441
 
469
442
  @app_role_assignment_required.setter
470
- def app_role_assignment_required(self, value: Optional[pulumi.Input[bool]]):
443
+ def app_role_assignment_required(self, value: Optional[pulumi.Input[_builtins.bool]]):
471
444
  pulumi.set(self, "app_role_assignment_required", value)
472
445
 
473
- @property
446
+ @_builtins.property
474
447
  @pulumi.getter(name="appRoleIds")
475
- def app_role_ids(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
448
+ def app_role_ids(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]:
476
449
  """
477
450
  A mapping of app role values to app role IDs, as published by the associated application, intended to be useful when referencing app roles in other resources in your configuration.
478
451
  """
479
452
  return pulumi.get(self, "app_role_ids")
480
453
 
481
454
  @app_role_ids.setter
482
- def app_role_ids(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
455
+ def app_role_ids(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]):
483
456
  pulumi.set(self, "app_role_ids", value)
484
457
 
485
- @property
458
+ @_builtins.property
486
459
  @pulumi.getter(name="appRoles")
487
460
  def app_roles(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ServicePrincipalAppRoleArgs']]]]:
488
461
  """
@@ -494,70 +467,55 @@ class _ServicePrincipalState:
494
467
  def app_roles(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ServicePrincipalAppRoleArgs']]]]):
495
468
  pulumi.set(self, "app_roles", value)
496
469
 
497
- @property
498
- @pulumi.getter(name="applicationId")
499
- def application_id(self) -> Optional[pulumi.Input[str]]:
500
- """
501
- The application ID (client ID) of the application for which to create a service principal
502
- """
503
- warnings.warn("""The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider""", DeprecationWarning)
504
- pulumi.log.warn("""application_id is deprecated: The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider""")
505
-
506
- return pulumi.get(self, "application_id")
507
-
508
- @application_id.setter
509
- def application_id(self, value: Optional[pulumi.Input[str]]):
510
- pulumi.set(self, "application_id", value)
511
-
512
- @property
470
+ @_builtins.property
513
471
  @pulumi.getter(name="applicationTenantId")
514
- def application_tenant_id(self) -> Optional[pulumi.Input[str]]:
472
+ def application_tenant_id(self) -> Optional[pulumi.Input[_builtins.str]]:
515
473
  """
516
474
  The tenant ID where the associated application is registered.
517
475
  """
518
476
  return pulumi.get(self, "application_tenant_id")
519
477
 
520
478
  @application_tenant_id.setter
521
- def application_tenant_id(self, value: Optional[pulumi.Input[str]]):
479
+ def application_tenant_id(self, value: Optional[pulumi.Input[_builtins.str]]):
522
480
  pulumi.set(self, "application_tenant_id", value)
523
481
 
524
- @property
482
+ @_builtins.property
525
483
  @pulumi.getter(name="clientId")
526
- def client_id(self) -> Optional[pulumi.Input[str]]:
484
+ def client_id(self) -> Optional[pulumi.Input[_builtins.str]]:
527
485
  """
528
486
  The client ID of the application for which to create a service principal.
529
487
  """
530
488
  return pulumi.get(self, "client_id")
531
489
 
532
490
  @client_id.setter
533
- def client_id(self, value: Optional[pulumi.Input[str]]):
491
+ def client_id(self, value: Optional[pulumi.Input[_builtins.str]]):
534
492
  pulumi.set(self, "client_id", value)
535
493
 
536
- @property
494
+ @_builtins.property
537
495
  @pulumi.getter
538
- def description(self) -> Optional[pulumi.Input[str]]:
496
+ def description(self) -> Optional[pulumi.Input[_builtins.str]]:
539
497
  """
540
498
  A description of the service principal provided for internal end-users.
541
499
  """
542
500
  return pulumi.get(self, "description")
543
501
 
544
502
  @description.setter
545
- def description(self, value: Optional[pulumi.Input[str]]):
503
+ def description(self, value: Optional[pulumi.Input[_builtins.str]]):
546
504
  pulumi.set(self, "description", value)
547
505
 
548
- @property
506
+ @_builtins.property
549
507
  @pulumi.getter(name="displayName")
550
- def display_name(self) -> Optional[pulumi.Input[str]]:
508
+ def display_name(self) -> Optional[pulumi.Input[_builtins.str]]:
551
509
  """
552
510
  Display name for the app role that appears during app role assignment and in consent experiences.
553
511
  """
554
512
  return pulumi.get(self, "display_name")
555
513
 
556
514
  @display_name.setter
557
- def display_name(self, value: Optional[pulumi.Input[str]]):
515
+ def display_name(self, value: Optional[pulumi.Input[_builtins.str]]):
558
516
  pulumi.set(self, "display_name", value)
559
517
 
560
- @property
518
+ @_builtins.property
561
519
  @pulumi.getter(name="featureTags")
562
520
  def feature_tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ServicePrincipalFeatureTagArgs']]]]:
563
521
  """
@@ -571,94 +529,92 @@ class _ServicePrincipalState:
571
529
  def feature_tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ServicePrincipalFeatureTagArgs']]]]):
572
530
  pulumi.set(self, "feature_tags", value)
573
531
 
574
- @property
532
+ @_builtins.property
575
533
  @pulumi.getter
534
+ @_utilities.deprecated("""This block has been renamed to `feature_tags` and will be removed in version 3.0 of the provider""")
576
535
  def features(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ServicePrincipalFeatureArgs']]]]:
577
536
  """
578
537
  Block of features to configure for this service principal using tags
579
538
  """
580
- warnings.warn("""This block has been renamed to `feature_tags` and will be removed in version 3.0 of the provider""", DeprecationWarning)
581
- pulumi.log.warn("""features is deprecated: This block has been renamed to `feature_tags` and will be removed in version 3.0 of the provider""")
582
-
583
539
  return pulumi.get(self, "features")
584
540
 
585
541
  @features.setter
586
542
  def features(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ServicePrincipalFeatureArgs']]]]):
587
543
  pulumi.set(self, "features", value)
588
544
 
589
- @property
545
+ @_builtins.property
590
546
  @pulumi.getter(name="homepageUrl")
591
- def homepage_url(self) -> Optional[pulumi.Input[str]]:
547
+ def homepage_url(self) -> Optional[pulumi.Input[_builtins.str]]:
592
548
  """
593
549
  Home page or landing page of the associated application.
594
550
  """
595
551
  return pulumi.get(self, "homepage_url")
596
552
 
597
553
  @homepage_url.setter
598
- def homepage_url(self, value: Optional[pulumi.Input[str]]):
554
+ def homepage_url(self, value: Optional[pulumi.Input[_builtins.str]]):
599
555
  pulumi.set(self, "homepage_url", value)
600
556
 
601
- @property
557
+ @_builtins.property
602
558
  @pulumi.getter(name="loginUrl")
603
- def login_url(self) -> Optional[pulumi.Input[str]]:
559
+ def login_url(self) -> Optional[pulumi.Input[_builtins.str]]:
604
560
  """
605
561
  The URL where the service provider redirects the user to Azure AD to authenticate. Azure AD uses the URL to launch the application from Microsoft 365 or the Azure AD My Apps. When blank, Azure AD performs IdP-initiated sign-on for applications configured with SAML-based single sign-on.
606
562
  """
607
563
  return pulumi.get(self, "login_url")
608
564
 
609
565
  @login_url.setter
610
- def login_url(self, value: Optional[pulumi.Input[str]]):
566
+ def login_url(self, value: Optional[pulumi.Input[_builtins.str]]):
611
567
  pulumi.set(self, "login_url", value)
612
568
 
613
- @property
569
+ @_builtins.property
614
570
  @pulumi.getter(name="logoutUrl")
615
- def logout_url(self) -> Optional[pulumi.Input[str]]:
571
+ def logout_url(self) -> Optional[pulumi.Input[_builtins.str]]:
616
572
  """
617
573
  The URL that will be used by Microsoft's authorization service to log out an user using OpenId Connect front-channel, back-channel or SAML logout protocols, taken from the associated application.
618
574
  """
619
575
  return pulumi.get(self, "logout_url")
620
576
 
621
577
  @logout_url.setter
622
- def logout_url(self, value: Optional[pulumi.Input[str]]):
578
+ def logout_url(self, value: Optional[pulumi.Input[_builtins.str]]):
623
579
  pulumi.set(self, "logout_url", value)
624
580
 
625
- @property
581
+ @_builtins.property
626
582
  @pulumi.getter
627
- def notes(self) -> Optional[pulumi.Input[str]]:
583
+ def notes(self) -> Optional[pulumi.Input[_builtins.str]]:
628
584
  """
629
585
  A free text field to capture information about the service principal, typically used for operational purposes.
630
586
  """
631
587
  return pulumi.get(self, "notes")
632
588
 
633
589
  @notes.setter
634
- def notes(self, value: Optional[pulumi.Input[str]]):
590
+ def notes(self, value: Optional[pulumi.Input[_builtins.str]]):
635
591
  pulumi.set(self, "notes", value)
636
592
 
637
- @property
593
+ @_builtins.property
638
594
  @pulumi.getter(name="notificationEmailAddresses")
639
- def notification_email_addresses(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
595
+ def notification_email_addresses(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
640
596
  """
641
597
  A set of email addresses where Azure AD sends a notification when the active certificate is near the expiration date. This is only for the certificates used to sign the SAML token issued for Azure AD Gallery applications.
642
598
  """
643
599
  return pulumi.get(self, "notification_email_addresses")
644
600
 
645
601
  @notification_email_addresses.setter
646
- def notification_email_addresses(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
602
+ def notification_email_addresses(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
647
603
  pulumi.set(self, "notification_email_addresses", value)
648
604
 
649
- @property
605
+ @_builtins.property
650
606
  @pulumi.getter(name="oauth2PermissionScopeIds")
651
- def oauth2_permission_scope_ids(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
607
+ def oauth2_permission_scope_ids(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]:
652
608
  """
653
609
  A mapping of OAuth2.0 permission scope values to scope IDs, as exposed by the associated application, intended to be useful when referencing permission scopes in other resources in your configuration.
654
610
  """
655
611
  return pulumi.get(self, "oauth2_permission_scope_ids")
656
612
 
657
613
  @oauth2_permission_scope_ids.setter
658
- def oauth2_permission_scope_ids(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
614
+ def oauth2_permission_scope_ids(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]):
659
615
  pulumi.set(self, "oauth2_permission_scope_ids", value)
660
616
 
661
- @property
617
+ @_builtins.property
662
618
  @pulumi.getter(name="oauth2PermissionScopes")
663
619
  def oauth2_permission_scopes(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ServicePrincipalOauth2PermissionScopeArgs']]]]:
664
620
  """
@@ -670,67 +626,67 @@ class _ServicePrincipalState:
670
626
  def oauth2_permission_scopes(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ServicePrincipalOauth2PermissionScopeArgs']]]]):
671
627
  pulumi.set(self, "oauth2_permission_scopes", value)
672
628
 
673
- @property
629
+ @_builtins.property
674
630
  @pulumi.getter(name="objectId")
675
- def object_id(self) -> Optional[pulumi.Input[str]]:
631
+ def object_id(self) -> Optional[pulumi.Input[_builtins.str]]:
676
632
  """
677
633
  The object ID of the service principal.
678
634
  """
679
635
  return pulumi.get(self, "object_id")
680
636
 
681
637
  @object_id.setter
682
- def object_id(self, value: Optional[pulumi.Input[str]]):
638
+ def object_id(self, value: Optional[pulumi.Input[_builtins.str]]):
683
639
  pulumi.set(self, "object_id", value)
684
640
 
685
- @property
641
+ @_builtins.property
686
642
  @pulumi.getter
687
- def owners(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
643
+ def owners(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
688
644
  """
689
645
  A list of object IDs of principals that will be granted ownership of the service principal
690
646
  """
691
647
  return pulumi.get(self, "owners")
692
648
 
693
649
  @owners.setter
694
- def owners(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
650
+ def owners(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
695
651
  pulumi.set(self, "owners", value)
696
652
 
697
- @property
653
+ @_builtins.property
698
654
  @pulumi.getter(name="preferredSingleSignOnMode")
699
- def preferred_single_sign_on_mode(self) -> Optional[pulumi.Input[str]]:
655
+ def preferred_single_sign_on_mode(self) -> Optional[pulumi.Input[_builtins.str]]:
700
656
  """
701
657
  The single sign-on mode configured for this application. Azure AD uses the preferred single sign-on mode to launch the application from Microsoft 365 or the Azure AD My Apps. Supported values are `oidc`, `password`, `saml` or `notSupported`. Omit this property or specify a blank string to unset.
702
658
  """
703
659
  return pulumi.get(self, "preferred_single_sign_on_mode")
704
660
 
705
661
  @preferred_single_sign_on_mode.setter
706
- def preferred_single_sign_on_mode(self, value: Optional[pulumi.Input[str]]):
662
+ def preferred_single_sign_on_mode(self, value: Optional[pulumi.Input[_builtins.str]]):
707
663
  pulumi.set(self, "preferred_single_sign_on_mode", value)
708
664
 
709
- @property
665
+ @_builtins.property
710
666
  @pulumi.getter(name="redirectUris")
711
- def redirect_uris(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
667
+ def redirect_uris(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
712
668
  """
713
669
  A list of URLs where user tokens are sent for sign-in with the associated application, or the redirect URIs where OAuth 2.0 authorization codes and access tokens are sent for the associated application.
714
670
  """
715
671
  return pulumi.get(self, "redirect_uris")
716
672
 
717
673
  @redirect_uris.setter
718
- def redirect_uris(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
674
+ def redirect_uris(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
719
675
  pulumi.set(self, "redirect_uris", value)
720
676
 
721
- @property
677
+ @_builtins.property
722
678
  @pulumi.getter(name="samlMetadataUrl")
723
- def saml_metadata_url(self) -> Optional[pulumi.Input[str]]:
679
+ def saml_metadata_url(self) -> Optional[pulumi.Input[_builtins.str]]:
724
680
  """
725
681
  The URL where the service exposes SAML metadata for federation.
726
682
  """
727
683
  return pulumi.get(self, "saml_metadata_url")
728
684
 
729
685
  @saml_metadata_url.setter
730
- def saml_metadata_url(self, value: Optional[pulumi.Input[str]]):
686
+ def saml_metadata_url(self, value: Optional[pulumi.Input[_builtins.str]]):
731
687
  pulumi.set(self, "saml_metadata_url", value)
732
688
 
733
- @property
689
+ @_builtins.property
734
690
  @pulumi.getter(name="samlSingleSignOn")
735
691
  def saml_single_sign_on(self) -> Optional[pulumi.Input['ServicePrincipalSamlSingleSignOnArgs']]:
736
692
  """
@@ -742,33 +698,33 @@ class _ServicePrincipalState:
742
698
  def saml_single_sign_on(self, value: Optional[pulumi.Input['ServicePrincipalSamlSingleSignOnArgs']]):
743
699
  pulumi.set(self, "saml_single_sign_on", value)
744
700
 
745
- @property
701
+ @_builtins.property
746
702
  @pulumi.getter(name="servicePrincipalNames")
747
- def service_principal_names(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
703
+ def service_principal_names(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
748
704
  """
749
705
  A list of identifier URI(s), copied over from the associated application.
750
706
  """
751
707
  return pulumi.get(self, "service_principal_names")
752
708
 
753
709
  @service_principal_names.setter
754
- def service_principal_names(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
710
+ def service_principal_names(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
755
711
  pulumi.set(self, "service_principal_names", value)
756
712
 
757
- @property
713
+ @_builtins.property
758
714
  @pulumi.getter(name="signInAudience")
759
- def sign_in_audience(self) -> Optional[pulumi.Input[str]]:
715
+ def sign_in_audience(self) -> Optional[pulumi.Input[_builtins.str]]:
760
716
  """
761
717
  The Microsoft account types that are supported for the associated application. Possible values include `AzureADMyOrg`, `AzureADMultipleOrgs`, `AzureADandPersonalMicrosoftAccount` or `PersonalMicrosoftAccount`.
762
718
  """
763
719
  return pulumi.get(self, "sign_in_audience")
764
720
 
765
721
  @sign_in_audience.setter
766
- def sign_in_audience(self, value: Optional[pulumi.Input[str]]):
722
+ def sign_in_audience(self, value: Optional[pulumi.Input[_builtins.str]]):
767
723
  pulumi.set(self, "sign_in_audience", value)
768
724
 
769
- @property
725
+ @_builtins.property
770
726
  @pulumi.getter
771
- def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
727
+ def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
772
728
  """
773
729
  A set of tags to apply to the service principal for configuring specific behaviours of the service principal. Note that these are not provided for use by practitioners. Cannot be used together with the `feature_tags` block.
774
730
 
@@ -777,55 +733,55 @@ class _ServicePrincipalState:
777
733
  return pulumi.get(self, "tags")
778
734
 
779
735
  @tags.setter
780
- def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
736
+ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
781
737
  pulumi.set(self, "tags", value)
782
738
 
783
- @property
739
+ @_builtins.property
784
740
  @pulumi.getter
785
- def type(self) -> Optional[pulumi.Input[str]]:
741
+ def type(self) -> Optional[pulumi.Input[_builtins.str]]:
786
742
  """
787
743
  Whether this delegated permission should be considered safe for non-admin users to consent to on behalf of themselves, or whether an administrator should be required for consent to the permissions. Possible values are `User` or `Admin`.
788
744
  """
789
745
  return pulumi.get(self, "type")
790
746
 
791
747
  @type.setter
792
- def type(self, value: Optional[pulumi.Input[str]]):
748
+ def type(self, value: Optional[pulumi.Input[_builtins.str]]):
793
749
  pulumi.set(self, "type", value)
794
750
 
795
- @property
751
+ @_builtins.property
796
752
  @pulumi.getter(name="useExisting")
797
- def use_existing(self) -> Optional[pulumi.Input[bool]]:
753
+ def use_existing(self) -> Optional[pulumi.Input[_builtins.bool]]:
798
754
  """
799
755
  When true, the resource will return an existing service principal instead of failing with an error
800
756
  """
801
757
  return pulumi.get(self, "use_existing")
802
758
 
803
759
  @use_existing.setter
804
- def use_existing(self, value: Optional[pulumi.Input[bool]]):
760
+ def use_existing(self, value: Optional[pulumi.Input[_builtins.bool]]):
805
761
  pulumi.set(self, "use_existing", value)
806
762
 
807
763
 
764
+ @pulumi.type_token("azuread:index/servicePrincipal:ServicePrincipal")
808
765
  class ServicePrincipal(pulumi.CustomResource):
809
766
  @overload
810
767
  def __init__(__self__,
811
768
  resource_name: str,
812
769
  opts: Optional[pulumi.ResourceOptions] = None,
813
- account_enabled: Optional[pulumi.Input[bool]] = None,
814
- alternative_names: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
815
- app_role_assignment_required: Optional[pulumi.Input[bool]] = None,
816
- application_id: Optional[pulumi.Input[str]] = None,
817
- client_id: Optional[pulumi.Input[str]] = None,
818
- description: Optional[pulumi.Input[str]] = None,
819
- feature_tags: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ServicePrincipalFeatureTagArgs']]]]] = None,
820
- features: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ServicePrincipalFeatureArgs']]]]] = None,
821
- login_url: Optional[pulumi.Input[str]] = None,
822
- notes: Optional[pulumi.Input[str]] = None,
823
- notification_email_addresses: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
824
- owners: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
825
- preferred_single_sign_on_mode: Optional[pulumi.Input[str]] = None,
826
- saml_single_sign_on: Optional[pulumi.Input[pulumi.InputType['ServicePrincipalSamlSingleSignOnArgs']]] = None,
827
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
828
- use_existing: Optional[pulumi.Input[bool]] = None,
770
+ account_enabled: Optional[pulumi.Input[_builtins.bool]] = None,
771
+ alternative_names: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
772
+ app_role_assignment_required: Optional[pulumi.Input[_builtins.bool]] = None,
773
+ client_id: Optional[pulumi.Input[_builtins.str]] = None,
774
+ description: Optional[pulumi.Input[_builtins.str]] = None,
775
+ feature_tags: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ServicePrincipalFeatureTagArgs', 'ServicePrincipalFeatureTagArgsDict']]]]] = None,
776
+ features: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ServicePrincipalFeatureArgs', 'ServicePrincipalFeatureArgsDict']]]]] = None,
777
+ login_url: Optional[pulumi.Input[_builtins.str]] = None,
778
+ notes: Optional[pulumi.Input[_builtins.str]] = None,
779
+ notification_email_addresses: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
780
+ owners: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
781
+ preferred_single_sign_on_mode: Optional[pulumi.Input[_builtins.str]] = None,
782
+ saml_single_sign_on: Optional[pulumi.Input[Union['ServicePrincipalSamlSingleSignOnArgs', 'ServicePrincipalSamlSingleSignOnArgsDict']]] = None,
783
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
784
+ use_existing: Optional[pulumi.Input[_builtins.bool]] = None,
829
785
  __props__=None):
830
786
  """
831
787
  ## Example Usage
@@ -837,11 +793,11 @@ class ServicePrincipal(pulumi.CustomResource):
837
793
  import pulumi_azuread as azuread
838
794
 
839
795
  current = azuread.get_client_config()
840
- example_application = azuread.Application("exampleApplication",
796
+ example = azuread.Application("example",
841
797
  display_name="example",
842
798
  owners=[current.object_id])
843
- example_service_principal = azuread.ServicePrincipal("exampleServicePrincipal",
844
- client_id=example_application.client_id,
799
+ example_service_principal = azuread.ServicePrincipal("example",
800
+ client_id=example.client_id,
845
801
  app_role_assignment_required=False,
846
802
  owners=[current.object_id])
847
803
  ```
@@ -853,17 +809,17 @@ class ServicePrincipal(pulumi.CustomResource):
853
809
  import pulumi_azuread as azuread
854
810
 
855
811
  current = azuread.get_client_config()
856
- example_application = azuread.Application("exampleApplication",
812
+ example = azuread.Application("example",
857
813
  display_name="example",
858
814
  owners=[current.object_id])
859
- example_service_principal = azuread.ServicePrincipal("exampleServicePrincipal",
860
- client_id=example_application.client_id,
815
+ example_service_principal = azuread.ServicePrincipal("example",
816
+ client_id=example.client_id,
861
817
  app_role_assignment_required=False,
862
818
  owners=[current.object_id],
863
- feature_tags=[azuread.ServicePrincipalFeatureTagArgs(
864
- enterprise=True,
865
- gallery=True,
866
- )])
819
+ feature_tags=[{
820
+ "enterprise": True,
821
+ "gallery": True,
822
+ }])
867
823
  ```
868
824
 
869
825
  *Manage a service principal for a first-party Microsoft application*
@@ -874,7 +830,7 @@ class ServicePrincipal(pulumi.CustomResource):
874
830
 
875
831
  well_known = azuread.get_application_published_app_ids()
876
832
  msgraph = azuread.ServicePrincipal("msgraph",
877
- client_id=well_known.result["MicrosoftGraph"],
833
+ client_id=well_known.result["microsoftGraph"],
878
834
  use_existing=True)
879
835
  ```
880
836
 
@@ -884,11 +840,11 @@ class ServicePrincipal(pulumi.CustomResource):
884
840
  import pulumi
885
841
  import pulumi_azuread as azuread
886
842
 
887
- example_application_template = azuread.get_application_template(display_name="Marketo")
888
- example_application = azuread.Application("exampleApplication",
843
+ example = azuread.get_application_template(display_name="Marketo")
844
+ example_application = azuread.Application("example",
889
845
  display_name="example",
890
- template_id=example_application_template.template_id)
891
- example_service_principal = azuread.ServicePrincipal("exampleServicePrincipal",
846
+ template_id=example.template_id)
847
+ example_service_principal = azuread.ServicePrincipal("example",
892
848
  client_id=example_application.client_id,
893
849
  use_existing=True)
894
850
  ```
@@ -898,37 +854,36 @@ class ServicePrincipal(pulumi.CustomResource):
898
854
  Service principals can be imported using their object ID, e.g.
899
855
 
900
856
  ```sh
901
- $ pulumi import azuread:index/servicePrincipal:ServicePrincipal example 00000000-0000-0000-0000-000000000000
857
+ $ pulumi import azuread:index/servicePrincipal:ServicePrincipal example /servicePrincipals/00000000-0000-0000-0000-000000000000
902
858
  ```
903
859
 
904
860
  :param str resource_name: The name of the resource.
905
861
  :param pulumi.ResourceOptions opts: Options for the resource.
906
- :param pulumi.Input[bool] account_enabled: Whether or not the service principal account is enabled. Defaults to `true`.
907
- :param pulumi.Input[Sequence[pulumi.Input[str]]] alternative_names: A set of alternative names, used to retrieve service principals by subscription, identify resource group and full resource ids for managed identities.
908
- :param pulumi.Input[bool] app_role_assignment_required: Whether this service principal requires an app role assignment to a user or group before Azure AD will issue a user or access token to the application. Defaults to `false`.
909
- :param pulumi.Input[str] application_id: The application ID (client ID) of the application for which to create a service principal
910
- :param pulumi.Input[str] client_id: The client ID of the application for which to create a service principal.
911
- :param pulumi.Input[str] description: A description of the service principal provided for internal end-users.
912
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ServicePrincipalFeatureTagArgs']]]] feature_tags: A `feature_tags` block as described below. Cannot be used together with the `tags` property.
862
+ :param pulumi.Input[_builtins.bool] account_enabled: Whether or not the service principal account is enabled. Defaults to `true`.
863
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] alternative_names: A set of alternative names, used to retrieve service principals by subscription, identify resource group and full resource ids for managed identities.
864
+ :param pulumi.Input[_builtins.bool] app_role_assignment_required: Whether this service principal requires an app role assignment to a user or group before Azure AD will issue a user or access token to the application. Defaults to `false`.
865
+ :param pulumi.Input[_builtins.str] client_id: The client ID of the application for which to create a service principal.
866
+ :param pulumi.Input[_builtins.str] description: A description of the service principal provided for internal end-users.
867
+ :param pulumi.Input[Sequence[pulumi.Input[Union['ServicePrincipalFeatureTagArgs', 'ServicePrincipalFeatureTagArgsDict']]]] feature_tags: A `feature_tags` block as described below. Cannot be used together with the `tags` property.
913
868
 
914
869
  > **Features and Tags** Features are configured for a service principal using tags, and are provided as a shortcut to set the corresponding magic tag value for each feature. You cannot configure `feature_tags` and `tags` for a service principal at the same time, so if you need to assign additional custom tags it's recommended to use the `tags` property instead. Any tags configured for the linked application will propagate to this service principal.
915
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ServicePrincipalFeatureArgs']]]] features: Block of features to configure for this service principal using tags
916
- :param pulumi.Input[str] login_url: The URL where the service provider redirects the user to Azure AD to authenticate. Azure AD uses the URL to launch the application from Microsoft 365 or the Azure AD My Apps. When blank, Azure AD performs IdP-initiated sign-on for applications configured with SAML-based single sign-on.
917
- :param pulumi.Input[str] notes: A free text field to capture information about the service principal, typically used for operational purposes.
918
- :param pulumi.Input[Sequence[pulumi.Input[str]]] notification_email_addresses: A set of email addresses where Azure AD sends a notification when the active certificate is near the expiration date. This is only for the certificates used to sign the SAML token issued for Azure AD Gallery applications.
919
- :param pulumi.Input[Sequence[pulumi.Input[str]]] owners: A list of object IDs of principals that will be granted ownership of the service principal
920
- :param pulumi.Input[str] preferred_single_sign_on_mode: The single sign-on mode configured for this application. Azure AD uses the preferred single sign-on mode to launch the application from Microsoft 365 or the Azure AD My Apps. Supported values are `oidc`, `password`, `saml` or `notSupported`. Omit this property or specify a blank string to unset.
921
- :param pulumi.Input[pulumi.InputType['ServicePrincipalSamlSingleSignOnArgs']] saml_single_sign_on: A `saml_single_sign_on` block as documented below.
922
- :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A set of tags to apply to the service principal for configuring specific behaviours of the service principal. Note that these are not provided for use by practitioners. Cannot be used together with the `feature_tags` block.
870
+ :param pulumi.Input[Sequence[pulumi.Input[Union['ServicePrincipalFeatureArgs', 'ServicePrincipalFeatureArgsDict']]]] features: Block of features to configure for this service principal using tags
871
+ :param pulumi.Input[_builtins.str] login_url: The URL where the service provider redirects the user to Azure AD to authenticate. Azure AD uses the URL to launch the application from Microsoft 365 or the Azure AD My Apps. When blank, Azure AD performs IdP-initiated sign-on for applications configured with SAML-based single sign-on.
872
+ :param pulumi.Input[_builtins.str] notes: A free text field to capture information about the service principal, typically used for operational purposes.
873
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] notification_email_addresses: A set of email addresses where Azure AD sends a notification when the active certificate is near the expiration date. This is only for the certificates used to sign the SAML token issued for Azure AD Gallery applications.
874
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] owners: A list of object IDs of principals that will be granted ownership of the service principal
875
+ :param pulumi.Input[_builtins.str] preferred_single_sign_on_mode: The single sign-on mode configured for this application. Azure AD uses the preferred single sign-on mode to launch the application from Microsoft 365 or the Azure AD My Apps. Supported values are `oidc`, `password`, `saml` or `notSupported`. Omit this property or specify a blank string to unset.
876
+ :param pulumi.Input[Union['ServicePrincipalSamlSingleSignOnArgs', 'ServicePrincipalSamlSingleSignOnArgsDict']] saml_single_sign_on: A `saml_single_sign_on` block as documented below.
877
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] tags: A set of tags to apply to the service principal for configuring specific behaviours of the service principal. Note that these are not provided for use by practitioners. Cannot be used together with the `feature_tags` block.
923
878
 
924
879
  > **Tags and Features** Azure Active Directory uses special tag values to configure the behavior of service principals. These can be specified using either the `tags` property or with the `feature_tags` block. If you need to set any custom tag values not supported by the `feature_tags` block, it's recommended to use the `tags` property. Tag values set for the linked application will also propagate to this service principal.
925
- :param pulumi.Input[bool] use_existing: When true, the resource will return an existing service principal instead of failing with an error
880
+ :param pulumi.Input[_builtins.bool] use_existing: When true, the resource will return an existing service principal instead of failing with an error
926
881
  """
927
882
  ...
928
883
  @overload
929
884
  def __init__(__self__,
930
885
  resource_name: str,
931
- args: Optional[ServicePrincipalArgs] = None,
886
+ args: ServicePrincipalArgs,
932
887
  opts: Optional[pulumi.ResourceOptions] = None):
933
888
  """
934
889
  ## Example Usage
@@ -940,11 +895,11 @@ class ServicePrincipal(pulumi.CustomResource):
940
895
  import pulumi_azuread as azuread
941
896
 
942
897
  current = azuread.get_client_config()
943
- example_application = azuread.Application("exampleApplication",
898
+ example = azuread.Application("example",
944
899
  display_name="example",
945
900
  owners=[current.object_id])
946
- example_service_principal = azuread.ServicePrincipal("exampleServicePrincipal",
947
- client_id=example_application.client_id,
901
+ example_service_principal = azuread.ServicePrincipal("example",
902
+ client_id=example.client_id,
948
903
  app_role_assignment_required=False,
949
904
  owners=[current.object_id])
950
905
  ```
@@ -956,17 +911,17 @@ class ServicePrincipal(pulumi.CustomResource):
956
911
  import pulumi_azuread as azuread
957
912
 
958
913
  current = azuread.get_client_config()
959
- example_application = azuread.Application("exampleApplication",
914
+ example = azuread.Application("example",
960
915
  display_name="example",
961
916
  owners=[current.object_id])
962
- example_service_principal = azuread.ServicePrincipal("exampleServicePrincipal",
963
- client_id=example_application.client_id,
917
+ example_service_principal = azuread.ServicePrincipal("example",
918
+ client_id=example.client_id,
964
919
  app_role_assignment_required=False,
965
920
  owners=[current.object_id],
966
- feature_tags=[azuread.ServicePrincipalFeatureTagArgs(
967
- enterprise=True,
968
- gallery=True,
969
- )])
921
+ feature_tags=[{
922
+ "enterprise": True,
923
+ "gallery": True,
924
+ }])
970
925
  ```
971
926
 
972
927
  *Manage a service principal for a first-party Microsoft application*
@@ -977,7 +932,7 @@ class ServicePrincipal(pulumi.CustomResource):
977
932
 
978
933
  well_known = azuread.get_application_published_app_ids()
979
934
  msgraph = azuread.ServicePrincipal("msgraph",
980
- client_id=well_known.result["MicrosoftGraph"],
935
+ client_id=well_known.result["microsoftGraph"],
981
936
  use_existing=True)
982
937
  ```
983
938
 
@@ -987,11 +942,11 @@ class ServicePrincipal(pulumi.CustomResource):
987
942
  import pulumi
988
943
  import pulumi_azuread as azuread
989
944
 
990
- example_application_template = azuread.get_application_template(display_name="Marketo")
991
- example_application = azuread.Application("exampleApplication",
945
+ example = azuread.get_application_template(display_name="Marketo")
946
+ example_application = azuread.Application("example",
992
947
  display_name="example",
993
- template_id=example_application_template.template_id)
994
- example_service_principal = azuread.ServicePrincipal("exampleServicePrincipal",
948
+ template_id=example.template_id)
949
+ example_service_principal = azuread.ServicePrincipal("example",
995
950
  client_id=example_application.client_id,
996
951
  use_existing=True)
997
952
  ```
@@ -1001,7 +956,7 @@ class ServicePrincipal(pulumi.CustomResource):
1001
956
  Service principals can be imported using their object ID, e.g.
1002
957
 
1003
958
  ```sh
1004
- $ pulumi import azuread:index/servicePrincipal:ServicePrincipal example 00000000-0000-0000-0000-000000000000
959
+ $ pulumi import azuread:index/servicePrincipal:ServicePrincipal example /servicePrincipals/00000000-0000-0000-0000-000000000000
1005
960
  ```
1006
961
 
1007
962
  :param str resource_name: The name of the resource.
@@ -1019,22 +974,21 @@ class ServicePrincipal(pulumi.CustomResource):
1019
974
  def _internal_init(__self__,
1020
975
  resource_name: str,
1021
976
  opts: Optional[pulumi.ResourceOptions] = None,
1022
- account_enabled: Optional[pulumi.Input[bool]] = None,
1023
- alternative_names: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1024
- app_role_assignment_required: Optional[pulumi.Input[bool]] = None,
1025
- application_id: Optional[pulumi.Input[str]] = None,
1026
- client_id: Optional[pulumi.Input[str]] = None,
1027
- description: Optional[pulumi.Input[str]] = None,
1028
- feature_tags: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ServicePrincipalFeatureTagArgs']]]]] = None,
1029
- features: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ServicePrincipalFeatureArgs']]]]] = None,
1030
- login_url: Optional[pulumi.Input[str]] = None,
1031
- notes: Optional[pulumi.Input[str]] = None,
1032
- notification_email_addresses: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1033
- owners: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1034
- preferred_single_sign_on_mode: Optional[pulumi.Input[str]] = None,
1035
- saml_single_sign_on: Optional[pulumi.Input[pulumi.InputType['ServicePrincipalSamlSingleSignOnArgs']]] = None,
1036
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1037
- use_existing: Optional[pulumi.Input[bool]] = None,
977
+ account_enabled: Optional[pulumi.Input[_builtins.bool]] = None,
978
+ alternative_names: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
979
+ app_role_assignment_required: Optional[pulumi.Input[_builtins.bool]] = None,
980
+ client_id: Optional[pulumi.Input[_builtins.str]] = None,
981
+ description: Optional[pulumi.Input[_builtins.str]] = None,
982
+ feature_tags: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ServicePrincipalFeatureTagArgs', 'ServicePrincipalFeatureTagArgsDict']]]]] = None,
983
+ features: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ServicePrincipalFeatureArgs', 'ServicePrincipalFeatureArgsDict']]]]] = None,
984
+ login_url: Optional[pulumi.Input[_builtins.str]] = None,
985
+ notes: Optional[pulumi.Input[_builtins.str]] = None,
986
+ notification_email_addresses: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
987
+ owners: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
988
+ preferred_single_sign_on_mode: Optional[pulumi.Input[_builtins.str]] = None,
989
+ saml_single_sign_on: Optional[pulumi.Input[Union['ServicePrincipalSamlSingleSignOnArgs', 'ServicePrincipalSamlSingleSignOnArgsDict']]] = None,
990
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
991
+ use_existing: Optional[pulumi.Input[_builtins.bool]] = None,
1038
992
  __props__=None):
1039
993
  opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
1040
994
  if not isinstance(opts, pulumi.ResourceOptions):
@@ -1047,7 +1001,8 @@ class ServicePrincipal(pulumi.CustomResource):
1047
1001
  __props__.__dict__["account_enabled"] = account_enabled
1048
1002
  __props__.__dict__["alternative_names"] = alternative_names
1049
1003
  __props__.__dict__["app_role_assignment_required"] = app_role_assignment_required
1050
- __props__.__dict__["application_id"] = application_id
1004
+ if client_id is None and not opts.urn:
1005
+ raise TypeError("Missing required property 'client_id'")
1051
1006
  __props__.__dict__["client_id"] = client_id
1052
1007
  __props__.__dict__["description"] = description
1053
1008
  __props__.__dict__["feature_tags"] = feature_tags
@@ -1084,36 +1039,35 @@ class ServicePrincipal(pulumi.CustomResource):
1084
1039
  def get(resource_name: str,
1085
1040
  id: pulumi.Input[str],
1086
1041
  opts: Optional[pulumi.ResourceOptions] = None,
1087
- account_enabled: Optional[pulumi.Input[bool]] = None,
1088
- alternative_names: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1089
- app_role_assignment_required: Optional[pulumi.Input[bool]] = None,
1090
- app_role_ids: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
1091
- app_roles: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ServicePrincipalAppRoleArgs']]]]] = None,
1092
- application_id: Optional[pulumi.Input[str]] = None,
1093
- application_tenant_id: Optional[pulumi.Input[str]] = None,
1094
- client_id: Optional[pulumi.Input[str]] = None,
1095
- description: Optional[pulumi.Input[str]] = None,
1096
- display_name: Optional[pulumi.Input[str]] = None,
1097
- feature_tags: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ServicePrincipalFeatureTagArgs']]]]] = None,
1098
- features: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ServicePrincipalFeatureArgs']]]]] = None,
1099
- homepage_url: Optional[pulumi.Input[str]] = None,
1100
- login_url: Optional[pulumi.Input[str]] = None,
1101
- logout_url: Optional[pulumi.Input[str]] = None,
1102
- notes: Optional[pulumi.Input[str]] = None,
1103
- notification_email_addresses: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1104
- oauth2_permission_scope_ids: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
1105
- oauth2_permission_scopes: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ServicePrincipalOauth2PermissionScopeArgs']]]]] = None,
1106
- object_id: Optional[pulumi.Input[str]] = None,
1107
- owners: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1108
- preferred_single_sign_on_mode: Optional[pulumi.Input[str]] = None,
1109
- redirect_uris: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1110
- saml_metadata_url: Optional[pulumi.Input[str]] = None,
1111
- saml_single_sign_on: Optional[pulumi.Input[pulumi.InputType['ServicePrincipalSamlSingleSignOnArgs']]] = None,
1112
- service_principal_names: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1113
- sign_in_audience: Optional[pulumi.Input[str]] = None,
1114
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1115
- type: Optional[pulumi.Input[str]] = None,
1116
- use_existing: Optional[pulumi.Input[bool]] = None) -> 'ServicePrincipal':
1042
+ account_enabled: Optional[pulumi.Input[_builtins.bool]] = None,
1043
+ alternative_names: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1044
+ app_role_assignment_required: Optional[pulumi.Input[_builtins.bool]] = None,
1045
+ app_role_ids: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
1046
+ app_roles: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ServicePrincipalAppRoleArgs', 'ServicePrincipalAppRoleArgsDict']]]]] = None,
1047
+ application_tenant_id: Optional[pulumi.Input[_builtins.str]] = None,
1048
+ client_id: Optional[pulumi.Input[_builtins.str]] = None,
1049
+ description: Optional[pulumi.Input[_builtins.str]] = None,
1050
+ display_name: Optional[pulumi.Input[_builtins.str]] = None,
1051
+ feature_tags: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ServicePrincipalFeatureTagArgs', 'ServicePrincipalFeatureTagArgsDict']]]]] = None,
1052
+ features: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ServicePrincipalFeatureArgs', 'ServicePrincipalFeatureArgsDict']]]]] = None,
1053
+ homepage_url: Optional[pulumi.Input[_builtins.str]] = None,
1054
+ login_url: Optional[pulumi.Input[_builtins.str]] = None,
1055
+ logout_url: Optional[pulumi.Input[_builtins.str]] = None,
1056
+ notes: Optional[pulumi.Input[_builtins.str]] = None,
1057
+ notification_email_addresses: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1058
+ oauth2_permission_scope_ids: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
1059
+ oauth2_permission_scopes: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ServicePrincipalOauth2PermissionScopeArgs', 'ServicePrincipalOauth2PermissionScopeArgsDict']]]]] = None,
1060
+ object_id: Optional[pulumi.Input[_builtins.str]] = None,
1061
+ owners: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1062
+ preferred_single_sign_on_mode: Optional[pulumi.Input[_builtins.str]] = None,
1063
+ redirect_uris: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1064
+ saml_metadata_url: Optional[pulumi.Input[_builtins.str]] = None,
1065
+ saml_single_sign_on: Optional[pulumi.Input[Union['ServicePrincipalSamlSingleSignOnArgs', 'ServicePrincipalSamlSingleSignOnArgsDict']]] = None,
1066
+ service_principal_names: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1067
+ sign_in_audience: Optional[pulumi.Input[_builtins.str]] = None,
1068
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1069
+ type: Optional[pulumi.Input[_builtins.str]] = None,
1070
+ use_existing: Optional[pulumi.Input[_builtins.bool]] = None) -> 'ServicePrincipal':
1117
1071
  """
1118
1072
  Get an existing ServicePrincipal resource's state with the given name, id, and optional extra
1119
1073
  properties used to qualify the lookup.
@@ -1121,40 +1075,39 @@ class ServicePrincipal(pulumi.CustomResource):
1121
1075
  :param str resource_name: The unique name of the resulting resource.
1122
1076
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
1123
1077
  :param pulumi.ResourceOptions opts: Options for the resource.
1124
- :param pulumi.Input[bool] account_enabled: Whether or not the service principal account is enabled. Defaults to `true`.
1125
- :param pulumi.Input[Sequence[pulumi.Input[str]]] alternative_names: A set of alternative names, used to retrieve service principals by subscription, identify resource group and full resource ids for managed identities.
1126
- :param pulumi.Input[bool] app_role_assignment_required: Whether this service principal requires an app role assignment to a user or group before Azure AD will issue a user or access token to the application. Defaults to `false`.
1127
- :param pulumi.Input[Mapping[str, pulumi.Input[str]]] app_role_ids: A mapping of app role values to app role IDs, as published by the associated application, intended to be useful when referencing app roles in other resources in your configuration.
1128
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ServicePrincipalAppRoleArgs']]]] app_roles: A list of app roles published by the associated application, as documented below. For more information [official documentation](https://docs.microsoft.com/en-us/azure/architecture/multitenant-identity/app-roles).
1129
- :param pulumi.Input[str] application_id: The application ID (client ID) of the application for which to create a service principal
1130
- :param pulumi.Input[str] application_tenant_id: The tenant ID where the associated application is registered.
1131
- :param pulumi.Input[str] client_id: The client ID of the application for which to create a service principal.
1132
- :param pulumi.Input[str] description: A description of the service principal provided for internal end-users.
1133
- :param pulumi.Input[str] display_name: Display name for the app role that appears during app role assignment and in consent experiences.
1134
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ServicePrincipalFeatureTagArgs']]]] feature_tags: A `feature_tags` block as described below. Cannot be used together with the `tags` property.
1078
+ :param pulumi.Input[_builtins.bool] account_enabled: Whether or not the service principal account is enabled. Defaults to `true`.
1079
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] alternative_names: A set of alternative names, used to retrieve service principals by subscription, identify resource group and full resource ids for managed identities.
1080
+ :param pulumi.Input[_builtins.bool] app_role_assignment_required: Whether this service principal requires an app role assignment to a user or group before Azure AD will issue a user or access token to the application. Defaults to `false`.
1081
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] app_role_ids: A mapping of app role values to app role IDs, as published by the associated application, intended to be useful when referencing app roles in other resources in your configuration.
1082
+ :param pulumi.Input[Sequence[pulumi.Input[Union['ServicePrincipalAppRoleArgs', 'ServicePrincipalAppRoleArgsDict']]]] app_roles: A list of app roles published by the associated application, as documented below. For more information [official documentation](https://docs.microsoft.com/en-us/azure/architecture/multitenant-identity/app-roles).
1083
+ :param pulumi.Input[_builtins.str] application_tenant_id: The tenant ID where the associated application is registered.
1084
+ :param pulumi.Input[_builtins.str] client_id: The client ID of the application for which to create a service principal.
1085
+ :param pulumi.Input[_builtins.str] description: A description of the service principal provided for internal end-users.
1086
+ :param pulumi.Input[_builtins.str] display_name: Display name for the app role that appears during app role assignment and in consent experiences.
1087
+ :param pulumi.Input[Sequence[pulumi.Input[Union['ServicePrincipalFeatureTagArgs', 'ServicePrincipalFeatureTagArgsDict']]]] feature_tags: A `feature_tags` block as described below. Cannot be used together with the `tags` property.
1135
1088
 
1136
1089
  > **Features and Tags** Features are configured for a service principal using tags, and are provided as a shortcut to set the corresponding magic tag value for each feature. You cannot configure `feature_tags` and `tags` for a service principal at the same time, so if you need to assign additional custom tags it's recommended to use the `tags` property instead. Any tags configured for the linked application will propagate to this service principal.
1137
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ServicePrincipalFeatureArgs']]]] features: Block of features to configure for this service principal using tags
1138
- :param pulumi.Input[str] homepage_url: Home page or landing page of the associated application.
1139
- :param pulumi.Input[str] login_url: The URL where the service provider redirects the user to Azure AD to authenticate. Azure AD uses the URL to launch the application from Microsoft 365 or the Azure AD My Apps. When blank, Azure AD performs IdP-initiated sign-on for applications configured with SAML-based single sign-on.
1140
- :param pulumi.Input[str] logout_url: The URL that will be used by Microsoft's authorization service to log out an user using OpenId Connect front-channel, back-channel or SAML logout protocols, taken from the associated application.
1141
- :param pulumi.Input[str] notes: A free text field to capture information about the service principal, typically used for operational purposes.
1142
- :param pulumi.Input[Sequence[pulumi.Input[str]]] notification_email_addresses: A set of email addresses where Azure AD sends a notification when the active certificate is near the expiration date. This is only for the certificates used to sign the SAML token issued for Azure AD Gallery applications.
1143
- :param pulumi.Input[Mapping[str, pulumi.Input[str]]] oauth2_permission_scope_ids: A mapping of OAuth2.0 permission scope values to scope IDs, as exposed by the associated application, intended to be useful when referencing permission scopes in other resources in your configuration.
1144
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ServicePrincipalOauth2PermissionScopeArgs']]]] oauth2_permission_scopes: A list of OAuth 2.0 delegated permission scopes exposed by the associated application, as documented below.
1145
- :param pulumi.Input[str] object_id: The object ID of the service principal.
1146
- :param pulumi.Input[Sequence[pulumi.Input[str]]] owners: A list of object IDs of principals that will be granted ownership of the service principal
1147
- :param pulumi.Input[str] preferred_single_sign_on_mode: The single sign-on mode configured for this application. Azure AD uses the preferred single sign-on mode to launch the application from Microsoft 365 or the Azure AD My Apps. Supported values are `oidc`, `password`, `saml` or `notSupported`. Omit this property or specify a blank string to unset.
1148
- :param pulumi.Input[Sequence[pulumi.Input[str]]] redirect_uris: A list of URLs where user tokens are sent for sign-in with the associated application, or the redirect URIs where OAuth 2.0 authorization codes and access tokens are sent for the associated application.
1149
- :param pulumi.Input[str] saml_metadata_url: The URL where the service exposes SAML metadata for federation.
1150
- :param pulumi.Input[pulumi.InputType['ServicePrincipalSamlSingleSignOnArgs']] saml_single_sign_on: A `saml_single_sign_on` block as documented below.
1151
- :param pulumi.Input[Sequence[pulumi.Input[str]]] service_principal_names: A list of identifier URI(s), copied over from the associated application.
1152
- :param pulumi.Input[str] sign_in_audience: The Microsoft account types that are supported for the associated application. Possible values include `AzureADMyOrg`, `AzureADMultipleOrgs`, `AzureADandPersonalMicrosoftAccount` or `PersonalMicrosoftAccount`.
1153
- :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A set of tags to apply to the service principal for configuring specific behaviours of the service principal. Note that these are not provided for use by practitioners. Cannot be used together with the `feature_tags` block.
1090
+ :param pulumi.Input[Sequence[pulumi.Input[Union['ServicePrincipalFeatureArgs', 'ServicePrincipalFeatureArgsDict']]]] features: Block of features to configure for this service principal using tags
1091
+ :param pulumi.Input[_builtins.str] homepage_url: Home page or landing page of the associated application.
1092
+ :param pulumi.Input[_builtins.str] login_url: The URL where the service provider redirects the user to Azure AD to authenticate. Azure AD uses the URL to launch the application from Microsoft 365 or the Azure AD My Apps. When blank, Azure AD performs IdP-initiated sign-on for applications configured with SAML-based single sign-on.
1093
+ :param pulumi.Input[_builtins.str] logout_url: The URL that will be used by Microsoft's authorization service to log out an user using OpenId Connect front-channel, back-channel or SAML logout protocols, taken from the associated application.
1094
+ :param pulumi.Input[_builtins.str] notes: A free text field to capture information about the service principal, typically used for operational purposes.
1095
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] notification_email_addresses: A set of email addresses where Azure AD sends a notification when the active certificate is near the expiration date. This is only for the certificates used to sign the SAML token issued for Azure AD Gallery applications.
1096
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] oauth2_permission_scope_ids: A mapping of OAuth2.0 permission scope values to scope IDs, as exposed by the associated application, intended to be useful when referencing permission scopes in other resources in your configuration.
1097
+ :param pulumi.Input[Sequence[pulumi.Input[Union['ServicePrincipalOauth2PermissionScopeArgs', 'ServicePrincipalOauth2PermissionScopeArgsDict']]]] oauth2_permission_scopes: A list of OAuth 2.0 delegated permission scopes exposed by the associated application, as documented below.
1098
+ :param pulumi.Input[_builtins.str] object_id: The object ID of the service principal.
1099
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] owners: A list of object IDs of principals that will be granted ownership of the service principal
1100
+ :param pulumi.Input[_builtins.str] preferred_single_sign_on_mode: The single sign-on mode configured for this application. Azure AD uses the preferred single sign-on mode to launch the application from Microsoft 365 or the Azure AD My Apps. Supported values are `oidc`, `password`, `saml` or `notSupported`. Omit this property or specify a blank string to unset.
1101
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] redirect_uris: A list of URLs where user tokens are sent for sign-in with the associated application, or the redirect URIs where OAuth 2.0 authorization codes and access tokens are sent for the associated application.
1102
+ :param pulumi.Input[_builtins.str] saml_metadata_url: The URL where the service exposes SAML metadata for federation.
1103
+ :param pulumi.Input[Union['ServicePrincipalSamlSingleSignOnArgs', 'ServicePrincipalSamlSingleSignOnArgsDict']] saml_single_sign_on: A `saml_single_sign_on` block as documented below.
1104
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] service_principal_names: A list of identifier URI(s), copied over from the associated application.
1105
+ :param pulumi.Input[_builtins.str] sign_in_audience: The Microsoft account types that are supported for the associated application. Possible values include `AzureADMyOrg`, `AzureADMultipleOrgs`, `AzureADandPersonalMicrosoftAccount` or `PersonalMicrosoftAccount`.
1106
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] tags: A set of tags to apply to the service principal for configuring specific behaviours of the service principal. Note that these are not provided for use by practitioners. Cannot be used together with the `feature_tags` block.
1154
1107
 
1155
1108
  > **Tags and Features** Azure Active Directory uses special tag values to configure the behavior of service principals. These can be specified using either the `tags` property or with the `feature_tags` block. If you need to set any custom tag values not supported by the `feature_tags` block, it's recommended to use the `tags` property. Tag values set for the linked application will also propagate to this service principal.
1156
- :param pulumi.Input[str] type: Whether this delegated permission should be considered safe for non-admin users to consent to on behalf of themselves, or whether an administrator should be required for consent to the permissions. Possible values are `User` or `Admin`.
1157
- :param pulumi.Input[bool] use_existing: When true, the resource will return an existing service principal instead of failing with an error
1109
+ :param pulumi.Input[_builtins.str] type: Whether this delegated permission should be considered safe for non-admin users to consent to on behalf of themselves, or whether an administrator should be required for consent to the permissions. Possible values are `User` or `Admin`.
1110
+ :param pulumi.Input[_builtins.bool] use_existing: When true, the resource will return an existing service principal instead of failing with an error
1158
1111
  """
1159
1112
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
1160
1113
 
@@ -1165,7 +1118,6 @@ class ServicePrincipal(pulumi.CustomResource):
1165
1118
  __props__.__dict__["app_role_assignment_required"] = app_role_assignment_required
1166
1119
  __props__.__dict__["app_role_ids"] = app_role_ids
1167
1120
  __props__.__dict__["app_roles"] = app_roles
1168
- __props__.__dict__["application_id"] = application_id
1169
1121
  __props__.__dict__["application_tenant_id"] = application_tenant_id
1170
1122
  __props__.__dict__["client_id"] = client_id
1171
1123
  __props__.__dict__["description"] = description
@@ -1192,39 +1144,39 @@ class ServicePrincipal(pulumi.CustomResource):
1192
1144
  __props__.__dict__["use_existing"] = use_existing
1193
1145
  return ServicePrincipal(resource_name, opts=opts, __props__=__props__)
1194
1146
 
1195
- @property
1147
+ @_builtins.property
1196
1148
  @pulumi.getter(name="accountEnabled")
1197
- def account_enabled(self) -> pulumi.Output[Optional[bool]]:
1149
+ def account_enabled(self) -> pulumi.Output[Optional[_builtins.bool]]:
1198
1150
  """
1199
1151
  Whether or not the service principal account is enabled. Defaults to `true`.
1200
1152
  """
1201
1153
  return pulumi.get(self, "account_enabled")
1202
1154
 
1203
- @property
1155
+ @_builtins.property
1204
1156
  @pulumi.getter(name="alternativeNames")
1205
- def alternative_names(self) -> pulumi.Output[Optional[Sequence[str]]]:
1157
+ def alternative_names(self) -> pulumi.Output[Optional[Sequence[_builtins.str]]]:
1206
1158
  """
1207
1159
  A set of alternative names, used to retrieve service principals by subscription, identify resource group and full resource ids for managed identities.
1208
1160
  """
1209
1161
  return pulumi.get(self, "alternative_names")
1210
1162
 
1211
- @property
1163
+ @_builtins.property
1212
1164
  @pulumi.getter(name="appRoleAssignmentRequired")
1213
- def app_role_assignment_required(self) -> pulumi.Output[Optional[bool]]:
1165
+ def app_role_assignment_required(self) -> pulumi.Output[Optional[_builtins.bool]]:
1214
1166
  """
1215
1167
  Whether this service principal requires an app role assignment to a user or group before Azure AD will issue a user or access token to the application. Defaults to `false`.
1216
1168
  """
1217
1169
  return pulumi.get(self, "app_role_assignment_required")
1218
1170
 
1219
- @property
1171
+ @_builtins.property
1220
1172
  @pulumi.getter(name="appRoleIds")
1221
- def app_role_ids(self) -> pulumi.Output[Mapping[str, str]]:
1173
+ def app_role_ids(self) -> pulumi.Output[Mapping[str, _builtins.str]]:
1222
1174
  """
1223
1175
  A mapping of app role values to app role IDs, as published by the associated application, intended to be useful when referencing app roles in other resources in your configuration.
1224
1176
  """
1225
1177
  return pulumi.get(self, "app_role_ids")
1226
1178
 
1227
- @property
1179
+ @_builtins.property
1228
1180
  @pulumi.getter(name="appRoles")
1229
1181
  def app_roles(self) -> pulumi.Output[Sequence['outputs.ServicePrincipalAppRole']]:
1230
1182
  """
@@ -1232,50 +1184,39 @@ class ServicePrincipal(pulumi.CustomResource):
1232
1184
  """
1233
1185
  return pulumi.get(self, "app_roles")
1234
1186
 
1235
- @property
1236
- @pulumi.getter(name="applicationId")
1237
- def application_id(self) -> pulumi.Output[str]:
1238
- """
1239
- The application ID (client ID) of the application for which to create a service principal
1240
- """
1241
- warnings.warn("""The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider""", DeprecationWarning)
1242
- pulumi.log.warn("""application_id is deprecated: The `application_id` property has been replaced with the `client_id` property and will be removed in version 3.0 of the AzureAD provider""")
1243
-
1244
- return pulumi.get(self, "application_id")
1245
-
1246
- @property
1187
+ @_builtins.property
1247
1188
  @pulumi.getter(name="applicationTenantId")
1248
- def application_tenant_id(self) -> pulumi.Output[str]:
1189
+ def application_tenant_id(self) -> pulumi.Output[_builtins.str]:
1249
1190
  """
1250
1191
  The tenant ID where the associated application is registered.
1251
1192
  """
1252
1193
  return pulumi.get(self, "application_tenant_id")
1253
1194
 
1254
- @property
1195
+ @_builtins.property
1255
1196
  @pulumi.getter(name="clientId")
1256
- def client_id(self) -> pulumi.Output[str]:
1197
+ def client_id(self) -> pulumi.Output[_builtins.str]:
1257
1198
  """
1258
1199
  The client ID of the application for which to create a service principal.
1259
1200
  """
1260
1201
  return pulumi.get(self, "client_id")
1261
1202
 
1262
- @property
1203
+ @_builtins.property
1263
1204
  @pulumi.getter
1264
- def description(self) -> pulumi.Output[Optional[str]]:
1205
+ def description(self) -> pulumi.Output[Optional[_builtins.str]]:
1265
1206
  """
1266
1207
  A description of the service principal provided for internal end-users.
1267
1208
  """
1268
1209
  return pulumi.get(self, "description")
1269
1210
 
1270
- @property
1211
+ @_builtins.property
1271
1212
  @pulumi.getter(name="displayName")
1272
- def display_name(self) -> pulumi.Output[str]:
1213
+ def display_name(self) -> pulumi.Output[_builtins.str]:
1273
1214
  """
1274
1215
  Display name for the app role that appears during app role assignment and in consent experiences.
1275
1216
  """
1276
1217
  return pulumi.get(self, "display_name")
1277
1218
 
1278
- @property
1219
+ @_builtins.property
1279
1220
  @pulumi.getter(name="featureTags")
1280
1221
  def feature_tags(self) -> pulumi.Output[Sequence['outputs.ServicePrincipalFeatureTag']]:
1281
1222
  """
@@ -1285,66 +1226,64 @@ class ServicePrincipal(pulumi.CustomResource):
1285
1226
  """
1286
1227
  return pulumi.get(self, "feature_tags")
1287
1228
 
1288
- @property
1229
+ @_builtins.property
1289
1230
  @pulumi.getter
1231
+ @_utilities.deprecated("""This block has been renamed to `feature_tags` and will be removed in version 3.0 of the provider""")
1290
1232
  def features(self) -> pulumi.Output[Sequence['outputs.ServicePrincipalFeature']]:
1291
1233
  """
1292
1234
  Block of features to configure for this service principal using tags
1293
1235
  """
1294
- warnings.warn("""This block has been renamed to `feature_tags` and will be removed in version 3.0 of the provider""", DeprecationWarning)
1295
- pulumi.log.warn("""features is deprecated: This block has been renamed to `feature_tags` and will be removed in version 3.0 of the provider""")
1296
-
1297
1236
  return pulumi.get(self, "features")
1298
1237
 
1299
- @property
1238
+ @_builtins.property
1300
1239
  @pulumi.getter(name="homepageUrl")
1301
- def homepage_url(self) -> pulumi.Output[str]:
1240
+ def homepage_url(self) -> pulumi.Output[_builtins.str]:
1302
1241
  """
1303
1242
  Home page or landing page of the associated application.
1304
1243
  """
1305
1244
  return pulumi.get(self, "homepage_url")
1306
1245
 
1307
- @property
1246
+ @_builtins.property
1308
1247
  @pulumi.getter(name="loginUrl")
1309
- def login_url(self) -> pulumi.Output[Optional[str]]:
1248
+ def login_url(self) -> pulumi.Output[Optional[_builtins.str]]:
1310
1249
  """
1311
1250
  The URL where the service provider redirects the user to Azure AD to authenticate. Azure AD uses the URL to launch the application from Microsoft 365 or the Azure AD My Apps. When blank, Azure AD performs IdP-initiated sign-on for applications configured with SAML-based single sign-on.
1312
1251
  """
1313
1252
  return pulumi.get(self, "login_url")
1314
1253
 
1315
- @property
1254
+ @_builtins.property
1316
1255
  @pulumi.getter(name="logoutUrl")
1317
- def logout_url(self) -> pulumi.Output[str]:
1256
+ def logout_url(self) -> pulumi.Output[_builtins.str]:
1318
1257
  """
1319
1258
  The URL that will be used by Microsoft's authorization service to log out an user using OpenId Connect front-channel, back-channel or SAML logout protocols, taken from the associated application.
1320
1259
  """
1321
1260
  return pulumi.get(self, "logout_url")
1322
1261
 
1323
- @property
1262
+ @_builtins.property
1324
1263
  @pulumi.getter
1325
- def notes(self) -> pulumi.Output[Optional[str]]:
1264
+ def notes(self) -> pulumi.Output[Optional[_builtins.str]]:
1326
1265
  """
1327
1266
  A free text field to capture information about the service principal, typically used for operational purposes.
1328
1267
  """
1329
1268
  return pulumi.get(self, "notes")
1330
1269
 
1331
- @property
1270
+ @_builtins.property
1332
1271
  @pulumi.getter(name="notificationEmailAddresses")
1333
- def notification_email_addresses(self) -> pulumi.Output[Optional[Sequence[str]]]:
1272
+ def notification_email_addresses(self) -> pulumi.Output[Optional[Sequence[_builtins.str]]]:
1334
1273
  """
1335
1274
  A set of email addresses where Azure AD sends a notification when the active certificate is near the expiration date. This is only for the certificates used to sign the SAML token issued for Azure AD Gallery applications.
1336
1275
  """
1337
1276
  return pulumi.get(self, "notification_email_addresses")
1338
1277
 
1339
- @property
1278
+ @_builtins.property
1340
1279
  @pulumi.getter(name="oauth2PermissionScopeIds")
1341
- def oauth2_permission_scope_ids(self) -> pulumi.Output[Mapping[str, str]]:
1280
+ def oauth2_permission_scope_ids(self) -> pulumi.Output[Mapping[str, _builtins.str]]:
1342
1281
  """
1343
1282
  A mapping of OAuth2.0 permission scope values to scope IDs, as exposed by the associated application, intended to be useful when referencing permission scopes in other resources in your configuration.
1344
1283
  """
1345
1284
  return pulumi.get(self, "oauth2_permission_scope_ids")
1346
1285
 
1347
- @property
1286
+ @_builtins.property
1348
1287
  @pulumi.getter(name="oauth2PermissionScopes")
1349
1288
  def oauth2_permission_scopes(self) -> pulumi.Output[Sequence['outputs.ServicePrincipalOauth2PermissionScope']]:
1350
1289
  """
@@ -1352,47 +1291,47 @@ class ServicePrincipal(pulumi.CustomResource):
1352
1291
  """
1353
1292
  return pulumi.get(self, "oauth2_permission_scopes")
1354
1293
 
1355
- @property
1294
+ @_builtins.property
1356
1295
  @pulumi.getter(name="objectId")
1357
- def object_id(self) -> pulumi.Output[str]:
1296
+ def object_id(self) -> pulumi.Output[_builtins.str]:
1358
1297
  """
1359
1298
  The object ID of the service principal.
1360
1299
  """
1361
1300
  return pulumi.get(self, "object_id")
1362
1301
 
1363
- @property
1302
+ @_builtins.property
1364
1303
  @pulumi.getter
1365
- def owners(self) -> pulumi.Output[Optional[Sequence[str]]]:
1304
+ def owners(self) -> pulumi.Output[Optional[Sequence[_builtins.str]]]:
1366
1305
  """
1367
1306
  A list of object IDs of principals that will be granted ownership of the service principal
1368
1307
  """
1369
1308
  return pulumi.get(self, "owners")
1370
1309
 
1371
- @property
1310
+ @_builtins.property
1372
1311
  @pulumi.getter(name="preferredSingleSignOnMode")
1373
- def preferred_single_sign_on_mode(self) -> pulumi.Output[Optional[str]]:
1312
+ def preferred_single_sign_on_mode(self) -> pulumi.Output[Optional[_builtins.str]]:
1374
1313
  """
1375
1314
  The single sign-on mode configured for this application. Azure AD uses the preferred single sign-on mode to launch the application from Microsoft 365 or the Azure AD My Apps. Supported values are `oidc`, `password`, `saml` or `notSupported`. Omit this property or specify a blank string to unset.
1376
1315
  """
1377
1316
  return pulumi.get(self, "preferred_single_sign_on_mode")
1378
1317
 
1379
- @property
1318
+ @_builtins.property
1380
1319
  @pulumi.getter(name="redirectUris")
1381
- def redirect_uris(self) -> pulumi.Output[Sequence[str]]:
1320
+ def redirect_uris(self) -> pulumi.Output[Sequence[_builtins.str]]:
1382
1321
  """
1383
1322
  A list of URLs where user tokens are sent for sign-in with the associated application, or the redirect URIs where OAuth 2.0 authorization codes and access tokens are sent for the associated application.
1384
1323
  """
1385
1324
  return pulumi.get(self, "redirect_uris")
1386
1325
 
1387
- @property
1326
+ @_builtins.property
1388
1327
  @pulumi.getter(name="samlMetadataUrl")
1389
- def saml_metadata_url(self) -> pulumi.Output[str]:
1328
+ def saml_metadata_url(self) -> pulumi.Output[_builtins.str]:
1390
1329
  """
1391
1330
  The URL where the service exposes SAML metadata for federation.
1392
1331
  """
1393
1332
  return pulumi.get(self, "saml_metadata_url")
1394
1333
 
1395
- @property
1334
+ @_builtins.property
1396
1335
  @pulumi.getter(name="samlSingleSignOn")
1397
1336
  def saml_single_sign_on(self) -> pulumi.Output[Optional['outputs.ServicePrincipalSamlSingleSignOn']]:
1398
1337
  """
@@ -1400,25 +1339,25 @@ class ServicePrincipal(pulumi.CustomResource):
1400
1339
  """
1401
1340
  return pulumi.get(self, "saml_single_sign_on")
1402
1341
 
1403
- @property
1342
+ @_builtins.property
1404
1343
  @pulumi.getter(name="servicePrincipalNames")
1405
- def service_principal_names(self) -> pulumi.Output[Sequence[str]]:
1344
+ def service_principal_names(self) -> pulumi.Output[Sequence[_builtins.str]]:
1406
1345
  """
1407
1346
  A list of identifier URI(s), copied over from the associated application.
1408
1347
  """
1409
1348
  return pulumi.get(self, "service_principal_names")
1410
1349
 
1411
- @property
1350
+ @_builtins.property
1412
1351
  @pulumi.getter(name="signInAudience")
1413
- def sign_in_audience(self) -> pulumi.Output[str]:
1352
+ def sign_in_audience(self) -> pulumi.Output[_builtins.str]:
1414
1353
  """
1415
1354
  The Microsoft account types that are supported for the associated application. Possible values include `AzureADMyOrg`, `AzureADMultipleOrgs`, `AzureADandPersonalMicrosoftAccount` or `PersonalMicrosoftAccount`.
1416
1355
  """
1417
1356
  return pulumi.get(self, "sign_in_audience")
1418
1357
 
1419
- @property
1358
+ @_builtins.property
1420
1359
  @pulumi.getter
1421
- def tags(self) -> pulumi.Output[Sequence[str]]:
1360
+ def tags(self) -> pulumi.Output[Sequence[_builtins.str]]:
1422
1361
  """
1423
1362
  A set of tags to apply to the service principal for configuring specific behaviours of the service principal. Note that these are not provided for use by practitioners. Cannot be used together with the `feature_tags` block.
1424
1363
 
@@ -1426,17 +1365,17 @@ class ServicePrincipal(pulumi.CustomResource):
1426
1365
  """
1427
1366
  return pulumi.get(self, "tags")
1428
1367
 
1429
- @property
1368
+ @_builtins.property
1430
1369
  @pulumi.getter
1431
- def type(self) -> pulumi.Output[str]:
1370
+ def type(self) -> pulumi.Output[_builtins.str]:
1432
1371
  """
1433
1372
  Whether this delegated permission should be considered safe for non-admin users to consent to on behalf of themselves, or whether an administrator should be required for consent to the permissions. Possible values are `User` or `Admin`.
1434
1373
  """
1435
1374
  return pulumi.get(self, "type")
1436
1375
 
1437
- @property
1376
+ @_builtins.property
1438
1377
  @pulumi.getter(name="useExisting")
1439
- def use_existing(self) -> pulumi.Output[Optional[bool]]:
1378
+ def use_existing(self) -> pulumi.Output[Optional[_builtins.bool]]:
1440
1379
  """
1441
1380
  When true, the resource will return an existing service principal instead of failing with an error
1442
1381
  """