ServicePrincipalOpts Struct
Options for a service principal.
Example
ts
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import { aws_iam as iam } from 'aws-cdk-lib';
declare const conditions: any;
const servicePrincipalOpts: iam.ServicePrincipalOpts = {
conditions: {
conditionsKey: conditions,
},
region: 'region',
};
Properties
conditionsoptional{ [key: string]: any }conditionsoptionaltyping.Mapping[str, Any]conditionsoptionalMap<String, Object>ConditionsoptionalIDictionary<string, object>Conditionsoptional*map[string]interface{}#Additional conditions to add to the Service Principal.
Default: No conditions
The region in which you want to reference the service.
Default: the resolving Stack's region.
notes
This is only necessary for cross-region references to opt-in regions. In those cases, the region name needs to be included to reference the correct service principal. In all other cases, the global service principal name is sufficient.
This field behaves differently depending on whether the @aws-cdk/aws-iam:standardizedServicePrincipals flag is set or not:
- If the flag is set, the input service principal is assumed to be of the form
SERVICE.amazonaws.com. That value will always be returned, unless the given region is an opt-in region and the service principal is rendered in a stack in a different region, in which caseSERVICE.REGION.amazonaws.comwill be rendered. Under this regime, there is no downside to always specifying the region property: it will be rendered only if necessary. - If the flag is not set, the service principal will resolve to a single principal whose name comes from the
@aws-cdk/region-infopackage, using the region to override the stack region. If there is no entry for this service principal in the database,, the input service name is returned literally. This is legacy behavior and is not recommended.