pulumi-databricks 1.76.0a1757569246__py3-none-any.whl → 1.79.0a1764999348__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-databricks might be problematic. Click here for more details.
- pulumi_databricks/__init__.py +54 -46
- pulumi_databricks/_inputs.py +19547 -26284
- pulumi_databricks/account_federation_policy.py +48 -16
- pulumi_databricks/account_network_policy.py +60 -2
- pulumi_databricks/account_setting_v2.py +46 -83
- pulumi_databricks/alert_v2.py +174 -134
- pulumi_databricks/app.py +175 -0
- pulumi_databricks/apps_settings_custom_template.py +127 -52
- pulumi_databricks/budget_policy.py +6 -2
- pulumi_databricks/catalog.py +65 -23
- pulumi_databricks/cluster.py +47 -168
- pulumi_databricks/cluster_policy.py +120 -0
- pulumi_databricks/config/__init__.pyi +4 -0
- pulumi_databricks/config/vars.py +8 -0
- pulumi_databricks/data_quality_monitor.py +453 -0
- pulumi_databricks/data_quality_refresh.py +568 -0
- pulumi_databricks/database_database_catalog.py +9 -52
- pulumi_databricks/database_instance.py +271 -120
- pulumi_databricks/database_synced_database_table.py +265 -52
- pulumi_databricks/entitlements.py +21 -21
- pulumi_databricks/entity_tag_assignment.py +83 -52
- pulumi_databricks/external_location.py +131 -7
- pulumi_databricks/external_metadata.py +16 -59
- pulumi_databricks/feature_engineering_feature.py +480 -0
- pulumi_databricks/feature_engineering_materialized_feature.py +397 -0
- pulumi_databricks/file.py +2 -2
- pulumi_databricks/get_account_federation_policies.py +22 -3
- pulumi_databricks/get_account_federation_policy.py +20 -27
- pulumi_databricks/get_account_network_policies.py +4 -0
- pulumi_databricks/get_account_network_policy.py +17 -18
- pulumi_databricks/get_account_setting_v2.py +36 -141
- pulumi_databricks/get_alert_v2.py +47 -107
- pulumi_databricks/get_alerts_v2.py +29 -31
- pulumi_databricks/get_app.py +21 -5
- pulumi_databricks/get_apps.py +22 -6
- pulumi_databricks/get_apps_settings_custom_template.py +11 -55
- pulumi_databricks/get_apps_settings_custom_templates.py +25 -21
- pulumi_databricks/get_aws_assume_role_policy.py +14 -14
- pulumi_databricks/get_aws_bucket_policy.py +10 -10
- pulumi_databricks/get_aws_unity_catalog_assume_role_policy.py +10 -10
- pulumi_databricks/get_aws_unity_catalog_policy.py +10 -10
- pulumi_databricks/get_budget_policies.py +70 -6
- pulumi_databricks/get_budget_policy.py +9 -32
- pulumi_databricks/get_catalog.py +21 -4
- pulumi_databricks/get_catalogs.py +23 -4
- pulumi_databricks/get_cluster.py +75 -4
- pulumi_databricks/get_cluster_policy.py +23 -4
- pulumi_databricks/get_clusters.py +21 -4
- pulumi_databricks/get_current_config.py +4 -4
- pulumi_databricks/get_current_metastore.py +21 -4
- pulumi_databricks/get_dashboards.py +56 -4
- pulumi_databricks/get_data_quality_monitor.py +210 -0
- pulumi_databricks/get_data_quality_monitors.py +143 -0
- pulumi_databricks/get_data_quality_refresh.py +270 -0
- pulumi_databricks/get_data_quality_refreshes.py +207 -0
- pulumi_databricks/get_database_database_catalog.py +10 -41
- pulumi_databricks/get_database_database_catalogs.py +37 -18
- pulumi_databricks/get_database_instance.py +93 -99
- pulumi_databricks/get_database_instances.py +20 -16
- pulumi_databricks/get_database_synced_database_table.py +11 -49
- pulumi_databricks/get_database_synced_database_tables.py +42 -23
- pulumi_databricks/get_directory.py +20 -1
- pulumi_databricks/get_entity_tag_assignment.py +63 -30
- pulumi_databricks/get_entity_tag_assignments.py +69 -23
- pulumi_databricks/get_external_location.py +21 -4
- pulumi_databricks/get_external_locations.py +23 -4
- pulumi_databricks/get_external_metadata.py +18 -73
- pulumi_databricks/get_external_metadatas.py +22 -16
- pulumi_databricks/get_feature_engineering_feature.py +179 -0
- pulumi_databricks/get_feature_engineering_features.py +103 -0
- pulumi_databricks/get_feature_engineering_materialized_feature.py +180 -0
- pulumi_databricks/get_feature_engineering_materialized_features.py +123 -0
- pulumi_databricks/get_functions.py +16 -1
- pulumi_databricks/get_instance_profiles.py +21 -4
- pulumi_databricks/get_jobs.py +23 -4
- pulumi_databricks/get_materialized_features_feature_tag.py +7 -32
- pulumi_databricks/get_materialized_features_feature_tags.py +50 -18
- pulumi_databricks/get_metastore.py +6 -6
- pulumi_databricks/get_mlflow_experiment.py +18 -1
- pulumi_databricks/get_mlflow_model.py +18 -1
- pulumi_databricks/get_mlflow_models.py +23 -4
- pulumi_databricks/get_node_type.py +42 -5
- pulumi_databricks/get_notebook.py +20 -1
- pulumi_databricks/get_notification_destinations.py +17 -1
- pulumi_databricks/get_online_store.py +11 -38
- pulumi_databricks/get_online_stores.py +20 -18
- pulumi_databricks/get_pipelines.py +23 -4
- pulumi_databricks/get_policy_info.py +21 -109
- pulumi_databricks/get_policy_infos.py +50 -25
- pulumi_databricks/get_quality_monitor_v2.py +8 -21
- pulumi_databricks/get_quality_monitors_v2.py +23 -25
- pulumi_databricks/get_registered_model.py +19 -4
- pulumi_databricks/get_registered_model_versions.py +19 -4
- pulumi_databricks/get_rfa_access_request_destinations.py +126 -0
- pulumi_databricks/get_schema.py +18 -1
- pulumi_databricks/get_schemas.py +23 -4
- pulumi_databricks/get_service_principal_federation_policies.py +23 -4
- pulumi_databricks/get_service_principal_federation_policy.py +23 -24
- pulumi_databricks/get_service_principals.py +64 -0
- pulumi_databricks/get_serving_endpoints.py +19 -4
- pulumi_databricks/get_share.py +117 -18
- pulumi_databricks/get_shares.py +22 -3
- pulumi_databricks/get_spark_version.py +20 -1
- pulumi_databricks/get_sql_warehouse.py +16 -1
- pulumi_databricks/get_sql_warehouses.py +20 -1
- pulumi_databricks/get_storage_credential.py +18 -1
- pulumi_databricks/get_storage_credentials.py +23 -4
- pulumi_databricks/get_table.py +18 -1
- pulumi_databricks/get_tables.py +20 -1
- pulumi_databricks/get_tag_policies.py +55 -23
- pulumi_databricks/get_tag_policy.py +60 -40
- pulumi_databricks/get_views.py +20 -1
- pulumi_databricks/get_volume.py +18 -1
- pulumi_databricks/get_volumes.py +20 -1
- pulumi_databricks/get_workspace_network_option.py +8 -16
- pulumi_databricks/get_workspace_setting_v2.py +41 -163
- pulumi_databricks/get_zones.py +20 -1
- pulumi_databricks/git_credential.py +54 -7
- pulumi_databricks/group.py +21 -21
- pulumi_databricks/instance_profile.py +0 -182
- pulumi_databricks/job.py +47 -0
- pulumi_databricks/library.py +165 -0
- pulumi_databricks/materialized_features_feature_tag.py +9 -52
- pulumi_databricks/metastore.py +81 -7
- pulumi_databricks/metastore_data_access.py +48 -0
- pulumi_databricks/mlflow_webhook.py +4 -4
- pulumi_databricks/mws_credentials.py +10 -10
- pulumi_databricks/mws_customer_managed_keys.py +0 -288
- pulumi_databricks/mws_log_delivery.py +146 -0
- pulumi_databricks/mws_storage_configurations.py +16 -16
- pulumi_databricks/mws_vpc_endpoint.py +56 -56
- pulumi_databricks/mws_workspaces.py +146 -65
- pulumi_databricks/notebook.py +49 -0
- pulumi_databricks/online_store.py +9 -52
- pulumi_databricks/outputs.py +11558 -13079
- pulumi_databricks/permission_assignment.py +299 -8
- pulumi_databricks/permissions.py +6 -6
- pulumi_databricks/pipeline.py +37 -3
- pulumi_databricks/policy_info.py +9 -52
- pulumi_databricks/provider.py +36 -1
- pulumi_databricks/pulumi-plugin.json +1 -1
- pulumi_databricks/quality_monitor.py +47 -0
- pulumi_databricks/quality_monitor_v2.py +9 -52
- pulumi_databricks/recipient.py +74 -0
- pulumi_databricks/registered_model.py +308 -36
- pulumi_databricks/rfa_access_request_destinations.py +354 -0
- pulumi_databricks/schema.py +7 -7
- pulumi_databricks/service_principal_federation_policy.py +52 -16
- pulumi_databricks/share.py +71 -84
- pulumi_databricks/sql_endpoint.py +47 -0
- pulumi_databricks/sql_table.py +42 -14
- pulumi_databricks/storage_credential.py +15 -2
- pulumi_databricks/tag_policy.py +111 -54
- pulumi_databricks/user.py +21 -21
- pulumi_databricks/volume.py +7 -7
- pulumi_databricks/workspace_binding.py +0 -48
- pulumi_databricks/workspace_network_option.py +6 -2
- pulumi_databricks/workspace_setting_v2.py +49 -133
- {pulumi_databricks-1.76.0a1757569246.dist-info → pulumi_databricks-1.79.0a1764999348.dist-info}/METADATA +1 -1
- pulumi_databricks-1.79.0a1764999348.dist-info/RECORD +250 -0
- pulumi_databricks/clean_room_asset.py +0 -938
- pulumi_databricks/clean_room_auto_approval_rule.py +0 -473
- pulumi_databricks/clean_rooms_clean_room.py +0 -565
- pulumi_databricks/get_clean_room_asset.py +0 -416
- pulumi_databricks/get_clean_room_asset_revisions_clean_room_asset.py +0 -392
- pulumi_databricks/get_clean_room_asset_revisions_clean_room_assets.py +0 -121
- pulumi_databricks/get_clean_room_assets.py +0 -146
- pulumi_databricks/get_clean_room_auto_approval_rule.py +0 -217
- pulumi_databricks/get_clean_room_auto_approval_rules.py +0 -101
- pulumi_databricks/get_clean_rooms_clean_room.py +0 -289
- pulumi_databricks/get_clean_rooms_clean_rooms.py +0 -125
- pulumi_databricks/get_recipient_federation_policies.py +0 -101
- pulumi_databricks/get_recipient_federation_policy.py +0 -182
- pulumi_databricks/recipient_federation_policy.py +0 -393
- pulumi_databricks-1.76.0a1757569246.dist-info/RECORD +0 -250
- {pulumi_databricks-1.76.0a1757569246.dist-info → pulumi_databricks-1.79.0a1764999348.dist-info}/WHEEL +0 -0
- {pulumi_databricks-1.76.0a1757569246.dist-info → pulumi_databricks-1.79.0a1764999348.dist-info}/top_level.txt +0 -0
|
@@ -0,0 +1,354 @@
|
|
|
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 builtins as _builtins
|
|
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 ._inputs import *
|
|
18
|
+
|
|
19
|
+
__all__ = ['RfaAccessRequestDestinationsArgs', 'RfaAccessRequestDestinations']
|
|
20
|
+
|
|
21
|
+
@pulumi.input_type
|
|
22
|
+
class RfaAccessRequestDestinationsArgs:
|
|
23
|
+
def __init__(__self__, *,
|
|
24
|
+
destinations: pulumi.Input[Sequence[pulumi.Input['RfaAccessRequestDestinationsDestinationArgs']]],
|
|
25
|
+
securable: pulumi.Input['RfaAccessRequestDestinationsSecurableArgs']):
|
|
26
|
+
"""
|
|
27
|
+
The set of arguments for constructing a RfaAccessRequestDestinations resource.
|
|
28
|
+
:param pulumi.Input[Sequence[pulumi.Input['RfaAccessRequestDestinationsDestinationArgs']]] destinations: The access request destinations for the securable
|
|
29
|
+
:param pulumi.Input['RfaAccessRequestDestinationsSecurableArgs'] securable: The securable for which the access request destinations are being retrieved
|
|
30
|
+
"""
|
|
31
|
+
pulumi.set(__self__, "destinations", destinations)
|
|
32
|
+
pulumi.set(__self__, "securable", securable)
|
|
33
|
+
|
|
34
|
+
@_builtins.property
|
|
35
|
+
@pulumi.getter
|
|
36
|
+
def destinations(self) -> pulumi.Input[Sequence[pulumi.Input['RfaAccessRequestDestinationsDestinationArgs']]]:
|
|
37
|
+
"""
|
|
38
|
+
The access request destinations for the securable
|
|
39
|
+
"""
|
|
40
|
+
return pulumi.get(self, "destinations")
|
|
41
|
+
|
|
42
|
+
@destinations.setter
|
|
43
|
+
def destinations(self, value: pulumi.Input[Sequence[pulumi.Input['RfaAccessRequestDestinationsDestinationArgs']]]):
|
|
44
|
+
pulumi.set(self, "destinations", value)
|
|
45
|
+
|
|
46
|
+
@_builtins.property
|
|
47
|
+
@pulumi.getter
|
|
48
|
+
def securable(self) -> pulumi.Input['RfaAccessRequestDestinationsSecurableArgs']:
|
|
49
|
+
"""
|
|
50
|
+
The securable for which the access request destinations are being retrieved
|
|
51
|
+
"""
|
|
52
|
+
return pulumi.get(self, "securable")
|
|
53
|
+
|
|
54
|
+
@securable.setter
|
|
55
|
+
def securable(self, value: pulumi.Input['RfaAccessRequestDestinationsSecurableArgs']):
|
|
56
|
+
pulumi.set(self, "securable", value)
|
|
57
|
+
|
|
58
|
+
|
|
59
|
+
@pulumi.input_type
|
|
60
|
+
class _RfaAccessRequestDestinationsState:
|
|
61
|
+
def __init__(__self__, *,
|
|
62
|
+
are_any_destinations_hidden: Optional[pulumi.Input[_builtins.bool]] = None,
|
|
63
|
+
destinations: Optional[pulumi.Input[Sequence[pulumi.Input['RfaAccessRequestDestinationsDestinationArgs']]]] = None,
|
|
64
|
+
securable: Optional[pulumi.Input['RfaAccessRequestDestinationsSecurableArgs']] = None):
|
|
65
|
+
"""
|
|
66
|
+
Input properties used for looking up and filtering RfaAccessRequestDestinations resources.
|
|
67
|
+
:param pulumi.Input[_builtins.bool] are_any_destinations_hidden: (boolean) - Indicates whether any destinations are hidden from the caller due to a lack of permissions.
|
|
68
|
+
This value is true if the caller does not have permission to see all destinations
|
|
69
|
+
:param pulumi.Input[Sequence[pulumi.Input['RfaAccessRequestDestinationsDestinationArgs']]] destinations: The access request destinations for the securable
|
|
70
|
+
:param pulumi.Input['RfaAccessRequestDestinationsSecurableArgs'] securable: The securable for which the access request destinations are being retrieved
|
|
71
|
+
"""
|
|
72
|
+
if are_any_destinations_hidden is not None:
|
|
73
|
+
pulumi.set(__self__, "are_any_destinations_hidden", are_any_destinations_hidden)
|
|
74
|
+
if destinations is not None:
|
|
75
|
+
pulumi.set(__self__, "destinations", destinations)
|
|
76
|
+
if securable is not None:
|
|
77
|
+
pulumi.set(__self__, "securable", securable)
|
|
78
|
+
|
|
79
|
+
@_builtins.property
|
|
80
|
+
@pulumi.getter(name="areAnyDestinationsHidden")
|
|
81
|
+
def are_any_destinations_hidden(self) -> Optional[pulumi.Input[_builtins.bool]]:
|
|
82
|
+
"""
|
|
83
|
+
(boolean) - Indicates whether any destinations are hidden from the caller due to a lack of permissions.
|
|
84
|
+
This value is true if the caller does not have permission to see all destinations
|
|
85
|
+
"""
|
|
86
|
+
return pulumi.get(self, "are_any_destinations_hidden")
|
|
87
|
+
|
|
88
|
+
@are_any_destinations_hidden.setter
|
|
89
|
+
def are_any_destinations_hidden(self, value: Optional[pulumi.Input[_builtins.bool]]):
|
|
90
|
+
pulumi.set(self, "are_any_destinations_hidden", value)
|
|
91
|
+
|
|
92
|
+
@_builtins.property
|
|
93
|
+
@pulumi.getter
|
|
94
|
+
def destinations(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['RfaAccessRequestDestinationsDestinationArgs']]]]:
|
|
95
|
+
"""
|
|
96
|
+
The access request destinations for the securable
|
|
97
|
+
"""
|
|
98
|
+
return pulumi.get(self, "destinations")
|
|
99
|
+
|
|
100
|
+
@destinations.setter
|
|
101
|
+
def destinations(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['RfaAccessRequestDestinationsDestinationArgs']]]]):
|
|
102
|
+
pulumi.set(self, "destinations", value)
|
|
103
|
+
|
|
104
|
+
@_builtins.property
|
|
105
|
+
@pulumi.getter
|
|
106
|
+
def securable(self) -> Optional[pulumi.Input['RfaAccessRequestDestinationsSecurableArgs']]:
|
|
107
|
+
"""
|
|
108
|
+
The securable for which the access request destinations are being retrieved
|
|
109
|
+
"""
|
|
110
|
+
return pulumi.get(self, "securable")
|
|
111
|
+
|
|
112
|
+
@securable.setter
|
|
113
|
+
def securable(self, value: Optional[pulumi.Input['RfaAccessRequestDestinationsSecurableArgs']]):
|
|
114
|
+
pulumi.set(self, "securable", value)
|
|
115
|
+
|
|
116
|
+
|
|
117
|
+
@pulumi.type_token("databricks:index/rfaAccessRequestDestinations:RfaAccessRequestDestinations")
|
|
118
|
+
class RfaAccessRequestDestinations(pulumi.CustomResource):
|
|
119
|
+
@overload
|
|
120
|
+
def __init__(__self__,
|
|
121
|
+
resource_name: str,
|
|
122
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
|
123
|
+
destinations: Optional[pulumi.Input[Sequence[pulumi.Input[Union['RfaAccessRequestDestinationsDestinationArgs', 'RfaAccessRequestDestinationsDestinationArgsDict']]]]] = None,
|
|
124
|
+
securable: Optional[pulumi.Input[Union['RfaAccessRequestDestinationsSecurableArgs', 'RfaAccessRequestDestinationsSecurableArgsDict']]] = None,
|
|
125
|
+
__props__=None):
|
|
126
|
+
"""
|
|
127
|
+
[](https://docs.databricks.com/aws/en/release-notes/release-types)
|
|
128
|
+
|
|
129
|
+
Request for Access (RFA) access request destinations allow you to configure where notifications are sent when users request access to securable objects in Unity Catalog. This resource enables you to manage access request destinations for specific securable objects, such as tables, catalogs, or schemas.
|
|
130
|
+
|
|
131
|
+
When a user requests access to a securable object, notifications can be sent to various destinations including email addresses, Slack channels, or Microsoft Teams channels. This resource allows you to configure these destinations to ensure that the appropriate stakeholders are notified of access requests.
|
|
132
|
+
|
|
133
|
+
## Example Usage
|
|
134
|
+
|
|
135
|
+
```python
|
|
136
|
+
import pulumi
|
|
137
|
+
import pulumi_databricks as databricks
|
|
138
|
+
|
|
139
|
+
customer_data_table = databricks.RfaAccessRequestDestinations("customer_data_table",
|
|
140
|
+
destinations=[
|
|
141
|
+
{
|
|
142
|
+
"destination_id": "john.doe@databricks.com",
|
|
143
|
+
"destination_type": "EMAIL",
|
|
144
|
+
},
|
|
145
|
+
{
|
|
146
|
+
"destination_id": "https://www.databricks.com/",
|
|
147
|
+
"destination_type": "URL",
|
|
148
|
+
},
|
|
149
|
+
{
|
|
150
|
+
"destination_id": "456e7890-e89b-12d3-a456-426614174001",
|
|
151
|
+
"destination_type": "SLACK",
|
|
152
|
+
},
|
|
153
|
+
{
|
|
154
|
+
"destination_id": "789e0123-e89b-12d3-a456-426614174002",
|
|
155
|
+
"destination_type": "MICROSOFT_TEAMS",
|
|
156
|
+
},
|
|
157
|
+
{
|
|
158
|
+
"destination_id": "012e3456-e89b-12d3-a456-426614174003",
|
|
159
|
+
"destination_type": "GENERIC_WEBHOOK",
|
|
160
|
+
},
|
|
161
|
+
],
|
|
162
|
+
securable={
|
|
163
|
+
"type": "SCHEMA",
|
|
164
|
+
"full_name": "main.customer_data",
|
|
165
|
+
},
|
|
166
|
+
are_any_destinations_hidden=False)
|
|
167
|
+
```
|
|
168
|
+
|
|
169
|
+
## Import
|
|
170
|
+
|
|
171
|
+
As of Pulumi v1.5, resources can be imported through configuration.
|
|
172
|
+
|
|
173
|
+
hcl
|
|
174
|
+
|
|
175
|
+
import {
|
|
176
|
+
|
|
177
|
+
id = ""
|
|
178
|
+
|
|
179
|
+
to = databricks_rfa_access_request_destinations.this
|
|
180
|
+
|
|
181
|
+
}
|
|
182
|
+
|
|
183
|
+
If you are using an older version of Pulumi, import the resource using the `pulumi import` command as follows:
|
|
184
|
+
|
|
185
|
+
```sh
|
|
186
|
+
$ pulumi import databricks:index/rfaAccessRequestDestinations:RfaAccessRequestDestinations this ""
|
|
187
|
+
```
|
|
188
|
+
|
|
189
|
+
:param str resource_name: The name of the resource.
|
|
190
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
191
|
+
:param pulumi.Input[Sequence[pulumi.Input[Union['RfaAccessRequestDestinationsDestinationArgs', 'RfaAccessRequestDestinationsDestinationArgsDict']]]] destinations: The access request destinations for the securable
|
|
192
|
+
:param pulumi.Input[Union['RfaAccessRequestDestinationsSecurableArgs', 'RfaAccessRequestDestinationsSecurableArgsDict']] securable: The securable for which the access request destinations are being retrieved
|
|
193
|
+
"""
|
|
194
|
+
...
|
|
195
|
+
@overload
|
|
196
|
+
def __init__(__self__,
|
|
197
|
+
resource_name: str,
|
|
198
|
+
args: RfaAccessRequestDestinationsArgs,
|
|
199
|
+
opts: Optional[pulumi.ResourceOptions] = None):
|
|
200
|
+
"""
|
|
201
|
+
[](https://docs.databricks.com/aws/en/release-notes/release-types)
|
|
202
|
+
|
|
203
|
+
Request for Access (RFA) access request destinations allow you to configure where notifications are sent when users request access to securable objects in Unity Catalog. This resource enables you to manage access request destinations for specific securable objects, such as tables, catalogs, or schemas.
|
|
204
|
+
|
|
205
|
+
When a user requests access to a securable object, notifications can be sent to various destinations including email addresses, Slack channels, or Microsoft Teams channels. This resource allows you to configure these destinations to ensure that the appropriate stakeholders are notified of access requests.
|
|
206
|
+
|
|
207
|
+
## Example Usage
|
|
208
|
+
|
|
209
|
+
```python
|
|
210
|
+
import pulumi
|
|
211
|
+
import pulumi_databricks as databricks
|
|
212
|
+
|
|
213
|
+
customer_data_table = databricks.RfaAccessRequestDestinations("customer_data_table",
|
|
214
|
+
destinations=[
|
|
215
|
+
{
|
|
216
|
+
"destination_id": "john.doe@databricks.com",
|
|
217
|
+
"destination_type": "EMAIL",
|
|
218
|
+
},
|
|
219
|
+
{
|
|
220
|
+
"destination_id": "https://www.databricks.com/",
|
|
221
|
+
"destination_type": "URL",
|
|
222
|
+
},
|
|
223
|
+
{
|
|
224
|
+
"destination_id": "456e7890-e89b-12d3-a456-426614174001",
|
|
225
|
+
"destination_type": "SLACK",
|
|
226
|
+
},
|
|
227
|
+
{
|
|
228
|
+
"destination_id": "789e0123-e89b-12d3-a456-426614174002",
|
|
229
|
+
"destination_type": "MICROSOFT_TEAMS",
|
|
230
|
+
},
|
|
231
|
+
{
|
|
232
|
+
"destination_id": "012e3456-e89b-12d3-a456-426614174003",
|
|
233
|
+
"destination_type": "GENERIC_WEBHOOK",
|
|
234
|
+
},
|
|
235
|
+
],
|
|
236
|
+
securable={
|
|
237
|
+
"type": "SCHEMA",
|
|
238
|
+
"full_name": "main.customer_data",
|
|
239
|
+
},
|
|
240
|
+
are_any_destinations_hidden=False)
|
|
241
|
+
```
|
|
242
|
+
|
|
243
|
+
## Import
|
|
244
|
+
|
|
245
|
+
As of Pulumi v1.5, resources can be imported through configuration.
|
|
246
|
+
|
|
247
|
+
hcl
|
|
248
|
+
|
|
249
|
+
import {
|
|
250
|
+
|
|
251
|
+
id = ""
|
|
252
|
+
|
|
253
|
+
to = databricks_rfa_access_request_destinations.this
|
|
254
|
+
|
|
255
|
+
}
|
|
256
|
+
|
|
257
|
+
If you are using an older version of Pulumi, import the resource using the `pulumi import` command as follows:
|
|
258
|
+
|
|
259
|
+
```sh
|
|
260
|
+
$ pulumi import databricks:index/rfaAccessRequestDestinations:RfaAccessRequestDestinations this ""
|
|
261
|
+
```
|
|
262
|
+
|
|
263
|
+
:param str resource_name: The name of the resource.
|
|
264
|
+
:param RfaAccessRequestDestinationsArgs args: The arguments to use to populate this resource's properties.
|
|
265
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
266
|
+
"""
|
|
267
|
+
...
|
|
268
|
+
def __init__(__self__, resource_name: str, *args, **kwargs):
|
|
269
|
+
resource_args, opts = _utilities.get_resource_args_opts(RfaAccessRequestDestinationsArgs, pulumi.ResourceOptions, *args, **kwargs)
|
|
270
|
+
if resource_args is not None:
|
|
271
|
+
__self__._internal_init(resource_name, opts, **resource_args.__dict__)
|
|
272
|
+
else:
|
|
273
|
+
__self__._internal_init(resource_name, *args, **kwargs)
|
|
274
|
+
|
|
275
|
+
def _internal_init(__self__,
|
|
276
|
+
resource_name: str,
|
|
277
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
|
278
|
+
destinations: Optional[pulumi.Input[Sequence[pulumi.Input[Union['RfaAccessRequestDestinationsDestinationArgs', 'RfaAccessRequestDestinationsDestinationArgsDict']]]]] = None,
|
|
279
|
+
securable: Optional[pulumi.Input[Union['RfaAccessRequestDestinationsSecurableArgs', 'RfaAccessRequestDestinationsSecurableArgsDict']]] = None,
|
|
280
|
+
__props__=None):
|
|
281
|
+
opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
|
|
282
|
+
if not isinstance(opts, pulumi.ResourceOptions):
|
|
283
|
+
raise TypeError('Expected resource options to be a ResourceOptions instance')
|
|
284
|
+
if opts.id is None:
|
|
285
|
+
if __props__ is not None:
|
|
286
|
+
raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
|
|
287
|
+
__props__ = RfaAccessRequestDestinationsArgs.__new__(RfaAccessRequestDestinationsArgs)
|
|
288
|
+
|
|
289
|
+
if destinations is None and not opts.urn:
|
|
290
|
+
raise TypeError("Missing required property 'destinations'")
|
|
291
|
+
__props__.__dict__["destinations"] = destinations
|
|
292
|
+
if securable is None and not opts.urn:
|
|
293
|
+
raise TypeError("Missing required property 'securable'")
|
|
294
|
+
__props__.__dict__["securable"] = securable
|
|
295
|
+
__props__.__dict__["are_any_destinations_hidden"] = None
|
|
296
|
+
super(RfaAccessRequestDestinations, __self__).__init__(
|
|
297
|
+
'databricks:index/rfaAccessRequestDestinations:RfaAccessRequestDestinations',
|
|
298
|
+
resource_name,
|
|
299
|
+
__props__,
|
|
300
|
+
opts)
|
|
301
|
+
|
|
302
|
+
@staticmethod
|
|
303
|
+
def get(resource_name: str,
|
|
304
|
+
id: pulumi.Input[str],
|
|
305
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
|
306
|
+
are_any_destinations_hidden: Optional[pulumi.Input[_builtins.bool]] = None,
|
|
307
|
+
destinations: Optional[pulumi.Input[Sequence[pulumi.Input[Union['RfaAccessRequestDestinationsDestinationArgs', 'RfaAccessRequestDestinationsDestinationArgsDict']]]]] = None,
|
|
308
|
+
securable: Optional[pulumi.Input[Union['RfaAccessRequestDestinationsSecurableArgs', 'RfaAccessRequestDestinationsSecurableArgsDict']]] = None) -> 'RfaAccessRequestDestinations':
|
|
309
|
+
"""
|
|
310
|
+
Get an existing RfaAccessRequestDestinations resource's state with the given name, id, and optional extra
|
|
311
|
+
properties used to qualify the lookup.
|
|
312
|
+
|
|
313
|
+
:param str resource_name: The unique name of the resulting resource.
|
|
314
|
+
:param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
|
|
315
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
316
|
+
:param pulumi.Input[_builtins.bool] are_any_destinations_hidden: (boolean) - Indicates whether any destinations are hidden from the caller due to a lack of permissions.
|
|
317
|
+
This value is true if the caller does not have permission to see all destinations
|
|
318
|
+
:param pulumi.Input[Sequence[pulumi.Input[Union['RfaAccessRequestDestinationsDestinationArgs', 'RfaAccessRequestDestinationsDestinationArgsDict']]]] destinations: The access request destinations for the securable
|
|
319
|
+
:param pulumi.Input[Union['RfaAccessRequestDestinationsSecurableArgs', 'RfaAccessRequestDestinationsSecurableArgsDict']] securable: The securable for which the access request destinations are being retrieved
|
|
320
|
+
"""
|
|
321
|
+
opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
|
|
322
|
+
|
|
323
|
+
__props__ = _RfaAccessRequestDestinationsState.__new__(_RfaAccessRequestDestinationsState)
|
|
324
|
+
|
|
325
|
+
__props__.__dict__["are_any_destinations_hidden"] = are_any_destinations_hidden
|
|
326
|
+
__props__.__dict__["destinations"] = destinations
|
|
327
|
+
__props__.__dict__["securable"] = securable
|
|
328
|
+
return RfaAccessRequestDestinations(resource_name, opts=opts, __props__=__props__)
|
|
329
|
+
|
|
330
|
+
@_builtins.property
|
|
331
|
+
@pulumi.getter(name="areAnyDestinationsHidden")
|
|
332
|
+
def are_any_destinations_hidden(self) -> pulumi.Output[_builtins.bool]:
|
|
333
|
+
"""
|
|
334
|
+
(boolean) - Indicates whether any destinations are hidden from the caller due to a lack of permissions.
|
|
335
|
+
This value is true if the caller does not have permission to see all destinations
|
|
336
|
+
"""
|
|
337
|
+
return pulumi.get(self, "are_any_destinations_hidden")
|
|
338
|
+
|
|
339
|
+
@_builtins.property
|
|
340
|
+
@pulumi.getter
|
|
341
|
+
def destinations(self) -> pulumi.Output[Sequence['outputs.RfaAccessRequestDestinationsDestination']]:
|
|
342
|
+
"""
|
|
343
|
+
The access request destinations for the securable
|
|
344
|
+
"""
|
|
345
|
+
return pulumi.get(self, "destinations")
|
|
346
|
+
|
|
347
|
+
@_builtins.property
|
|
348
|
+
@pulumi.getter
|
|
349
|
+
def securable(self) -> pulumi.Output['outputs.RfaAccessRequestDestinationsSecurable']:
|
|
350
|
+
"""
|
|
351
|
+
The securable for which the access request destinations are being retrieved
|
|
352
|
+
"""
|
|
353
|
+
return pulumi.get(self, "securable")
|
|
354
|
+
|
pulumi_databricks/schema.py
CHANGED
|
@@ -37,7 +37,7 @@ class SchemaArgs:
|
|
|
37
37
|
:param pulumi.Input[_builtins.str] name: Name of Schema relative to parent catalog. Change forces creation of a new resource.
|
|
38
38
|
:param pulumi.Input[_builtins.str] owner: Username/groupname/sp application_id of the schema owner.
|
|
39
39
|
:param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] properties: Extensible Schema properties.
|
|
40
|
-
:param pulumi.Input[_builtins.str] storage_root: Managed location of the schema. Location in cloud storage where data for managed tables will be stored. If not specified, the location will default to the catalog root location. Change forces creation of a new resource.
|
|
40
|
+
:param pulumi.Input[_builtins.str] storage_root: Managed location of the schema. Location in cloud storage where data for managed tables will be stored. If the URL contains special characters, such as space, `&`, etc., they should be percent-encoded (space > `%20`, etc.). If not specified, the location will default to the catalog root location. Change forces creation of a new resource.
|
|
41
41
|
"""
|
|
42
42
|
pulumi.set(__self__, "catalog_name", catalog_name)
|
|
43
43
|
if comment is not None:
|
|
@@ -154,7 +154,7 @@ class SchemaArgs:
|
|
|
154
154
|
@pulumi.getter(name="storageRoot")
|
|
155
155
|
def storage_root(self) -> Optional[pulumi.Input[_builtins.str]]:
|
|
156
156
|
"""
|
|
157
|
-
Managed location of the schema. Location in cloud storage where data for managed tables will be stored. If not specified, the location will default to the catalog root location. Change forces creation of a new resource.
|
|
157
|
+
Managed location of the schema. Location in cloud storage where data for managed tables will be stored. If the URL contains special characters, such as space, `&`, etc., they should be percent-encoded (space > `%20`, etc.). If not specified, the location will default to the catalog root location. Change forces creation of a new resource.
|
|
158
158
|
"""
|
|
159
159
|
return pulumi.get(self, "storage_root")
|
|
160
160
|
|
|
@@ -186,7 +186,7 @@ class _SchemaState:
|
|
|
186
186
|
:param pulumi.Input[_builtins.str] owner: Username/groupname/sp application_id of the schema owner.
|
|
187
187
|
:param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] properties: Extensible Schema properties.
|
|
188
188
|
:param pulumi.Input[_builtins.str] schema_id: The unique identifier of the schema.
|
|
189
|
-
:param pulumi.Input[_builtins.str] storage_root: Managed location of the schema. Location in cloud storage where data for managed tables will be stored. If not specified, the location will default to the catalog root location. Change forces creation of a new resource.
|
|
189
|
+
:param pulumi.Input[_builtins.str] storage_root: Managed location of the schema. Location in cloud storage where data for managed tables will be stored. If the URL contains special characters, such as space, `&`, etc., they should be percent-encoded (space > `%20`, etc.). If not specified, the location will default to the catalog root location. Change forces creation of a new resource.
|
|
190
190
|
"""
|
|
191
191
|
if catalog_name is not None:
|
|
192
192
|
pulumi.set(__self__, "catalog_name", catalog_name)
|
|
@@ -318,7 +318,7 @@ class _SchemaState:
|
|
|
318
318
|
@pulumi.getter(name="storageRoot")
|
|
319
319
|
def storage_root(self) -> Optional[pulumi.Input[_builtins.str]]:
|
|
320
320
|
"""
|
|
321
|
-
Managed location of the schema. Location in cloud storage where data for managed tables will be stored. If not specified, the location will default to the catalog root location. Change forces creation of a new resource.
|
|
321
|
+
Managed location of the schema. Location in cloud storage where data for managed tables will be stored. If the URL contains special characters, such as space, `&`, etc., they should be percent-encoded (space > `%20`, etc.). If not specified, the location will default to the catalog root location. Change forces creation of a new resource.
|
|
322
322
|
"""
|
|
323
323
|
return pulumi.get(self, "storage_root")
|
|
324
324
|
|
|
@@ -410,7 +410,7 @@ class Schema(pulumi.CustomResource):
|
|
|
410
410
|
:param pulumi.Input[_builtins.str] name: Name of Schema relative to parent catalog. Change forces creation of a new resource.
|
|
411
411
|
:param pulumi.Input[_builtins.str] owner: Username/groupname/sp application_id of the schema owner.
|
|
412
412
|
:param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] properties: Extensible Schema properties.
|
|
413
|
-
:param pulumi.Input[_builtins.str] storage_root: Managed location of the schema. Location in cloud storage where data for managed tables will be stored. If not specified, the location will default to the catalog root location. Change forces creation of a new resource.
|
|
413
|
+
:param pulumi.Input[_builtins.str] storage_root: Managed location of the schema. Location in cloud storage where data for managed tables will be stored. If the URL contains special characters, such as space, `&`, etc., they should be percent-encoded (space > `%20`, etc.). If not specified, the location will default to the catalog root location. Change forces creation of a new resource.
|
|
414
414
|
"""
|
|
415
415
|
...
|
|
416
416
|
@overload
|
|
@@ -556,7 +556,7 @@ class Schema(pulumi.CustomResource):
|
|
|
556
556
|
:param pulumi.Input[_builtins.str] owner: Username/groupname/sp application_id of the schema owner.
|
|
557
557
|
:param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] properties: Extensible Schema properties.
|
|
558
558
|
:param pulumi.Input[_builtins.str] schema_id: The unique identifier of the schema.
|
|
559
|
-
:param pulumi.Input[_builtins.str] storage_root: Managed location of the schema. Location in cloud storage where data for managed tables will be stored. If not specified, the location will default to the catalog root location. Change forces creation of a new resource.
|
|
559
|
+
:param pulumi.Input[_builtins.str] storage_root: Managed location of the schema. Location in cloud storage where data for managed tables will be stored. If the URL contains special characters, such as space, `&`, etc., they should be percent-encoded (space > `%20`, etc.). If not specified, the location will default to the catalog root location. Change forces creation of a new resource.
|
|
560
560
|
"""
|
|
561
561
|
opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
|
|
562
562
|
|
|
@@ -647,7 +647,7 @@ class Schema(pulumi.CustomResource):
|
|
|
647
647
|
@pulumi.getter(name="storageRoot")
|
|
648
648
|
def storage_root(self) -> pulumi.Output[Optional[_builtins.str]]:
|
|
649
649
|
"""
|
|
650
|
-
Managed location of the schema. Location in cloud storage where data for managed tables will be stored. If not specified, the location will default to the catalog root location. Change forces creation of a new resource.
|
|
650
|
+
Managed location of the schema. Location in cloud storage where data for managed tables will be stored. If the URL contains special characters, such as space, `&`, etc., they should be percent-encoded (space > `%20`, etc.). If not specified, the location will default to the catalog root location. Change forces creation of a new resource.
|
|
651
651
|
"""
|
|
652
652
|
return pulumi.get(self, "storage_root")
|
|
653
653
|
|
|
@@ -28,8 +28,8 @@ class ServicePrincipalFederationPolicyArgs:
|
|
|
28
28
|
"""
|
|
29
29
|
The set of arguments for constructing a ServicePrincipalFederationPolicy resource.
|
|
30
30
|
:param pulumi.Input[_builtins.str] description: Description of the federation policy
|
|
31
|
-
:param pulumi.Input[_builtins.str] policy_id: (string) - The ID of the federation policy
|
|
32
|
-
:param pulumi.Input[_builtins.int] service_principal_id: (integer) - The service principal ID that this federation policy applies to. Only set for service principal federation policies
|
|
31
|
+
:param pulumi.Input[_builtins.str] policy_id: (string) - The ID of the federation policy. Output only
|
|
32
|
+
:param pulumi.Input[_builtins.int] service_principal_id: (integer) - The service principal ID that this federation policy applies to. Output only. Only set for service principal federation policies
|
|
33
33
|
"""
|
|
34
34
|
if description is not None:
|
|
35
35
|
pulumi.set(__self__, "description", description)
|
|
@@ -65,7 +65,7 @@ class ServicePrincipalFederationPolicyArgs:
|
|
|
65
65
|
@pulumi.getter(name="policyId")
|
|
66
66
|
def policy_id(self) -> Optional[pulumi.Input[_builtins.str]]:
|
|
67
67
|
"""
|
|
68
|
-
(string) - The ID of the federation policy
|
|
68
|
+
(string) - The ID of the federation policy. Output only
|
|
69
69
|
"""
|
|
70
70
|
return pulumi.get(self, "policy_id")
|
|
71
71
|
|
|
@@ -77,7 +77,7 @@ class ServicePrincipalFederationPolicyArgs:
|
|
|
77
77
|
@pulumi.getter(name="servicePrincipalId")
|
|
78
78
|
def service_principal_id(self) -> Optional[pulumi.Input[_builtins.int]]:
|
|
79
79
|
"""
|
|
80
|
-
(integer) - The service principal ID that this federation policy applies to. Only set for service principal federation policies
|
|
80
|
+
(integer) - The service principal ID that this federation policy applies to. Output only. Only set for service principal federation policies
|
|
81
81
|
"""
|
|
82
82
|
return pulumi.get(self, "service_principal_id")
|
|
83
83
|
|
|
@@ -107,8 +107,8 @@ class _ServicePrincipalFederationPolicyState:
|
|
|
107
107
|
for Service Principal Federation Policies. Typically an output parameter, which does not need to be
|
|
108
108
|
specified in create or update requests. If specified in a request, must match the value in the
|
|
109
109
|
request URL
|
|
110
|
-
:param pulumi.Input[_builtins.str] policy_id: (string) - The ID of the federation policy
|
|
111
|
-
:param pulumi.Input[_builtins.int] service_principal_id: (integer) - The service principal ID that this federation policy applies to. Only set for service principal federation policies
|
|
110
|
+
:param pulumi.Input[_builtins.str] policy_id: (string) - The ID of the federation policy. Output only
|
|
111
|
+
:param pulumi.Input[_builtins.int] service_principal_id: (integer) - The service principal ID that this federation policy applies to. Output only. Only set for service principal federation policies
|
|
112
112
|
:param pulumi.Input[_builtins.str] uid: (string) - Unique, immutable id of the federation policy
|
|
113
113
|
:param pulumi.Input[_builtins.str] update_time: (string) - Last update time of the federation policy
|
|
114
114
|
"""
|
|
@@ -183,7 +183,7 @@ class _ServicePrincipalFederationPolicyState:
|
|
|
183
183
|
@pulumi.getter(name="policyId")
|
|
184
184
|
def policy_id(self) -> Optional[pulumi.Input[_builtins.str]]:
|
|
185
185
|
"""
|
|
186
|
-
(string) - The ID of the federation policy
|
|
186
|
+
(string) - The ID of the federation policy. Output only
|
|
187
187
|
"""
|
|
188
188
|
return pulumi.get(self, "policy_id")
|
|
189
189
|
|
|
@@ -195,7 +195,7 @@ class _ServicePrincipalFederationPolicyState:
|
|
|
195
195
|
@pulumi.getter(name="servicePrincipalId")
|
|
196
196
|
def service_principal_id(self) -> Optional[pulumi.Input[_builtins.int]]:
|
|
197
197
|
"""
|
|
198
|
-
(integer) - The service principal ID that this federation policy applies to. Only set for service principal federation policies
|
|
198
|
+
(integer) - The service principal ID that this federation policy applies to. Output only. Only set for service principal federation policies
|
|
199
199
|
"""
|
|
200
200
|
return pulumi.get(self, "service_principal_id")
|
|
201
201
|
|
|
@@ -240,12 +240,30 @@ class ServicePrincipalFederationPolicy(pulumi.CustomResource):
|
|
|
240
240
|
service_principal_id: Optional[pulumi.Input[_builtins.int]] = None,
|
|
241
241
|
__props__=None):
|
|
242
242
|
"""
|
|
243
|
+
[](https://docs.databricks.com/aws/en/release-notes/release-types)
|
|
244
|
+
|
|
243
245
|
Service principal federation policies allow automated workloads running outside of Databricks to access Databricks APIs without the need for Databricks secrets. Your application (workload) authenticates to Databricks as a Databricks service principal using tokens issued by the workload runtime, for example Github Actions.
|
|
244
246
|
|
|
245
247
|
A service principal federation policy is associated with a service principal in your Databricks account, and specifies:
|
|
246
248
|
* The identity provider (or issuer) from which the service principal can authenticate.
|
|
247
249
|
* The workload identity (or subject) that is permitted to authenticate as the Databricks service principal.
|
|
248
250
|
|
|
251
|
+
## Example Usage
|
|
252
|
+
|
|
253
|
+
```python
|
|
254
|
+
import pulumi
|
|
255
|
+
import pulumi_databricks as databricks
|
|
256
|
+
|
|
257
|
+
this = databricks.ServicePrincipalFederationPolicy("this",
|
|
258
|
+
service_principal_id=1234,
|
|
259
|
+
policy_id="my-policy",
|
|
260
|
+
oidc_policy={
|
|
261
|
+
"issuer": "https://myidp.example.com",
|
|
262
|
+
"subject_claim": "sub",
|
|
263
|
+
"subject": "subject-in-token-from-myidp",
|
|
264
|
+
})
|
|
265
|
+
```
|
|
266
|
+
|
|
249
267
|
## Import
|
|
250
268
|
|
|
251
269
|
As of Pulumi v1.5, resources can be imported through configuration.
|
|
@@ -263,14 +281,14 @@ class ServicePrincipalFederationPolicy(pulumi.CustomResource):
|
|
|
263
281
|
If you are using an older version of Pulumi, import the resource using the `pulumi import` command as follows:
|
|
264
282
|
|
|
265
283
|
```sh
|
|
266
|
-
$ pulumi import databricks:index/servicePrincipalFederationPolicy:ServicePrincipalFederationPolicy
|
|
284
|
+
$ pulumi import databricks:index/servicePrincipalFederationPolicy:ServicePrincipalFederationPolicy this "service_principal_id,policy_id"
|
|
267
285
|
```
|
|
268
286
|
|
|
269
287
|
:param str resource_name: The name of the resource.
|
|
270
288
|
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
271
289
|
:param pulumi.Input[_builtins.str] description: Description of the federation policy
|
|
272
|
-
:param pulumi.Input[_builtins.str] policy_id: (string) - The ID of the federation policy
|
|
273
|
-
:param pulumi.Input[_builtins.int] service_principal_id: (integer) - The service principal ID that this federation policy applies to. Only set for service principal federation policies
|
|
290
|
+
:param pulumi.Input[_builtins.str] policy_id: (string) - The ID of the federation policy. Output only
|
|
291
|
+
:param pulumi.Input[_builtins.int] service_principal_id: (integer) - The service principal ID that this federation policy applies to. Output only. Only set for service principal federation policies
|
|
274
292
|
"""
|
|
275
293
|
...
|
|
276
294
|
@overload
|
|
@@ -279,12 +297,30 @@ class ServicePrincipalFederationPolicy(pulumi.CustomResource):
|
|
|
279
297
|
args: Optional[ServicePrincipalFederationPolicyArgs] = None,
|
|
280
298
|
opts: Optional[pulumi.ResourceOptions] = None):
|
|
281
299
|
"""
|
|
300
|
+
[](https://docs.databricks.com/aws/en/release-notes/release-types)
|
|
301
|
+
|
|
282
302
|
Service principal federation policies allow automated workloads running outside of Databricks to access Databricks APIs without the need for Databricks secrets. Your application (workload) authenticates to Databricks as a Databricks service principal using tokens issued by the workload runtime, for example Github Actions.
|
|
283
303
|
|
|
284
304
|
A service principal federation policy is associated with a service principal in your Databricks account, and specifies:
|
|
285
305
|
* The identity provider (or issuer) from which the service principal can authenticate.
|
|
286
306
|
* The workload identity (or subject) that is permitted to authenticate as the Databricks service principal.
|
|
287
307
|
|
|
308
|
+
## Example Usage
|
|
309
|
+
|
|
310
|
+
```python
|
|
311
|
+
import pulumi
|
|
312
|
+
import pulumi_databricks as databricks
|
|
313
|
+
|
|
314
|
+
this = databricks.ServicePrincipalFederationPolicy("this",
|
|
315
|
+
service_principal_id=1234,
|
|
316
|
+
policy_id="my-policy",
|
|
317
|
+
oidc_policy={
|
|
318
|
+
"issuer": "https://myidp.example.com",
|
|
319
|
+
"subject_claim": "sub",
|
|
320
|
+
"subject": "subject-in-token-from-myidp",
|
|
321
|
+
})
|
|
322
|
+
```
|
|
323
|
+
|
|
288
324
|
## Import
|
|
289
325
|
|
|
290
326
|
As of Pulumi v1.5, resources can be imported through configuration.
|
|
@@ -302,7 +338,7 @@ class ServicePrincipalFederationPolicy(pulumi.CustomResource):
|
|
|
302
338
|
If you are using an older version of Pulumi, import the resource using the `pulumi import` command as follows:
|
|
303
339
|
|
|
304
340
|
```sh
|
|
305
|
-
$ pulumi import databricks:index/servicePrincipalFederationPolicy:ServicePrincipalFederationPolicy
|
|
341
|
+
$ pulumi import databricks:index/servicePrincipalFederationPolicy:ServicePrincipalFederationPolicy this "service_principal_id,policy_id"
|
|
306
342
|
```
|
|
307
343
|
|
|
308
344
|
:param str resource_name: The name of the resource.
|
|
@@ -374,8 +410,8 @@ class ServicePrincipalFederationPolicy(pulumi.CustomResource):
|
|
|
374
410
|
for Service Principal Federation Policies. Typically an output parameter, which does not need to be
|
|
375
411
|
specified in create or update requests. If specified in a request, must match the value in the
|
|
376
412
|
request URL
|
|
377
|
-
:param pulumi.Input[_builtins.str] policy_id: (string) - The ID of the federation policy
|
|
378
|
-
:param pulumi.Input[_builtins.int] service_principal_id: (integer) - The service principal ID that this federation policy applies to. Only set for service principal federation policies
|
|
413
|
+
:param pulumi.Input[_builtins.str] policy_id: (string) - The ID of the federation policy. Output only
|
|
414
|
+
:param pulumi.Input[_builtins.int] service_principal_id: (integer) - The service principal ID that this federation policy applies to. Output only. Only set for service principal federation policies
|
|
379
415
|
:param pulumi.Input[_builtins.str] uid: (string) - Unique, immutable id of the federation policy
|
|
380
416
|
:param pulumi.Input[_builtins.str] update_time: (string) - Last update time of the federation policy
|
|
381
417
|
"""
|
|
@@ -431,7 +467,7 @@ class ServicePrincipalFederationPolicy(pulumi.CustomResource):
|
|
|
431
467
|
@pulumi.getter(name="policyId")
|
|
432
468
|
def policy_id(self) -> pulumi.Output[_builtins.str]:
|
|
433
469
|
"""
|
|
434
|
-
(string) - The ID of the federation policy
|
|
470
|
+
(string) - The ID of the federation policy. Output only
|
|
435
471
|
"""
|
|
436
472
|
return pulumi.get(self, "policy_id")
|
|
437
473
|
|
|
@@ -439,7 +475,7 @@ class ServicePrincipalFederationPolicy(pulumi.CustomResource):
|
|
|
439
475
|
@pulumi.getter(name="servicePrincipalId")
|
|
440
476
|
def service_principal_id(self) -> pulumi.Output[_builtins.int]:
|
|
441
477
|
"""
|
|
442
|
-
(integer) - The service principal ID that this federation policy applies to. Only set for service principal federation policies
|
|
478
|
+
(integer) - The service principal ID that this federation policy applies to. Output only. Only set for service principal federation policies
|
|
443
479
|
"""
|
|
444
480
|
return pulumi.get(self, "service_principal_id")
|
|
445
481
|
|