1#[cfg_attr(feature = "python", ::pyo3::pyclass(get_all, set_all))]
4#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
5pub struct AzureUserDelegationSas {
6 #[prost(string, tag="1")]
8 pub sas_token: ::prost::alloc::string::String,
9}
10#[cfg_attr(feature = "python", ::pyo3::pyclass(get_all, set_all))]
11#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
12pub struct AzureAad {
13 #[prost(string, tag="1")]
15 pub aad_token: ::prost::alloc::string::String,
16}
17#[cfg_attr(feature = "python", ::pyo3::pyclass(get_all, set_all))]
18#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
19pub struct R2TemporaryCredentials {
20 #[prost(string, tag="1")]
22 pub access_key_id: ::prost::alloc::string::String,
23 #[prost(string, tag="2")]
25 pub secret_access_key: ::prost::alloc::string::String,
26 #[prost(string, tag="3")]
28 pub session_token: ::prost::alloc::string::String,
29}
30#[cfg_attr(feature = "python", ::pyo3::pyclass(get_all, set_all))]
31#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
32pub struct GcpOauthToken {
33 #[prost(string, tag="1")]
35 pub oauth_token: ::prost::alloc::string::String,
36}
37#[cfg_attr(feature = "python", ::pyo3::pyclass(get_all, set_all))]
38#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
39pub struct AwsTemporaryCredentials {
40 #[prost(string, tag="1")]
42 pub access_key_id: ::prost::alloc::string::String,
43 #[prost(string, tag="2")]
45 pub access_point: ::prost::alloc::string::String,
46 #[prost(string, tag="3")]
48 pub secret_access_key: ::prost::alloc::string::String,
49 #[prost(string, tag="4")]
51 pub session_token: ::prost::alloc::string::String,
52}
53#[cfg_attr(feature = "python", ::pyo3::pyclass(get_all, set_all))]
55#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
56pub struct TemporaryCredential {
57 #[prost(int64, tag="1")]
60 pub expiration_time: i64,
61 #[prost(string, tag="2")]
63 pub url: ::prost::alloc::string::String,
64 #[prost(oneof="temporary_credential::Credentials", tags="100, 101, 102, 103, 104")]
66 pub credentials: ::core::option::Option<temporary_credential::Credentials>,
67}
68pub mod temporary_credential {
70 #[cfg_attr(feature = "python", ::pyo3::pyclass)]
72 #[derive(Clone, PartialEq, Eq, Hash, ::prost::Oneof)]
73 pub enum Credentials {
74 #[prost(message, tag="100")]
76 AzureUserDelegationSas(super::AzureUserDelegationSas),
77 #[prost(message, tag="101")]
79 AzureAad(super::AzureAad),
80 #[prost(message, tag="102")]
82 AwsTempCredentials(super::AwsTemporaryCredentials),
83 #[prost(message, tag="103")]
85 GcpOauthToken(super::GcpOauthToken),
86 #[prost(message, tag="104")]
88 R2TempCredentials(super::R2TemporaryCredentials),
89 }
90}
91#[cfg_attr(feature = "python", ::pyo3::pyclass(get_all, set_all))]
93#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
94pub struct GenerateTemporaryTableCredentialsRequest {
95 #[prost(string, tag="1")]
97 pub table_id: ::prost::alloc::string::String,
98 #[prost(enumeration="generate_temporary_table_credentials_request::Operation", tag="2")]
102 pub operation: i32,
103}
104pub mod generate_temporary_table_credentials_request {
106 #[cfg_attr(feature = "python", ::pyo3::pyclass)]
107 #[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
108 #[repr(i32)]
109 pub enum Operation {
110 Unspecified = 0,
112 Read = 1,
114 ReadWrite = 2,
116 }
117 impl Operation {
118 pub fn as_str_name(&self) -> &'static str {
123 match self {
124 Self::Unspecified => "UNSPECIFIED",
125 Self::Read => "READ",
126 Self::ReadWrite => "READ_WRITE",
127 }
128 }
129 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
131 match value {
132 "UNSPECIFIED" => Some(Self::Unspecified),
133 "READ" => Some(Self::Read),
134 "READ_WRITE" => Some(Self::ReadWrite),
135 _ => None,
136 }
137 }
138 }
139}
140#[cfg_attr(feature = "python", ::pyo3::pyclass(get_all, set_all))]
142#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
143pub struct GenerateTemporaryVolumeCredentialsRequest {
144 #[prost(string, tag="1")]
146 pub volume_id: ::prost::alloc::string::String,
147 #[prost(enumeration="generate_temporary_volume_credentials_request::Operation", tag="2")]
151 pub operation: i32,
152}
153pub mod generate_temporary_volume_credentials_request {
155 #[cfg_attr(feature = "python", ::pyo3::pyclass)]
156 #[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
157 #[repr(i32)]
158 pub enum Operation {
159 Unspecified = 0,
161 ReadVolume = 1,
163 WriteVolume = 2,
165 }
166 impl Operation {
167 pub fn as_str_name(&self) -> &'static str {
172 match self {
173 Self::Unspecified => "UNSPECIFIED",
174 Self::ReadVolume => "READ_VOLUME",
175 Self::WriteVolume => "WRITE_VOLUME",
176 }
177 }
178 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
180 match value {
181 "UNSPECIFIED" => Some(Self::Unspecified),
182 "READ_VOLUME" => Some(Self::ReadVolume),
183 "WRITE_VOLUME" => Some(Self::WriteVolume),
184 _ => None,
185 }
186 }
187 }
188}
189#[cfg_attr(feature = "python", ::pyo3::pyclass(get_all, set_all))]
191#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
192pub struct GenerateTemporaryPathCredentialsRequest {
193 #[prost(string, tag="1")]
195 pub url: ::prost::alloc::string::String,
196 #[prost(enumeration="generate_temporary_path_credentials_request::Operation", tag="2")]
198 pub operation: i32,
199 #[prost(bool, optional, tag="3")]
203 pub dry_run: ::core::option::Option<bool>,
204}
205pub mod generate_temporary_path_credentials_request {
207 #[cfg_attr(feature = "python", ::pyo3::pyclass)]
208 #[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
209 #[repr(i32)]
210 pub enum Operation {
211 Unspecified = 0,
213 PathRead = 1,
215 PathReadWrite = 2,
217 PathCreateTable = 3,
219 }
220 impl Operation {
221 pub fn as_str_name(&self) -> &'static str {
226 match self {
227 Self::Unspecified => "UNSPECIFIED",
228 Self::PathRead => "PATH_READ",
229 Self::PathReadWrite => "PATH_READ_WRITE",
230 Self::PathCreateTable => "PATH_CREATE_TABLE",
231 }
232 }
233 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
235 match value {
236 "UNSPECIFIED" => Some(Self::Unspecified),
237 "PATH_READ" => Some(Self::PathRead),
238 "PATH_READ_WRITE" => Some(Self::PathReadWrite),
239 "PATH_CREATE_TABLE" => Some(Self::PathCreateTable),
240 _ => None,
241 }
242 }
243 }
244}
245include!("unitycatalog.temporary_credentials.v1.serde.rs");
246