Requisitos
| OCID da subnet de origem | Obrigatório |
| OCID da subnet de destino | Obrigatório |
Em algum momento trabalhando com Oracle Cloud será a necessário copiar/replicar security list para outros ambientes, seja para obter alta disponibilidade, trabalhar com múltiplas regiões ou simplesmente para criar um lab para testes. Caso tenha SL com muitas regras isso pode se tornar uma tarefa difícil, imagine adicionar 100 regras ou mais uma a uma via console da cloud.
Obtenha o OCID das subnets de origem e destino
Navegue até Networking > Virtual Cloud Networks > Virtual Cloud Network Details > Security Lists, copie o OCID da Security List de Origem, observe as 133 regras entre Ingress Rules e Egress Rules.

Copie o OCID da Security List de Destino.

Copiando regras da security list de origem
Via interface gráfica copiar e atualizar as regras de uma SL para outra leva muito tempo, mas com o OCI CLI a mesma tarefa leva apenas alguns segundos.
$ oci network security-list get --security-list-id ocid1.securitylist.oc1.sa-saopaulo-1.aaaaaaaabcsvprvix3wkw5p4we5cvjafpskeaio6kjr2ltbe3dhq6dr5osyq
Observe que o output é toda a estrutura da security list com informações de compartment, display name, egress-security-rules, ingress-security-rules. Mas vamos precisar apenas egress-security-rules e ingress-security-rules.

Para filtrar apenas os dados necessários, será utilizado o jq que é um processador de linha de comando para JSON. Será feito em duas etapas para egress-security-rules e ingress-security-rules.
Regras de Egress
$ oci network security-list get --security-list-id ocid1.securitylist.oc1.sa-saopaulo-1.aaaaaaaabcsvprvix3wkw5p4we5cvjafpskeaio6kjr2ltbe3dhq6dr5osyq | jq '.data."egress-security-rules"'
Com isso o output traz apenas as regras de egress.

Adicione as regras de egress a serem “clonadas” para o arquivo egress.json.
$ oci network security-list get --security-list-id ocid1.securitylist.oc1.sa-saopaulo-1.aaaaaaaabcsvprvix3wkw5p4we5cvjafpskeaio6kjr2ltbe3dhq6dr5osyq | jq '.data."egress-security-rules"' > egress.json
Então atualize a security list de destino com as regras contidas no arquivo egress.json, use o OCID da security list de destino. Quando solicitado confirme as alterações digitando y para confirmar.
$ oci network security-list update --security-list-id ocid1.securitylist.oc1.sa-saopaulo-1.aaaaaaaa6irvzcxv65aralnk5bt7wzinqhqkgghrbxiepoh5caeu77yafeta --egress-security-rules file://egress.json
Regras de Ingress
Basta repetir os passos da task anterior agora apontando para as regras de Ingress.
$ oci network security-list get --security-list-id ocid1.securitylist.oc1.sa-saopaulo-1.aaaaaaaabcsvprvix3wkw5p4we5cvjafpskeaio6kjr2ltbe3dhq6dr5osyq | jq '.data."ingress-security-rules"'
Com isso o output traz apenas as regras de ingress.

Adicione as regras de ingress a serem “clonadas” para o arquivo ingress.json.
$ oci network security-list get --security-list-id ocid1.securitylist.oc1.sa-saopaulo-1.aaaaaaaabcsvprvix3wkw5p4we5cvjafpskeaio6kjr2ltbe3dhq6dr5osyq | jq '.data."ingress-security-rules"' > ingress.json
Então atualize a security list de destino com as regras contidas no arquivo ingress.json, use o OCID da security list de destino. Quando solicitado confirme as alterações digitando y para confirmar.
$ oci network security-list update --security-list-id ocid1.securitylist.oc1.sa-saopaulo-1.aaaaaaaa6irvzcxv65aralnk5bt7wzinqhqkgghrbxiepoh5caeu77yafeta --ingress-security-rules file://ingress.json
Agora todas as regras de egress e ingress foram “clonadas” com sucesso.
