

# Provedor de API: interromper o compartilhamento de um nome de domínio personalizado privado usando o AWS RAM
<a name="apigateway-private-custom-domains-provider-stop-sharing"></a>

Para interromper o compartilhamento de seu nome de domínio personalizado privado, primeiro impeça que o consumidor de API crie mais associações de acesso a nomes de domínio dissociando o compartilhamento de recursos. Em seguida, rejeite a associação de acesso ao nome de domínio e remova o endpoint da VPC do consumidor de API da `policy` referente ao serviço `execute-api`. O consumidor de API pode então excluir a associação de acesso ao nome de domínio que ele fez.

## Interromper o compartilhamento do nome de domínio personalizado privado
<a name="apigateway-private-custom-domains-provider-dissociate-ram"></a>

Primeiro, interrompa o compartilhamento de recursos usando o AWS RAM.

------
#### [ Console de gerenciamento da AWS ]

Para usar o Console de gerenciamento da AWS, consulte [Update a resource share in AWS RAM](https://docs.aws.amazon.com/ram/latest/userguide/working-with-sharing-update.html).

------
#### [ AWS CLI ]

O comando [disassociate-resource-share](https://docs.aws.amazon.com/cli/latest/reference/ram/disassociate-resource-share.html) indicado abaixo dissocia um compartilhamento de recursos para seu nome de domínio personalizado privado.

```
aws ram disassociate-resource-share \
    --region us-west-2 \
    --resource-arns arn:aws:apigateway:us-west-2:111122223333:/domainnames/private.example.com+abcd1234 \
    --principals 222222222222
```

------

## Rejeitar uma associação de acesso ao nome de domínio
<a name="apigateway-private-custom-domains-provider-reject"></a>

Depois de interromper o compartilhamento de seu recurso usando o AWS RAM, rejeite a associação de acesso ao nome de domínio entre um endpoint da VPC em outra conta e seu nome de domínio personalizado privado. 

**nota**  
Não é possível rejeitar uma associação de acesso ao nome de domínio em sua conta. Para interromper o compartilhamento de recursos, exclua a associação de acesso ao nome de domínio. Para ter mais informações, consulte [Excluir uma associação de acesso ao nome de domínio](apigateway-private-custom-domains-tutorial.md#apigateway-private-custom-domains-cleanup).

Quando você rejeita uma associação de acesso a um nome de domínio com um endpoint da VPC, se um consumidor de API tentar chamar seu nome de domínio personalizado privado, o API Gateway rejeitará a chamada e retornará um código de status `403`.

------
#### [ Console de gerenciamento da AWS ]

**Como rejeitar uma associação de acesso ao nome de domínio**

1. Faça login no console do API Gateway em [https://console.aws.amazon.com/apigateway](https://console.aws.amazon.com/apigateway).

1. No painel de navegação principal, selecione **Nomes de domínio personalizados**.

1. Escolha o nome de domínio personalizado privado que você compartilhou com outras Contas da AWS.

1. Em **Compartilhamento de recursos**, escolha a associação de acesso ao nome de domínio que você deseja rejeitar.

1. Escolha **Rejeitar associação**.

1. Confirme sua escolha e selecione **Rejeitar**.

------
#### [ AWS CLI ]

O comando `reject-domain-name-access-association` indicado abaixo rejeita a associação de acesso ao nome de domínio entre o endpoint da VPC e seu nome de domínio personalizado privado:

```
aws apigateway reject-domain-name-access-association \
    --domain-name-access-association-arn arn:aws:apigateway:us-west-2:444455556666:/domainnameaccessassociations/domainname/private.example.com+abcd1234/vpcesource/vpce-abcd1234efg \
    --domain-name-arn arn:aws:apigateway:us-west-2:111122223333:/domainnames/private.example.com+abcd1234
```

------

## Negar ao provedor de API acesso para invocar seu nome de domínio personalizado privado
<a name="apigateway-private-custom-domains-provider-deny-access"></a>

Depois de rejeitar a associação de acesso ao nome de domínio, remova o endpoint da VPC do consumidor de API da sua `policy` referente ao serviço `execute-api`.

------
#### [ Console de gerenciamento da AWS ]

**Como remover o endpoint da VPC do consumidor de API da sua política de recursos**

1. Faça login no console do API Gateway em [https://console.aws.amazon.com/apigateway](https://console.aws.amazon.com/apigateway).

1. No painel de navegação principal, selecione **Nomes de domínio personalizados**.

1. Escolha o nome de domínio personalizado privado que você compartilhou com outras Contas da AWS.

1. Na guia **Política de recursos**, escolha **Editar**.

1. Remova o endpoint da VPC da política.

1. Escolha **Salvar alterações**.

------
#### [ AWS CLI ]

O comando [update-domain-name](https://docs.aws.amazon.com/cli/latest/reference/apigateway/update-domain-name.html) a seguir usa uma operação de patch para atualizar a `policy` referente ao serviço `execute-api` de um nome de domínio personalizado privado. Essa nova `policy` remove um ID de endpoint da VPC adicional acrescentado em [Permita que outras contas invoquem seu nome de domínio personalizado privado](apigateway-private-custom-domains-provider-share.md#apigateway-private-custom-domains-provider-policy-update):

```
aws apigateway update-domain-name
    --domain-name private.example.com \
    --domain-name-id abcd1234 \
    --patch-operations op=replace,path=/policy,value='"{\"Version\": \"2012-10-17\",		 	 	 \"Statement\": [{\"Effect\": \"Allow\",\"Principal\": \"*\",\"Action\": \"execute-api:Invoke\",\"Resource\":[\"execute-api:/*\"]},{\"Effect\": \"Deny\",\"Principal\": \"*\",\"Action\": \"execute-api:Invoke\",\"Resource\":[\"execute-api:/*\"],\"Condition\":{\"StringNotEquals\":{\"aws:SourceVpce\": \"vpce-abcd1234efg\"}}}]}"
```

------

O consumidor de API deve então excluir a associação de acesso ao nome de domínio. Não é possível excluí-lo em nome dele. Para obter mais informações, consulte [Consumidor de API: excluir a associação de acesso ao nome de domínio com um nome de domínio personalizado privado](apigateway-private-custom-domains-consumer-delete-domain-name-access-association.md).