aws_sdk_redshift/client/
authorize_snapshot_access.rs

1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2impl super::Client {
3    /// Constructs a fluent builder for the [`AuthorizeSnapshotAccess`](crate::operation::authorize_snapshot_access::builders::AuthorizeSnapshotAccessFluentBuilder) operation.
4    ///
5    /// - The fluent builder is configurable:
6    ///   - [`snapshot_identifier(impl Into<String>)`](crate::operation::authorize_snapshot_access::builders::AuthorizeSnapshotAccessFluentBuilder::snapshot_identifier) / [`set_snapshot_identifier(Option<String>)`](crate::operation::authorize_snapshot_access::builders::AuthorizeSnapshotAccessFluentBuilder::set_snapshot_identifier):<br>required: **false**<br><p>The identifier of the snapshot the account is authorized to restore.</p><br>
7    ///   - [`snapshot_arn(impl Into<String>)`](crate::operation::authorize_snapshot_access::builders::AuthorizeSnapshotAccessFluentBuilder::snapshot_arn) / [`set_snapshot_arn(Option<String>)`](crate::operation::authorize_snapshot_access::builders::AuthorizeSnapshotAccessFluentBuilder::set_snapshot_arn):<br>required: **false**<br><p>The Amazon Resource Name (ARN) of the snapshot to authorize access to.</p><br>
8    ///   - [`snapshot_cluster_identifier(impl Into<String>)`](crate::operation::authorize_snapshot_access::builders::AuthorizeSnapshotAccessFluentBuilder::snapshot_cluster_identifier) / [`set_snapshot_cluster_identifier(Option<String>)`](crate::operation::authorize_snapshot_access::builders::AuthorizeSnapshotAccessFluentBuilder::set_snapshot_cluster_identifier):<br>required: **false**<br><p>The identifier of the cluster the snapshot was created from.</p> <ul>  <li>   <p><i>If the snapshot to access doesn't exist and the associated IAM policy doesn't allow access to all (*) snapshots</i> - This parameter is required. Otherwise, permissions aren't available to check if the snapshot exists.</p></li>  <li>   <p><i>If the snapshot to access exists</i> - This parameter isn't required. Redshift can retrieve the cluster identifier and use it to validate snapshot authorization.</p></li> </ul><br>
9    ///   - [`account_with_restore_access(impl Into<String>)`](crate::operation::authorize_snapshot_access::builders::AuthorizeSnapshotAccessFluentBuilder::account_with_restore_access) / [`set_account_with_restore_access(Option<String>)`](crate::operation::authorize_snapshot_access::builders::AuthorizeSnapshotAccessFluentBuilder::set_account_with_restore_access):<br>required: **true**<br><p>The identifier of the Amazon Web Services account authorized to restore the specified snapshot.</p> <p>To share a snapshot with Amazon Web Services Support, specify amazon-redshift-support.</p><br>
10    /// - On success, responds with [`AuthorizeSnapshotAccessOutput`](crate::operation::authorize_snapshot_access::AuthorizeSnapshotAccessOutput) with field(s):
11    ///   - [`snapshot(Option<Snapshot>)`](crate::operation::authorize_snapshot_access::AuthorizeSnapshotAccessOutput::snapshot): <p>Describes a snapshot.</p>
12    /// - On failure, responds with [`SdkError<AuthorizeSnapshotAccessError>`](crate::operation::authorize_snapshot_access::AuthorizeSnapshotAccessError)
13    pub fn authorize_snapshot_access(&self) -> crate::operation::authorize_snapshot_access::builders::AuthorizeSnapshotAccessFluentBuilder {
14        crate::operation::authorize_snapshot_access::builders::AuthorizeSnapshotAccessFluentBuilder::new(self.handle.clone())
15    }
16}