class Aws::EventBridge::Types::PutPermissionRequest

@note When making an API call, you may pass PutPermissionRequest

data as a hash:

    {
      event_bus_name: "NonPartnerEventBusName",
      action: "Action",
      principal: "Principal",
      statement_id: "StatementId",
      condition: {
        type: "String", # required
        key: "String", # required
        value: "String", # required
      },
      policy: "String",
    }

@!attribute [rw] event_bus_name

The name of the event bus associated with the rule. If you omit
this, the default event bus is used.
@return [String]

@!attribute [rw] action

The action that you are enabling the other account to perform.
@return [String]

@!attribute [rw] principal

The 12-digit Amazon Web Services account ID that you are permitting
to put events to your default event bus. Specify "*" to permit
any account to put events to your default event bus.

If you specify "*" without specifying `Condition`, avoid creating
rules that may match undesirable events. To create more secure
rules, make sure that the event pattern for each rule contains an
`account` field with a specific account ID from which to receive
events. Rules with an account field do not match any events sent
from other accounts.
@return [String]

@!attribute [rw] statement_id

An identifier string for the external account that you are granting
permissions to. If you later want to revoke the permission for this
external account, specify this `StatementId` when you run
[RemovePermission][1].

[1]: https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_RemovePermission.html
@return [String]

@!attribute [rw] condition

This parameter enables you to limit the permission to accounts that
fulfill a certain condition, such as being a member of a certain
Amazon Web Services organization. For more information about Amazon
Web Services Organizations, see [What Is Amazon Web Services
Organizations][1] in the *Amazon Web Services Organizations User
Guide*.

If you specify `Condition` with an Amazon Web Services organization
ID, and specify "*" as the value for `Principal`, you grant
permission to all the accounts in the named organization.

The `Condition` is a JSON string which must contain `Type`, `Key`,
and `Value` fields.

[1]: https://docs.aws.amazon.com/organizations/latest/userguide/orgs_introduction.html
@return [Types::Condition]

@!attribute [rw] policy

A JSON string that describes the permission policy statement. You
can include a `Policy` parameter in the request instead of using the
`StatementId`, `Action`, `Principal`, or `Condition` parameters.
@return [String]

@see docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/PutPermissionRequest AWS API Documentation

Constants

SENSITIVE