# CfnResolverRuleProps

Properties for defining a `CfnResolverRule`.

Extends: CfnResolverRuleProps
Used as props by: CfnResolverRule

- Source: Generated code
- Type last changed: v2.203.0 · 1 Jul 2025

## Example

```ts
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import { aws_route53resolver as route53resolver } from 'aws-cdk-lib';
const cfnResolverRuleProps: route53resolver.CfnResolverRuleProps = {
  ruleType: 'ruleType',

  // the properties below are optional
  delegationRecord: 'delegationRecord',
  domainName: 'domainName',
  name: 'name',
  resolverEndpointId: 'resolverEndpointId',
  tags: [{
    key: 'key',
    value: 'value',
  }],
  targetIps: [{
    ip: 'ip',
    ipv6: 'ipv6',
    port: 'port',
    protocol: 'protocol',
    serverNameIndication: 'serverNameIndication',
  }],
};
```

## Properties

- `delegationRecord`: string — DNS queries with delegation records that point to this domain name are forwarded to resolvers on your network.

- `domainName`: string — DNS queries for this domain name are forwarded to the IP addresses that are specified in `TargetIps` .

  If a query matches multiple Resolver rules (example.com and www.example.com), the query is routed using the Resolver rule that contains the most specific domain name (www.example.com).

- `name`: string — The name for the Resolver rule, which you specified when you created the Resolver rule.

  The name can be up to 64 characters long and can contain letters (a-z, A-Z), numbers (0-9), hyphens (-), underscores (_), and spaces. The name cannot consist of only numbers.

- `resolverEndpointId`: string — The ID of the endpoint that the rule is associated with.

- `ruleType`: string (required) — When you want to forward DNS queries for specified domain name to resolvers on your network, specify `FORWARD` or `DELEGATE` .

  If a query matches multiple Resolver rules (example.com and www.example.com), outbound DNS queries are routed using the Resolver rule that contains the most specific domain name (www.example.com).

  When you have a forwarding rule to forward DNS queries for a domain to your network and you want Resolver to process queries for a subdomain of that domain, specify `SYSTEM` .

  For example, to forward DNS queries for example.com to resolvers on your network, you create a rule and specify `FORWARD` for `RuleType` . To then have Resolver process queries for apex.example.com, you create a rule and specify `SYSTEM` for `RuleType` .

  Currently, only Resolver can create rules that have a value of `RECURSIVE` for `RuleType` .

- `tags`: [CfnTag](/cdk/api/v2/docs/aws-cdk-lib.CfnTag.html)[] — Tags help organize and categorize your Resolver rules.

  Each tag consists of a key and an optional value, both of which you define.

- `targetIps`: [IResolvable](/cdk/api/v2/docs/aws-cdk-lib.IResolvable.html) | [IResolvable](/cdk/api/v2/docs/aws-cdk-lib.IResolvable.html) | [CfnResolverRule.TargetAddressProperty](/cdk/api/v2/docs/aws-cdk-lib.aws_route53resolver.CfnResolverRule.TargetAddressProperty.html)[] — An array that contains the IP addresses and ports that an outbound endpoint forwards DNS queries to.

  Typically, these are the IP addresses of DNS resolvers on your network.
