github.com/pmoroney/dnscontrol@v0.2.4-0.20171024134423-fad98f73f44a/docs/_providers/route53.md (about) 1 --- 2 name: Route 53 3 layout: default 4 jsId: ROUTE53 5 --- 6 # Amazon Route 53 Provider 7 8 ## Configuration 9 You can specify the API credentials in the credentials json file: 10 11 {% highlight json %} 12 { 13 "r53":{ 14 "KeyId": "your-aws-key", 15 "SecretKey": "your-aws-secret-key" 16 } 17 } 18 {% endhighlight %} 19 20 You can also use environment variables, but this is discouraged, unless your environment provides them already. 21 22 ``` 23 $ export AWS_ACCESS_KEY_ID=XXXXXXXXX 24 $ export AWS_SECRET_ACCESS_KEY=YYYYYYYYY 25 ``` 26 27 You can find some other ways to authenticate to Route53 in the [go sdk configuration](https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html). 28 29 ## Metadata 30 This provider does not recognize any special metadata fields unique to route 53. 31 32 ## Usage 33 Example Javascript: 34 35 {% highlight js %} 36 var REG_NONE = NewRegistrar("none","NONE"); 37 var R53 = NewDnsProvider("r53", "ROUTE53"); 38 39 D("example.tld", REG_NONE, DnsProvider(R53), 40 A("test","1.2.3.4") 41 ); 42 {%endhighlight%} 43 44 ## Activation 45 DNSControl depends on a standard [AWS access key](https://aws.amazon.com/developers/access-keys/) with permission to list, create and update hosted zones. 46 47 ## New domains 48 If a domain does not exist in your Route53 account, DNSControl will *not* automatically add it with the `create-domains` command. You can do that either manually via the control panel, or via the command `dnscontrol create-domains` command. 49 50 ## Caveats 51 This code may not function properly if a domain has R53 as a Registrar 52 but not as a DnsProvider. The situation is described in 53 [PR#155](https://github.com/StackExchange/dnscontrol/pull/155). 54 55 In this situation you will see a message like: 56 57 ``` 58 ----- Registrar: r53 59 Error getting corrections: AccessDeniedException: User: arn:aws:iam::868399730840:user/dnscontrol is not authorized to perform: route53domains:GetDomainDetail 60 status code: 400, request id: 48b534a1-7902-11e7-afa6-a3fffd2ce139 61 Done. 1 corrections. 62 ``` 63 64 If this happens to you, we'd appreciate it if you could help us fix the code. In the meanwhile, you can give the account additional IAM permissions so that it can do DNS-related actions, or simply use `NewRegistrar(..., 'NONE')` for now.