pulumi-azure-native 2.87.0a1739181549__py3-none-any.whl → 2.87.0a1739200739__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-azure-native might be problematic. Click here for more details.

Files changed (36) hide show
  1. pulumi_azure_native/__init__.py +5 -0
  2. pulumi_azure_native/authorization/__init__.py +2 -0
  3. pulumi_azure_native/authorization/_enums.py +88 -0
  4. pulumi_azure_native/authorization/_inputs.py +1431 -43
  5. pulumi_azure_native/authorization/get_role_management_policy.py +247 -0
  6. pulumi_azure_native/authorization/outputs.py +312 -0
  7. pulumi_azure_native/authorization/role_management_policy.py +332 -0
  8. pulumi_azure_native/authorization/v20201001/__init__.py +4 -0
  9. pulumi_azure_native/authorization/v20201001/_enums.py +78 -0
  10. pulumi_azure_native/authorization/v20201001/_inputs.py +1134 -0
  11. pulumi_azure_native/authorization/v20201001/get_role_management_policy.py +241 -0
  12. pulumi_azure_native/authorization/v20201001/outputs.py +89 -0
  13. pulumi_azure_native/authorization/v20201001/role_management_policy.py +326 -0
  14. pulumi_azure_native/authorization/v20201001preview/__init__.py +4 -0
  15. pulumi_azure_native/authorization/v20201001preview/_enums.py +78 -0
  16. pulumi_azure_native/authorization/v20201001preview/_inputs.py +1134 -0
  17. pulumi_azure_native/authorization/v20201001preview/get_role_management_policy.py +241 -0
  18. pulumi_azure_native/authorization/v20201001preview/outputs.py +959 -0
  19. pulumi_azure_native/authorization/v20201001preview/role_management_policy.py +326 -0
  20. pulumi_azure_native/authorization/v20240201preview/__init__.py +4 -0
  21. pulumi_azure_native/authorization/v20240201preview/_enums.py +96 -0
  22. pulumi_azure_native/authorization/v20240201preview/_inputs.py +1390 -0
  23. pulumi_azure_native/authorization/v20240201preview/get_role_management_policy.py +241 -0
  24. pulumi_azure_native/authorization/v20240201preview/outputs.py +89 -0
  25. pulumi_azure_native/authorization/v20240201preview/role_management_policy.py +326 -0
  26. pulumi_azure_native/authorization/v20240901preview/__init__.py +4 -0
  27. pulumi_azure_native/authorization/v20240901preview/_enums.py +96 -0
  28. pulumi_azure_native/authorization/v20240901preview/_inputs.py +1410 -0
  29. pulumi_azure_native/authorization/v20240901preview/get_role_management_policy.py +241 -0
  30. pulumi_azure_native/authorization/v20240901preview/outputs.py +89 -0
  31. pulumi_azure_native/authorization/v20240901preview/role_management_policy.py +326 -0
  32. pulumi_azure_native/pulumi-plugin.json +1 -1
  33. {pulumi_azure_native-2.87.0a1739181549.dist-info → pulumi_azure_native-2.87.0a1739200739.dist-info}/METADATA +1 -1
  34. {pulumi_azure_native-2.87.0a1739181549.dist-info → pulumi_azure_native-2.87.0a1739200739.dist-info}/RECORD +36 -18
  35. {pulumi_azure_native-2.87.0a1739181549.dist-info → pulumi_azure_native-2.87.0a1739200739.dist-info}/WHEEL +0 -0
  36. {pulumi_azure_native-2.87.0a1739181549.dist-info → pulumi_azure_native-2.87.0a1739200739.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,241 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by pulumi-language-python. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import copy
6
+ import warnings
7
+ import sys
8
+ import pulumi
9
+ import pulumi.runtime
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
15
+ from ... import _utilities
16
+ from . import outputs
17
+
18
+ __all__ = [
19
+ 'GetRoleManagementPolicyResult',
20
+ 'AwaitableGetRoleManagementPolicyResult',
21
+ 'get_role_management_policy',
22
+ 'get_role_management_policy_output',
23
+ ]
24
+
25
+ @pulumi.output_type
26
+ class GetRoleManagementPolicyResult:
27
+ """
28
+ Role management policy
29
+ """
30
+ def __init__(__self__, description=None, display_name=None, effective_rules=None, id=None, is_organization_default=None, last_modified_by=None, last_modified_date_time=None, name=None, policy_properties=None, rules=None, scope=None, type=None):
31
+ if description and not isinstance(description, str):
32
+ raise TypeError("Expected argument 'description' to be a str")
33
+ pulumi.set(__self__, "description", description)
34
+ if display_name and not isinstance(display_name, str):
35
+ raise TypeError("Expected argument 'display_name' to be a str")
36
+ pulumi.set(__self__, "display_name", display_name)
37
+ if effective_rules and not isinstance(effective_rules, list):
38
+ raise TypeError("Expected argument 'effective_rules' to be a list")
39
+ pulumi.set(__self__, "effective_rules", effective_rules)
40
+ if id and not isinstance(id, str):
41
+ raise TypeError("Expected argument 'id' to be a str")
42
+ pulumi.set(__self__, "id", id)
43
+ if is_organization_default and not isinstance(is_organization_default, bool):
44
+ raise TypeError("Expected argument 'is_organization_default' to be a bool")
45
+ pulumi.set(__self__, "is_organization_default", is_organization_default)
46
+ if last_modified_by and not isinstance(last_modified_by, dict):
47
+ raise TypeError("Expected argument 'last_modified_by' to be a dict")
48
+ pulumi.set(__self__, "last_modified_by", last_modified_by)
49
+ if last_modified_date_time and not isinstance(last_modified_date_time, str):
50
+ raise TypeError("Expected argument 'last_modified_date_time' to be a str")
51
+ pulumi.set(__self__, "last_modified_date_time", last_modified_date_time)
52
+ if name and not isinstance(name, str):
53
+ raise TypeError("Expected argument 'name' to be a str")
54
+ pulumi.set(__self__, "name", name)
55
+ if policy_properties and not isinstance(policy_properties, dict):
56
+ raise TypeError("Expected argument 'policy_properties' to be a dict")
57
+ pulumi.set(__self__, "policy_properties", policy_properties)
58
+ if rules and not isinstance(rules, list):
59
+ raise TypeError("Expected argument 'rules' to be a list")
60
+ pulumi.set(__self__, "rules", rules)
61
+ if scope and not isinstance(scope, str):
62
+ raise TypeError("Expected argument 'scope' to be a str")
63
+ pulumi.set(__self__, "scope", scope)
64
+ if type and not isinstance(type, str):
65
+ raise TypeError("Expected argument 'type' to be a str")
66
+ pulumi.set(__self__, "type", type)
67
+
68
+ @property
69
+ @pulumi.getter
70
+ def description(self) -> Optional[str]:
71
+ """
72
+ The role management policy description.
73
+ """
74
+ return pulumi.get(self, "description")
75
+
76
+ @property
77
+ @pulumi.getter(name="displayName")
78
+ def display_name(self) -> Optional[str]:
79
+ """
80
+ The role management policy display name.
81
+ """
82
+ return pulumi.get(self, "display_name")
83
+
84
+ @property
85
+ @pulumi.getter(name="effectiveRules")
86
+ def effective_rules(self) -> Sequence[Any]:
87
+ """
88
+ The readonly computed rule applied to the policy.
89
+ """
90
+ return pulumi.get(self, "effective_rules")
91
+
92
+ @property
93
+ @pulumi.getter
94
+ def id(self) -> str:
95
+ """
96
+ The role management policy Id.
97
+ """
98
+ return pulumi.get(self, "id")
99
+
100
+ @property
101
+ @pulumi.getter(name="isOrganizationDefault")
102
+ def is_organization_default(self) -> Optional[bool]:
103
+ """
104
+ The role management policy is default policy.
105
+ """
106
+ return pulumi.get(self, "is_organization_default")
107
+
108
+ @property
109
+ @pulumi.getter(name="lastModifiedBy")
110
+ def last_modified_by(self) -> 'outputs.PrincipalResponse':
111
+ """
112
+ The name of the entity last modified it
113
+ """
114
+ return pulumi.get(self, "last_modified_by")
115
+
116
+ @property
117
+ @pulumi.getter(name="lastModifiedDateTime")
118
+ def last_modified_date_time(self) -> str:
119
+ """
120
+ The last modified date time.
121
+ """
122
+ return pulumi.get(self, "last_modified_date_time")
123
+
124
+ @property
125
+ @pulumi.getter
126
+ def name(self) -> str:
127
+ """
128
+ The role management policy name.
129
+ """
130
+ return pulumi.get(self, "name")
131
+
132
+ @property
133
+ @pulumi.getter(name="policyProperties")
134
+ def policy_properties(self) -> 'outputs.PolicyPropertiesResponse':
135
+ """
136
+ Additional properties of scope
137
+ """
138
+ return pulumi.get(self, "policy_properties")
139
+
140
+ @property
141
+ @pulumi.getter
142
+ def rules(self) -> Optional[Sequence[Any]]:
143
+ """
144
+ The rule applied to the policy.
145
+ """
146
+ return pulumi.get(self, "rules")
147
+
148
+ @property
149
+ @pulumi.getter
150
+ def scope(self) -> Optional[str]:
151
+ """
152
+ The role management policy scope.
153
+ """
154
+ return pulumi.get(self, "scope")
155
+
156
+ @property
157
+ @pulumi.getter
158
+ def type(self) -> str:
159
+ """
160
+ The role management policy type.
161
+ """
162
+ return pulumi.get(self, "type")
163
+
164
+
165
+ class AwaitableGetRoleManagementPolicyResult(GetRoleManagementPolicyResult):
166
+ # pylint: disable=using-constant-test
167
+ def __await__(self):
168
+ if False:
169
+ yield self
170
+ return GetRoleManagementPolicyResult(
171
+ description=self.description,
172
+ display_name=self.display_name,
173
+ effective_rules=self.effective_rules,
174
+ id=self.id,
175
+ is_organization_default=self.is_organization_default,
176
+ last_modified_by=self.last_modified_by,
177
+ last_modified_date_time=self.last_modified_date_time,
178
+ name=self.name,
179
+ policy_properties=self.policy_properties,
180
+ rules=self.rules,
181
+ scope=self.scope,
182
+ type=self.type)
183
+
184
+
185
+ def get_role_management_policy(role_management_policy_name: Optional[str] = None,
186
+ scope: Optional[str] = None,
187
+ opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetRoleManagementPolicyResult:
188
+ """
189
+ Get the specified role management policy for a resource scope
190
+
191
+
192
+ :param str role_management_policy_name: The name (guid) of the role management policy to get.
193
+ :param str scope: The scope of the role management policy.
194
+ """
195
+ __args__ = dict()
196
+ __args__['roleManagementPolicyName'] = role_management_policy_name
197
+ __args__['scope'] = scope
198
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
199
+ __ret__ = pulumi.runtime.invoke('azure-native:authorization/v20240901preview:getRoleManagementPolicy', __args__, opts=opts, typ=GetRoleManagementPolicyResult).value
200
+
201
+ return AwaitableGetRoleManagementPolicyResult(
202
+ description=pulumi.get(__ret__, 'description'),
203
+ display_name=pulumi.get(__ret__, 'display_name'),
204
+ effective_rules=pulumi.get(__ret__, 'effective_rules'),
205
+ id=pulumi.get(__ret__, 'id'),
206
+ is_organization_default=pulumi.get(__ret__, 'is_organization_default'),
207
+ last_modified_by=pulumi.get(__ret__, 'last_modified_by'),
208
+ last_modified_date_time=pulumi.get(__ret__, 'last_modified_date_time'),
209
+ name=pulumi.get(__ret__, 'name'),
210
+ policy_properties=pulumi.get(__ret__, 'policy_properties'),
211
+ rules=pulumi.get(__ret__, 'rules'),
212
+ scope=pulumi.get(__ret__, 'scope'),
213
+ type=pulumi.get(__ret__, 'type'))
214
+ def get_role_management_policy_output(role_management_policy_name: Optional[pulumi.Input[str]] = None,
215
+ scope: Optional[pulumi.Input[str]] = None,
216
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetRoleManagementPolicyResult]:
217
+ """
218
+ Get the specified role management policy for a resource scope
219
+
220
+
221
+ :param str role_management_policy_name: The name (guid) of the role management policy to get.
222
+ :param str scope: The scope of the role management policy.
223
+ """
224
+ __args__ = dict()
225
+ __args__['roleManagementPolicyName'] = role_management_policy_name
226
+ __args__['scope'] = scope
227
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
228
+ __ret__ = pulumi.runtime.invoke_output('azure-native:authorization/v20240901preview:getRoleManagementPolicy', __args__, opts=opts, typ=GetRoleManagementPolicyResult)
229
+ return __ret__.apply(lambda __response__: GetRoleManagementPolicyResult(
230
+ description=pulumi.get(__response__, 'description'),
231
+ display_name=pulumi.get(__response__, 'display_name'),
232
+ effective_rules=pulumi.get(__response__, 'effective_rules'),
233
+ id=pulumi.get(__response__, 'id'),
234
+ is_organization_default=pulumi.get(__response__, 'is_organization_default'),
235
+ last_modified_by=pulumi.get(__response__, 'last_modified_by'),
236
+ last_modified_date_time=pulumi.get(__response__, 'last_modified_date_time'),
237
+ name=pulumi.get(__response__, 'name'),
238
+ policy_properties=pulumi.get(__response__, 'policy_properties'),
239
+ rules=pulumi.get(__response__, 'rules'),
240
+ scope=pulumi.get(__response__, 'scope'),
241
+ type=pulumi.get(__response__, 'type')))
@@ -14,6 +14,7 @@ else:
14
14
  from typing_extensions import NotRequired, TypedDict, TypeAlias
15
15
  from ... import _utilities
16
16
  from . import outputs
17
+ from ._enums import *
17
18
 
18
19
  __all__ = [
19
20
  'ApprovalSettingsResponse',
@@ -23,6 +24,8 @@ __all__ = [
23
24
  'PolicyAssignmentPropertiesResponsePolicy',
24
25
  'PolicyAssignmentPropertiesResponseRoleDefinition',
25
26
  'PolicyAssignmentPropertiesResponseScope',
27
+ 'PolicyPropertiesResponse',
28
+ 'PolicyPropertiesResponseScope',
26
29
  'PrincipalResponse',
27
30
  'RoleManagementPolicyApprovalRuleResponse',
28
31
  'RoleManagementPolicyAuthenticationContextRuleResponse',
@@ -562,6 +565,92 @@ class PolicyAssignmentPropertiesResponseScope(dict):
562
565
  return pulumi.get(self, "type")
563
566
 
564
567
 
568
+ @pulumi.output_type
569
+ class PolicyPropertiesResponse(dict):
570
+ """
571
+ Expanded info of resource scope
572
+ """
573
+ def __init__(__self__, *,
574
+ scope: 'outputs.PolicyPropertiesResponseScope'):
575
+ """
576
+ Expanded info of resource scope
577
+ :param 'PolicyPropertiesResponseScope' scope: Details of the resource scope
578
+ """
579
+ pulumi.set(__self__, "scope", scope)
580
+
581
+ @property
582
+ @pulumi.getter
583
+ def scope(self) -> 'outputs.PolicyPropertiesResponseScope':
584
+ """
585
+ Details of the resource scope
586
+ """
587
+ return pulumi.get(self, "scope")
588
+
589
+
590
+ @pulumi.output_type
591
+ class PolicyPropertiesResponseScope(dict):
592
+ """
593
+ Details of the resource scope
594
+ """
595
+ @staticmethod
596
+ def __key_warning(key: str):
597
+ suggest = None
598
+ if key == "displayName":
599
+ suggest = "display_name"
600
+
601
+ if suggest:
602
+ pulumi.log.warn(f"Key '{key}' not found in PolicyPropertiesResponseScope. Access the value via the '{suggest}' property getter instead.")
603
+
604
+ def __getitem__(self, key: str) -> Any:
605
+ PolicyPropertiesResponseScope.__key_warning(key)
606
+ return super().__getitem__(key)
607
+
608
+ def get(self, key: str, default = None) -> Any:
609
+ PolicyPropertiesResponseScope.__key_warning(key)
610
+ return super().get(key, default)
611
+
612
+ def __init__(__self__, *,
613
+ display_name: Optional[str] = None,
614
+ id: Optional[str] = None,
615
+ type: Optional[str] = None):
616
+ """
617
+ Details of the resource scope
618
+ :param str display_name: Display name of the resource
619
+ :param str id: Scope id of the resource
620
+ :param str type: Type of the resource
621
+ """
622
+ if display_name is not None:
623
+ pulumi.set(__self__, "display_name", display_name)
624
+ if id is not None:
625
+ pulumi.set(__self__, "id", id)
626
+ if type is not None:
627
+ pulumi.set(__self__, "type", type)
628
+
629
+ @property
630
+ @pulumi.getter(name="displayName")
631
+ def display_name(self) -> Optional[str]:
632
+ """
633
+ Display name of the resource
634
+ """
635
+ return pulumi.get(self, "display_name")
636
+
637
+ @property
638
+ @pulumi.getter
639
+ def id(self) -> Optional[str]:
640
+ """
641
+ Scope id of the resource
642
+ """
643
+ return pulumi.get(self, "id")
644
+
645
+ @property
646
+ @pulumi.getter
647
+ def type(self) -> Optional[str]:
648
+ """
649
+ Type of the resource
650
+ """
651
+ return pulumi.get(self, "type")
652
+
653
+
565
654
  @pulumi.output_type
566
655
  class PrincipalResponse(dict):
567
656
  """
@@ -0,0 +1,326 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by pulumi-language-python. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import copy
6
+ import warnings
7
+ import sys
8
+ import pulumi
9
+ import pulumi.runtime
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
15
+ from ... import _utilities
16
+ from . import outputs
17
+ from ._enums import *
18
+ from ._inputs import *
19
+
20
+ __all__ = ['RoleManagementPolicyArgs', 'RoleManagementPolicy']
21
+
22
+ @pulumi.input_type
23
+ class RoleManagementPolicyArgs:
24
+ def __init__(__self__, *,
25
+ scope: pulumi.Input[str],
26
+ description: Optional[pulumi.Input[str]] = None,
27
+ display_name: Optional[pulumi.Input[str]] = None,
28
+ is_organization_default: Optional[pulumi.Input[bool]] = None,
29
+ role_management_policy_name: Optional[pulumi.Input[str]] = None,
30
+ rules: Optional[pulumi.Input[Sequence[pulumi.Input[Union['RoleManagementPolicyApprovalRuleArgs', 'RoleManagementPolicyAuthenticationContextRuleArgs', 'RoleManagementPolicyEnablementRuleArgs', 'RoleManagementPolicyExpirationRuleArgs', 'RoleManagementPolicyNotificationRuleArgs', 'RoleManagementPolicyPimOnlyModeRuleArgs']]]]] = None):
31
+ """
32
+ The set of arguments for constructing a RoleManagementPolicy resource.
33
+ :param pulumi.Input[str] scope: The role management policy scope.
34
+ :param pulumi.Input[str] description: The role management policy description.
35
+ :param pulumi.Input[str] display_name: The role management policy display name.
36
+ :param pulumi.Input[bool] is_organization_default: The role management policy is default policy.
37
+ :param pulumi.Input[str] role_management_policy_name: The name (guid) of the role management policy to upsert.
38
+ :param pulumi.Input[Sequence[pulumi.Input[Union['RoleManagementPolicyApprovalRuleArgs', 'RoleManagementPolicyAuthenticationContextRuleArgs', 'RoleManagementPolicyEnablementRuleArgs', 'RoleManagementPolicyExpirationRuleArgs', 'RoleManagementPolicyNotificationRuleArgs', 'RoleManagementPolicyPimOnlyModeRuleArgs']]]] rules: The rule applied to the policy.
39
+ """
40
+ pulumi.set(__self__, "scope", scope)
41
+ if description is not None:
42
+ pulumi.set(__self__, "description", description)
43
+ if display_name is not None:
44
+ pulumi.set(__self__, "display_name", display_name)
45
+ if is_organization_default is not None:
46
+ pulumi.set(__self__, "is_organization_default", is_organization_default)
47
+ if role_management_policy_name is not None:
48
+ pulumi.set(__self__, "role_management_policy_name", role_management_policy_name)
49
+ if rules is not None:
50
+ pulumi.set(__self__, "rules", rules)
51
+
52
+ @property
53
+ @pulumi.getter
54
+ def scope(self) -> pulumi.Input[str]:
55
+ """
56
+ The role management policy scope.
57
+ """
58
+ return pulumi.get(self, "scope")
59
+
60
+ @scope.setter
61
+ def scope(self, value: pulumi.Input[str]):
62
+ pulumi.set(self, "scope", value)
63
+
64
+ @property
65
+ @pulumi.getter
66
+ def description(self) -> Optional[pulumi.Input[str]]:
67
+ """
68
+ The role management policy description.
69
+ """
70
+ return pulumi.get(self, "description")
71
+
72
+ @description.setter
73
+ def description(self, value: Optional[pulumi.Input[str]]):
74
+ pulumi.set(self, "description", value)
75
+
76
+ @property
77
+ @pulumi.getter(name="displayName")
78
+ def display_name(self) -> Optional[pulumi.Input[str]]:
79
+ """
80
+ The role management policy display name.
81
+ """
82
+ return pulumi.get(self, "display_name")
83
+
84
+ @display_name.setter
85
+ def display_name(self, value: Optional[pulumi.Input[str]]):
86
+ pulumi.set(self, "display_name", value)
87
+
88
+ @property
89
+ @pulumi.getter(name="isOrganizationDefault")
90
+ def is_organization_default(self) -> Optional[pulumi.Input[bool]]:
91
+ """
92
+ The role management policy is default policy.
93
+ """
94
+ return pulumi.get(self, "is_organization_default")
95
+
96
+ @is_organization_default.setter
97
+ def is_organization_default(self, value: Optional[pulumi.Input[bool]]):
98
+ pulumi.set(self, "is_organization_default", value)
99
+
100
+ @property
101
+ @pulumi.getter(name="roleManagementPolicyName")
102
+ def role_management_policy_name(self) -> Optional[pulumi.Input[str]]:
103
+ """
104
+ The name (guid) of the role management policy to upsert.
105
+ """
106
+ return pulumi.get(self, "role_management_policy_name")
107
+
108
+ @role_management_policy_name.setter
109
+ def role_management_policy_name(self, value: Optional[pulumi.Input[str]]):
110
+ pulumi.set(self, "role_management_policy_name", value)
111
+
112
+ @property
113
+ @pulumi.getter
114
+ def rules(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[Union['RoleManagementPolicyApprovalRuleArgs', 'RoleManagementPolicyAuthenticationContextRuleArgs', 'RoleManagementPolicyEnablementRuleArgs', 'RoleManagementPolicyExpirationRuleArgs', 'RoleManagementPolicyNotificationRuleArgs', 'RoleManagementPolicyPimOnlyModeRuleArgs']]]]]:
115
+ """
116
+ The rule applied to the policy.
117
+ """
118
+ return pulumi.get(self, "rules")
119
+
120
+ @rules.setter
121
+ def rules(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[Union['RoleManagementPolicyApprovalRuleArgs', 'RoleManagementPolicyAuthenticationContextRuleArgs', 'RoleManagementPolicyEnablementRuleArgs', 'RoleManagementPolicyExpirationRuleArgs', 'RoleManagementPolicyNotificationRuleArgs', 'RoleManagementPolicyPimOnlyModeRuleArgs']]]]]):
122
+ pulumi.set(self, "rules", value)
123
+
124
+
125
+ class RoleManagementPolicy(pulumi.CustomResource):
126
+ @overload
127
+ def __init__(__self__,
128
+ resource_name: str,
129
+ opts: Optional[pulumi.ResourceOptions] = None,
130
+ description: Optional[pulumi.Input[str]] = None,
131
+ display_name: Optional[pulumi.Input[str]] = None,
132
+ is_organization_default: Optional[pulumi.Input[bool]] = None,
133
+ role_management_policy_name: Optional[pulumi.Input[str]] = None,
134
+ rules: Optional[pulumi.Input[Sequence[pulumi.Input[Union[Union['RoleManagementPolicyApprovalRuleArgs', 'RoleManagementPolicyApprovalRuleArgsDict'], Union['RoleManagementPolicyAuthenticationContextRuleArgs', 'RoleManagementPolicyAuthenticationContextRuleArgsDict'], Union['RoleManagementPolicyEnablementRuleArgs', 'RoleManagementPolicyEnablementRuleArgsDict'], Union['RoleManagementPolicyExpirationRuleArgs', 'RoleManagementPolicyExpirationRuleArgsDict'], Union['RoleManagementPolicyNotificationRuleArgs', 'RoleManagementPolicyNotificationRuleArgsDict'], Union['RoleManagementPolicyPimOnlyModeRuleArgs', 'RoleManagementPolicyPimOnlyModeRuleArgsDict']]]]]] = None,
135
+ scope: Optional[pulumi.Input[str]] = None,
136
+ __props__=None):
137
+ """
138
+ Role management policy
139
+
140
+ :param str resource_name: The name of the resource.
141
+ :param pulumi.ResourceOptions opts: Options for the resource.
142
+ :param pulumi.Input[str] description: The role management policy description.
143
+ :param pulumi.Input[str] display_name: The role management policy display name.
144
+ :param pulumi.Input[bool] is_organization_default: The role management policy is default policy.
145
+ :param pulumi.Input[str] role_management_policy_name: The name (guid) of the role management policy to upsert.
146
+ :param pulumi.Input[Sequence[pulumi.Input[Union[Union['RoleManagementPolicyApprovalRuleArgs', 'RoleManagementPolicyApprovalRuleArgsDict'], Union['RoleManagementPolicyAuthenticationContextRuleArgs', 'RoleManagementPolicyAuthenticationContextRuleArgsDict'], Union['RoleManagementPolicyEnablementRuleArgs', 'RoleManagementPolicyEnablementRuleArgsDict'], Union['RoleManagementPolicyExpirationRuleArgs', 'RoleManagementPolicyExpirationRuleArgsDict'], Union['RoleManagementPolicyNotificationRuleArgs', 'RoleManagementPolicyNotificationRuleArgsDict'], Union['RoleManagementPolicyPimOnlyModeRuleArgs', 'RoleManagementPolicyPimOnlyModeRuleArgsDict']]]]] rules: The rule applied to the policy.
147
+ :param pulumi.Input[str] scope: The role management policy scope.
148
+ """
149
+ ...
150
+ @overload
151
+ def __init__(__self__,
152
+ resource_name: str,
153
+ args: RoleManagementPolicyArgs,
154
+ opts: Optional[pulumi.ResourceOptions] = None):
155
+ """
156
+ Role management policy
157
+
158
+ :param str resource_name: The name of the resource.
159
+ :param RoleManagementPolicyArgs args: The arguments to use to populate this resource's properties.
160
+ :param pulumi.ResourceOptions opts: Options for the resource.
161
+ """
162
+ ...
163
+ def __init__(__self__, resource_name: str, *args, **kwargs):
164
+ resource_args, opts = _utilities.get_resource_args_opts(RoleManagementPolicyArgs, pulumi.ResourceOptions, *args, **kwargs)
165
+ if resource_args is not None:
166
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
167
+ else:
168
+ __self__._internal_init(resource_name, *args, **kwargs)
169
+
170
+ def _internal_init(__self__,
171
+ resource_name: str,
172
+ opts: Optional[pulumi.ResourceOptions] = None,
173
+ description: Optional[pulumi.Input[str]] = None,
174
+ display_name: Optional[pulumi.Input[str]] = None,
175
+ is_organization_default: Optional[pulumi.Input[bool]] = None,
176
+ role_management_policy_name: Optional[pulumi.Input[str]] = None,
177
+ rules: Optional[pulumi.Input[Sequence[pulumi.Input[Union[Union['RoleManagementPolicyApprovalRuleArgs', 'RoleManagementPolicyApprovalRuleArgsDict'], Union['RoleManagementPolicyAuthenticationContextRuleArgs', 'RoleManagementPolicyAuthenticationContextRuleArgsDict'], Union['RoleManagementPolicyEnablementRuleArgs', 'RoleManagementPolicyEnablementRuleArgsDict'], Union['RoleManagementPolicyExpirationRuleArgs', 'RoleManagementPolicyExpirationRuleArgsDict'], Union['RoleManagementPolicyNotificationRuleArgs', 'RoleManagementPolicyNotificationRuleArgsDict'], Union['RoleManagementPolicyPimOnlyModeRuleArgs', 'RoleManagementPolicyPimOnlyModeRuleArgsDict']]]]]] = None,
178
+ scope: Optional[pulumi.Input[str]] = None,
179
+ __props__=None):
180
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
181
+ if not isinstance(opts, pulumi.ResourceOptions):
182
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
183
+ if opts.id is None:
184
+ if __props__ is not None:
185
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
186
+ __props__ = RoleManagementPolicyArgs.__new__(RoleManagementPolicyArgs)
187
+
188
+ __props__.__dict__["description"] = description
189
+ __props__.__dict__["display_name"] = display_name
190
+ __props__.__dict__["is_organization_default"] = is_organization_default
191
+ __props__.__dict__["role_management_policy_name"] = role_management_policy_name
192
+ __props__.__dict__["rules"] = rules
193
+ if scope is None and not opts.urn:
194
+ raise TypeError("Missing required property 'scope'")
195
+ __props__.__dict__["scope"] = scope
196
+ __props__.__dict__["effective_rules"] = None
197
+ __props__.__dict__["last_modified_by"] = None
198
+ __props__.__dict__["last_modified_date_time"] = None
199
+ __props__.__dict__["name"] = None
200
+ __props__.__dict__["policy_properties"] = None
201
+ __props__.__dict__["type"] = None
202
+ alias_opts = pulumi.ResourceOptions(aliases=[pulumi.Alias(type_="azure-native:authorization/v20201001:RoleManagementPolicy"), pulumi.Alias(type_="azure-native:authorization/v20201001preview:RoleManagementPolicy"), pulumi.Alias(type_="azure-native:authorization/v20240201preview:RoleManagementPolicy"), pulumi.Alias(type_="azure-native:authorization:RoleManagementPolicy")])
203
+ opts = pulumi.ResourceOptions.merge(opts, alias_opts)
204
+ super(RoleManagementPolicy, __self__).__init__(
205
+ 'azure-native:authorization/v20240901preview:RoleManagementPolicy',
206
+ resource_name,
207
+ __props__,
208
+ opts)
209
+
210
+ @staticmethod
211
+ def get(resource_name: str,
212
+ id: pulumi.Input[str],
213
+ opts: Optional[pulumi.ResourceOptions] = None) -> 'RoleManagementPolicy':
214
+ """
215
+ Get an existing RoleManagementPolicy resource's state with the given name, id, and optional extra
216
+ properties used to qualify the lookup.
217
+
218
+ :param str resource_name: The unique name of the resulting resource.
219
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
220
+ :param pulumi.ResourceOptions opts: Options for the resource.
221
+ """
222
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
223
+
224
+ __props__ = RoleManagementPolicyArgs.__new__(RoleManagementPolicyArgs)
225
+
226
+ __props__.__dict__["description"] = None
227
+ __props__.__dict__["display_name"] = None
228
+ __props__.__dict__["effective_rules"] = None
229
+ __props__.__dict__["is_organization_default"] = None
230
+ __props__.__dict__["last_modified_by"] = None
231
+ __props__.__dict__["last_modified_date_time"] = None
232
+ __props__.__dict__["name"] = None
233
+ __props__.__dict__["policy_properties"] = None
234
+ __props__.__dict__["rules"] = None
235
+ __props__.__dict__["scope"] = None
236
+ __props__.__dict__["type"] = None
237
+ return RoleManagementPolicy(resource_name, opts=opts, __props__=__props__)
238
+
239
+ @property
240
+ @pulumi.getter
241
+ def description(self) -> pulumi.Output[Optional[str]]:
242
+ """
243
+ The role management policy description.
244
+ """
245
+ return pulumi.get(self, "description")
246
+
247
+ @property
248
+ @pulumi.getter(name="displayName")
249
+ def display_name(self) -> pulumi.Output[Optional[str]]:
250
+ """
251
+ The role management policy display name.
252
+ """
253
+ return pulumi.get(self, "display_name")
254
+
255
+ @property
256
+ @pulumi.getter(name="effectiveRules")
257
+ def effective_rules(self) -> pulumi.Output[Sequence[Any]]:
258
+ """
259
+ The readonly computed rule applied to the policy.
260
+ """
261
+ return pulumi.get(self, "effective_rules")
262
+
263
+ @property
264
+ @pulumi.getter(name="isOrganizationDefault")
265
+ def is_organization_default(self) -> pulumi.Output[Optional[bool]]:
266
+ """
267
+ The role management policy is default policy.
268
+ """
269
+ return pulumi.get(self, "is_organization_default")
270
+
271
+ @property
272
+ @pulumi.getter(name="lastModifiedBy")
273
+ def last_modified_by(self) -> pulumi.Output['outputs.PrincipalResponse']:
274
+ """
275
+ The name of the entity last modified it
276
+ """
277
+ return pulumi.get(self, "last_modified_by")
278
+
279
+ @property
280
+ @pulumi.getter(name="lastModifiedDateTime")
281
+ def last_modified_date_time(self) -> pulumi.Output[str]:
282
+ """
283
+ The last modified date time.
284
+ """
285
+ return pulumi.get(self, "last_modified_date_time")
286
+
287
+ @property
288
+ @pulumi.getter
289
+ def name(self) -> pulumi.Output[str]:
290
+ """
291
+ The role management policy name.
292
+ """
293
+ return pulumi.get(self, "name")
294
+
295
+ @property
296
+ @pulumi.getter(name="policyProperties")
297
+ def policy_properties(self) -> pulumi.Output['outputs.PolicyPropertiesResponse']:
298
+ """
299
+ Additional properties of scope
300
+ """
301
+ return pulumi.get(self, "policy_properties")
302
+
303
+ @property
304
+ @pulumi.getter
305
+ def rules(self) -> pulumi.Output[Optional[Sequence[Any]]]:
306
+ """
307
+ The rule applied to the policy.
308
+ """
309
+ return pulumi.get(self, "rules")
310
+
311
+ @property
312
+ @pulumi.getter
313
+ def scope(self) -> pulumi.Output[Optional[str]]:
314
+ """
315
+ The role management policy scope.
316
+ """
317
+ return pulumi.get(self, "scope")
318
+
319
+ @property
320
+ @pulumi.getter
321
+ def type(self) -> pulumi.Output[str]:
322
+ """
323
+ The role management policy type.
324
+ """
325
+ return pulumi.get(self, "type")
326
+
@@ -1,5 +1,5 @@
1
1
  {
2
2
  "resource": true,
3
3
  "name": "azure-native",
4
- "version": "2.87.0-alpha.1739181549"
4
+ "version": "2.87.0-alpha.1739200739"
5
5
  }