Struct aws_sdk_cloudwatchlogs::operation::put_resource_policy::builders::PutResourcePolicyFluentBuilder
source · pub struct PutResourcePolicyFluentBuilder { /* private fields */ }
Expand description
Fluent builder constructing a request to PutResourcePolicy
.
Creates or updates a resource policy allowing other Amazon Web Services services to put log events to this account, such as Amazon Route 53. An account can have up to 10 resource policies per Amazon Web Services Region.
Implementations§
source§impl PutResourcePolicyFluentBuilder
impl PutResourcePolicyFluentBuilder
sourcepub fn as_input(&self) -> &PutResourcePolicyInputBuilder
pub fn as_input(&self) -> &PutResourcePolicyInputBuilder
Access the PutResourcePolicy as a reference.
sourcepub async fn send(
self,
) -> Result<PutResourcePolicyOutput, SdkError<PutResourcePolicyError, HttpResponse>>
pub async fn send( self, ) -> Result<PutResourcePolicyOutput, SdkError<PutResourcePolicyError, HttpResponse>>
Sends the request and returns the response.
If an error occurs, an SdkError
will be returned with additional details that
can be matched against.
By default, any retryable failures will be retried twice. Retry behavior is configurable with the RetryConfig, which can be set when configuring the client.
sourcepub fn customize(
self,
) -> CustomizableOperation<PutResourcePolicyOutput, PutResourcePolicyError, Self>
pub fn customize( self, ) -> CustomizableOperation<PutResourcePolicyOutput, PutResourcePolicyError, Self>
Consumes this builder, creating a customizable operation that can be modified before being sent.
sourcepub fn policy_name(self, input: impl Into<String>) -> Self
pub fn policy_name(self, input: impl Into<String>) -> Self
Name of the new policy. This parameter is required.
sourcepub fn set_policy_name(self, input: Option<String>) -> Self
pub fn set_policy_name(self, input: Option<String>) -> Self
Name of the new policy. This parameter is required.
sourcepub fn get_policy_name(&self) -> &Option<String>
pub fn get_policy_name(&self) -> &Option<String>
Name of the new policy. This parameter is required.
sourcepub fn policy_document(self, input: impl Into<String>) -> Self
pub fn policy_document(self, input: impl Into<String>) -> Self
Details of the new policy, including the identity of the principal that is enabled to put logs to this account. This is formatted as a JSON string. This parameter is required.
The following example creates a resource policy enabling the Route 53 service to put DNS query logs in to the specified log group. Replace "logArn"
with the ARN of your CloudWatch Logs resource, such as a log group or log stream.
CloudWatch Logs also supports aws:SourceArn and aws:SourceAccount condition context keys.
In the example resource policy, you would replace the value of SourceArn
with the resource making the call from Route 53 to CloudWatch Logs. You would also replace the value of SourceAccount
with the Amazon Web Services account ID making that call.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "Route53LogsToCloudWatchLogs", "Effect": "Allow", "Principal": { "Service": [ "route53.amazonaws.com" ] }, "Action": "logs:PutLogEvents", "Resource": "logArn", "Condition": { "ArnLike": { "aws:SourceArn": "myRoute53ResourceArn" }, "StringEquals": { "aws:SourceAccount": "myAwsAccountId" } } } ] }
sourcepub fn set_policy_document(self, input: Option<String>) -> Self
pub fn set_policy_document(self, input: Option<String>) -> Self
Details of the new policy, including the identity of the principal that is enabled to put logs to this account. This is formatted as a JSON string. This parameter is required.
The following example creates a resource policy enabling the Route 53 service to put DNS query logs in to the specified log group. Replace "logArn"
with the ARN of your CloudWatch Logs resource, such as a log group or log stream.
CloudWatch Logs also supports aws:SourceArn and aws:SourceAccount condition context keys.
In the example resource policy, you would replace the value of SourceArn
with the resource making the call from Route 53 to CloudWatch Logs. You would also replace the value of SourceAccount
with the Amazon Web Services account ID making that call.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "Route53LogsToCloudWatchLogs", "Effect": "Allow", "Principal": { "Service": [ "route53.amazonaws.com" ] }, "Action": "logs:PutLogEvents", "Resource": "logArn", "Condition": { "ArnLike": { "aws:SourceArn": "myRoute53ResourceArn" }, "StringEquals": { "aws:SourceAccount": "myAwsAccountId" } } } ] }
sourcepub fn get_policy_document(&self) -> &Option<String>
pub fn get_policy_document(&self) -> &Option<String>
Details of the new policy, including the identity of the principal that is enabled to put logs to this account. This is formatted as a JSON string. This parameter is required.
The following example creates a resource policy enabling the Route 53 service to put DNS query logs in to the specified log group. Replace "logArn"
with the ARN of your CloudWatch Logs resource, such as a log group or log stream.
CloudWatch Logs also supports aws:SourceArn and aws:SourceAccount condition context keys.
In the example resource policy, you would replace the value of SourceArn
with the resource making the call from Route 53 to CloudWatch Logs. You would also replace the value of SourceAccount
with the Amazon Web Services account ID making that call.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "Route53LogsToCloudWatchLogs", "Effect": "Allow", "Principal": { "Service": [ "route53.amazonaws.com" ] }, "Action": "logs:PutLogEvents", "Resource": "logArn", "Condition": { "ArnLike": { "aws:SourceArn": "myRoute53ResourceArn" }, "StringEquals": { "aws:SourceAccount": "myAwsAccountId" } } } ] }
Trait Implementations§
source§impl Clone for PutResourcePolicyFluentBuilder
impl Clone for PutResourcePolicyFluentBuilder
source§fn clone(&self) -> PutResourcePolicyFluentBuilder
fn clone(&self) -> PutResourcePolicyFluentBuilder
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreAuto Trait Implementations§
impl Freeze for PutResourcePolicyFluentBuilder
impl !RefUnwindSafe for PutResourcePolicyFluentBuilder
impl Send for PutResourcePolicyFluentBuilder
impl Sync for PutResourcePolicyFluentBuilder
impl Unpin for PutResourcePolicyFluentBuilder
impl !UnwindSafe for PutResourcePolicyFluentBuilder
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more