

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Oracle native network encryption
<a name="Appendix.Oracle.Options.NetworkEncryption"></a>

Amazon RDS supporta Native Network Encryption (NNE) di Oracle. Con l’opzione `NATIVE_NETWORK_ENCRYPTION`, puoi crittografare i dati quando vengono spostati da e verso un’istanza database. Amazon RDS supporta NNE per tutte le edizioni di Oracle Database.

Una descrizione dettagliata di NNE di Oracle non rientra nell'ambito di questa guida, ma è necessario conoscere i vantaggi e gli svantaggi di ogni algoritmo e chiave prima di scegliere una soluzione per la distribuzione. Per informazioni su algoritmi e chiavi disponibili mediante la crittografia di rete nativa di Oracle, consulta [Configuring Network Data Encryption](http://www.oracle.com/webfolder/technetwork/tutorials/obe/db/11g/r2/prod/security/network_encrypt/ntwrkencrypt.htm) nella documentazione di Oracle. Per ulteriori informazioni sulla sicurezza AWS, consulta il [Centro di Sicurezza AWS](https://aws.amazon.com/security).

**Nota**  
Puoi utilizzare Secure Sockets Layer o Native Network Encryption, ma non entrambi. Per ulteriori informazioni, consulta [Oracle Secure Sockets Layer](Appendix.Oracle.Options.SSL.md). 

**Topics**
+ [

# Impostazioni dell’opzione NATIVE\$1NETWORK\$1ENCRYPTION
](Oracle.Options.NNE.Options.md)
+ [

# Aggiunta dell’opzione NATIVE\$1NETWORK\$1ENCRYPTION
](Oracle.Options.NNE.Add.md)
+ [

# Impostazione dei valori NNE in sqlnet.ora
](Oracle.Options.NNE.Using.md)
+ [

# Modifica delle impostazioni dell’opzione NATIVE\$1NETWORK\$1ENCRYPTION
](Oracle.Options.NNE.ModifySettings.md)
+ [

# Rimozione dell’opzione NATIVE\$1NETWORK\$1ENCRYPTION
](Oracle.Options.NNE.Remove.md)

# Impostazioni dell’opzione NATIVE\$1NETWORK\$1ENCRYPTION
<a name="Oracle.Options.NNE.Options"></a>

È possibile specificare i requisiti di crittografia sia sul server che sul client. L'istanza database può fungere da client quando, ad esempio, utilizza un database link per connettersi a un altro database. È possibile evitare di forzare la crittografia sul lato server. Ad esempio, è possibile che non si desideri forzare tutte le comunicazioni client a utilizzare la crittografia perché il server lo richiede. In questo caso, è possibile forzare la crittografia sul lato client utilizzando le opzioni `SQLNET.*CLIENT`.

Amazon RDS supporta le seguenti impostazioni per l’opzione `NATIVE_NETWORK_ENCRYPTION`.

**Nota**  
Quando si utilizzano virgole per separare i valori per un'impostazione di opzione, non inserire uno spazio dopo la virgola.


****  

| Impostazione opzioni | Valori validi | Valori predefiniti | Description | 
| --- | --- | --- | --- | 
|  `SQLNET.ALLOW_WEAK_CRYPTO_CLIENTS`  |  `TRUE`, `FALSE`  |  `TRUE`  |  Il comportamento del server quando un client che utilizza una crittografia non sicura tenta di connettersi al database. Se `TRUE`, i client possono connettersi anche se non sono stati sottoposti a patch con la PSU di luglio 2021.  Se l'impostazione è `FALSE`, i client possono connettersi al database solo quando vengono sottoposti a patch con la PSU di luglio 2021. Prima di impostare `SQLNET.ALLOW_WEAK_CRYPTO_CLIENTS` su `FALSE`, assicurati che siano soddisfatte le seguenti condizioni: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/AmazonRDS/latest/UserGuide/Oracle.Options.NNE.Options.html)  | 
|  `SQLNET.ALLOW_WEAK_CRYPTO`  |  `TRUE`, `FALSE`  |  `TRUE`  |  Il comportamento del server quando un client che utilizza una crittografia non sicura tenta di connettersi al database. Le seguenti crittografie sono considerate non sicure: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/AmazonRDS/latest/UserGuide/Oracle.Options.NNE.Options.html) Se l'impostazione è `TRUE`, i client possono connettersi quando utilizzano crittografie precedenti non sicure. Se l'impostazione è `FALSE`, il database impedisce ai client di connettersi quando utilizzano crittografie precedenti non sicure. Prima di impostare `SQLNET.ALLOW_WEAK_CRYPTO` su `FALSE`, assicurati che siano soddisfatte le seguenti condizioni: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/AmazonRDS/latest/UserGuide/Oracle.Options.NNE.Options.html)  | 
|  `SQLNET.CRYPTO_CHECKSUM_CLIENT`  |  `Accepted`, `Rejected`, `Requested`, `Required`   |  `Requested`  |  Il comportamento dell'integrità dei dati quando un'istanza database si connette al client, oppure un server che agisce come client. Quando un'istanza database utilizza un collegamento di database, agisce come un client. `Requested` indica che il client non richiede che l'istanza database eseguire un checksum.  | 
|  `SQLNET.CRYPTO_CHECKSUM_SERVER`  |  `Accepted`, `Rejected`, `Requested`, `Required`   |  `Requested`  |  Il comportamento dell'integrità dei dati quando un client, oppure un server che agisce come client, si connette all'istanza database. Quando un'istanza database utilizza un collegamento di database, agisce come un client. `Requested` indica che l'istanza database non richiede al client di eseguire un checksum.  | 
|  `SQLNET.CRYPTO_CHECKSUM_TYPES_CLIENT`  |  `SHA256`, `SHA384`, `SHA512`, `SHA1`, `MD5`  |  `SHA256`, `SHA384`, `SHA512`  |  Un elenco di algoritmi di checksum. È possibile specificare un valore o un elenco di valori separato da virgole. Se si utilizza una virgola, non inserire uno spazio dopo la virgola, altrimenti verrà visualizzato un errore `InvalidParameterValue`. Questo parametro e `SQLNET.CRYPTO_CHECKSUM_TYPES_SERVER ` deve avere una crittografia comune.  | 
|  `SQLNET.CRYPTO_CHECKSUM_TYPES_SERVER`  |  `SHA256`, `SHA384`, `SHA512`, `SHA1`, `MD5`  |  `SHA256`, `SHA384`, `SHA512`, `SHA1`, `MD5`  |  Un elenco di algoritmi di checksum. È possibile specificare un valore o un elenco di valori separato da virgole. Se si utilizza una virgola, non inserire uno spazio dopo la virgola, altrimenti verrà visualizzato un errore `InvalidParameterValue`. Questo parametro e `SQLNET.CRYPTO_CHECKSUM_TYPES_CLIENT` deve avere una crittografia comune.  | 
|  `SQLNET.ENCRYPTION_CLIENT`  |  `Accepted`, `Rejected`, `Requested`, `Required`   |  `Requested`  |  Il comportamento della crittografia del client quando un client, oppure un server che agisce come client, si connette all'istanza database. Quando un'istanza database utilizza un collegamento di database, agisce come un client. `Requested` indica che il client non richiede la crittografia del traffico dal server.  | 
|  `SQLNET.ENCRYPTION_SERVER`  |  `Accepted`, `Rejected`, `Requested`, `Required`   |  `Requested`  |  Il comportamento della crittografia del server quando un client, oppure un server che agisce come client, si connette all'istanza database. Quando un'istanza database utilizza un collegamento di database, agisce come un client. `Requested` indica che l'istanza database non richiede la crittografia del traffico dal client.  | 
|  `SQLNET.ENCRYPTION_TYPES_CLIENT`  |  `RC4_256`, `AES256`, `AES192`, `3DES168`, `RC4_128`, `AES128`, `3DES112`, `RC4_56`, `DES`, `RC4_40`, `DES40`  |  `RC4_256`, `AES256`, `AES192`, `3DES168`, `RC4_128`, `AES128`, `3DES112`, `RC4_56`, `DES`, `RC4_40`, `DES40`  |  Un elenco degli algoritmi di crittografia utilizzati dal client. Il client tenta di decrittografare l'input del server eseguendo ciascun algoritmo in sequenza, fino alla corretta esecuzione di un algoritmo o fino alla fine dell'elenco.  Amazon RDS utilizza il seguente elenco predefinito di Oracle. RDS inizia con `RC4_256` e procede in sequenza scorrendo l'elenco. Puoi cambiare l'ordine o limitare gli algoritmi che l'istanza database accetterà.  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/AmazonRDS/latest/UserGuide/Oracle.Options.NNE.Options.html) È possibile specificare un valore o un elenco di valori separato da virgole. Se si utilizza una virgola, non inserire uno spazio dopo la virgola; in caso contrario, viene visualizzato un errore `InvalidParameterValue`. Questo parametro e `SQLNET.SQLNET.ENCRYPTION_TYPES_SERVER` deve avere una crittografia comune.  | 
|  `SQLNET.ENCRYPTION_TYPES_SERVER`  |  `RC4_256`, `AES256`, `AES192`, `3DES168`, `RC4_128`, `AES128`, `3DES112`, `RC4_56`, `DES`, `RC4_40`, `DES40`  |  `RC4_256`, `AES256`, `AES192`, `3DES168`, `RC4_128`, `AES128`, `3DES112`, `RC4_56`, `DES`, `RC4_40`, `DES40`  |  Un elenco degli algoritmi di crittografia utilizzati dall'istanza database. L'istanza database utilizza ogni algoritmo, nell'ordine, per tentare di decrittografare l'input del client fino alla corretta esecuzione di un algoritmo o fino alla fine dell'elenco.  Amazon RDS utilizza il seguente elenco predefinito di Oracle. Puoi cambiare l'ordine o limitare gli algoritmi che il client accetterà.  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/AmazonRDS/latest/UserGuide/Oracle.Options.NNE.Options.html) È possibile specificare un valore o un elenco di valori separato da virgole. Se si utilizza una virgola, non inserire uno spazio dopo la virgola; in caso contrario, viene visualizzato un errore `InvalidParameterValue`. Questo parametro e `SQLNET.SQLNET.ENCRYPTION_TYPES_SERVER` deve avere una crittografia comune.  | 

# Aggiunta dell’opzione NATIVE\$1NETWORK\$1ENCRYPTION
<a name="Oracle.Options.NNE.Add"></a>

Di seguito è riportata la procedura generale per aggiungere l’opzione `NATIVE_NETWORK_ENCRYPTION` a un’istanza database: 

1. Creare un nuovo gruppo di opzioni oppure copiare o modificare un gruppo di opzioni esistente.

1. Aggiungere l'opzione al gruppo di opzioni.

1. Associare il gruppo di opzioni a questa istanza database.

Quando il gruppo di opzioni è attivo, NNE è attiva. 

**Per aggiungere l'opzione NATIVE\$1NETWORK\$1ENCRYPTION a un'istanza DB utilizzando Console di gestione AWS**

1. Per **Engine (Motore)**, scegliere l'edizione di Oracle da utilizzare. NNE è supportato in tutte le edizioni. 

1. In **Major engine version (Versione principale del motore)**, scegliere la versione dell'istanza database. 

   Per ulteriori informazioni, consulta [Creazione di un gruppo di opzioni](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.Create). 

1. Aggiungere l’opzione **NATIVE\$1NETWORK\$1ENCRYPTION** al gruppo di opzioni. Per ulteriori informazioni sull'aggiunta di opzioni, consulta [Aggiunta di un'opzione a un gruppo di opzioni](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.AddOption).
**Nota**  
Una volta aggiunta l’opzione **NATIVE\$1NETWORK\$1ENCRYPTION**, non è necessario riavviare le istanze database. Non appena il gruppo di opzioni è attivo, NNE è attiva. 

1. Applicare il gruppo di opzioni a un'istanza database nuova o esistente: 
   + Per una nuova istanza database, si applica il gruppo di opzioni quando viene avviata l'istanza. Per ulteriori informazioni, consulta [Creazione di un'istanza database Amazon RDS](USER_CreateDBInstance.md).
   + Per un'istanza database esistente, viene applicato il gruppo di opzioni modificando l'istanza e collegando il nuovo gruppo di opzioni. Una volta aggiunta l’opzione **NATIVE\$1NETWORK\$1ENCRYPTION**, non è necessario riavviare l’istanza database. Non appena il gruppo di opzioni è attivo, NNE è attiva. Per ulteriori informazioni, consulta [Modifica di un'istanza database Amazon RDS](Overview.DBInstance.Modifying.md). 

# Impostazione dei valori NNE in sqlnet.ora
<a name="Oracle.Options.NNE.Using"></a>

Con crittografia di rete nativa di Oracle, puoi impostare la crittografia di rete sul lato server e sul lato client. Il client è il computer utilizzato per connettersi all'istanza database. È possibile specificare le seguenti impostazioni client in slqnet.ora: 
+ `SQLNET.ALLOW_WEAK_CRYPTO`
+ `SQLNET.ALLOW_WEAK_CRYPTO_CLIENTS`
+ `SQLNET.CRYPTO_CHECKSUM_CLIENT`
+ `SQLNET.CRYPTO_CHECKSUM_TYPES_CLIENT`
+ `SQLNET.ENCRYPTION_CLIENT`
+ `SQLNET.ENCRYPTION_TYPES_CLIENT`

Per informazioni, consulta [Configuring Network Data Encryption and Integrity for Oracle Servers and Clients](http://docs.oracle.com/cd/E11882_01/network.112/e40393/asoconfg.htm) nella documentazione di Oracle.

Talvolta, l'istanza database rifiuta una richiesta di connessione da un'applicazione. Ad esempio, un rifiuto può verificarsi quando gli algoritmi di crittografia sul client e sul server non corrispondono. Per testare crittografia di rete nativa di Oracle, aggiungi le seguenti righe al file sqlnet.ora sul client: 

```
DIAG_ADR_ENABLED=off
TRACE_DIRECTORY_CLIENT=/tmp
TRACE_FILE_CLIENT=nettrace
TRACE_LEVEL_CLIENT=16
```

Quando si esegue un tentativo di connessione, le righe precedenti generano un file di traccia sul client denominato `/tmp/nettrace*`. Il file di traccia contiene informazioni sulla connessione. Per ulteriori informazioni sui problemi relativi alla connessione quando si utilizza NNE, consulta [About Negotiating Encryption and Integrity](http://docs.oracle.com/cd/E11882_01/network.112/e40393/asoconfg.htm#autoId12) nella documentazione di Oracle Database.

# Modifica delle impostazioni dell’opzione NATIVE\$1NETWORK\$1ENCRYPTION
<a name="Oracle.Options.NNE.ModifySettings"></a>

Dopo aver abilitato l'opzione `NATIVE_NETWORK_ENCRYPTION`, puoi modificarne le impostazioni. Attualmente, è possibile modificare le impostazioni delle `NATIVE_NETWORK_ENCRYPTION` opzioni solo con l'API AWS CLI o RDS. Non puoi utilizzare la console. L’esempio seguente modifica due impostazioni nell’opzione.

```
aws rds add-option-to-option-group \
    --option-group-name my-option-group \
    --options "OptionName=NATIVE_NETWORK_ENCRYPTION,OptionSettings=[{Name=SQLNET.CRYPTO_CHECKSUM_TYPES_SERVER,Value=SHA256},{Name=SQLNET.CRYPTO_CHECKSUM_TYPES_SERVER,Value=SHA256}]" \
    --apply-immediately
```

Per informazioni su come modificare le impostazioni dell'opzione utilizzando la CLI, consulta [AWS CLI](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.ModifyOption.CLI). Per ulteriori informazioni su ciascuna impostazione, consulta [Impostazioni dell’opzione NATIVE\$1NETWORK\$1ENCRYPTION](Oracle.Options.NNE.Options.md).

**Topics**
+ [

## Modifica dei valori CRYPTO\$1CHECKSUM\$1\$1
](#Oracle.Options.NNE.ModifySettings.checksum)
+ [

## Modifica delle impostazioni ALLOW\$1WEAK\$1CRYPTO\$1
](#Oracle.Options.NNE.ModifySettings.encryption)

## Modifica dei valori CRYPTO\$1CHECKSUM\$1\$1
<a name="Oracle.Options.NNE.ModifySettings.checksum"></a>

Se modifichi le impostazioni dell’opzione **NATIVE\$1NETWORK\$1ENCRYPTION**, assicurati che le seguenti impostazioni dell’opzione abbiano almeno una crittografia comune:
+ `SQLNET.CRYPTO_CHECKSUM_TYPES_SERVER`
+ `SQLNET.CRYPTO_CHECKSUM_TYPES_CLIENT`

L'esempio seguente mostra uno scenario in cui si modifica `SQLNET.CRYPTO_CHECKSUM_TYPES_SERVER`. La configurazione è valida perché sia `CRYPTO_CHECKSUM_TYPES_CLIENT` che `CRYPTO_CHECKSUM_TYPES_SERVER` utilizzano `SHA256`.


| Impostazione opzioni | Valori prima della modifica | Valori dopo la modifica | 
| --- | --- | --- | 
|  `SQLNET.CRYPTO_CHECKSUM_TYPES_CLIENT`  |  `SHA256`, `SHA384`, `SHA512`  |  Nessuna modifica  | 
|  `SQLNET.CRYPTO_CHECKSUM_TYPES_SERVER`  |  `SHA256`, `SHA384`, `SHA512`, `SHA1`, `MD5`  | SHA1,MD5,SHA256 | 

Per un altro esempio, si supponga di voler modificare `SQLNET.CRYPTO_CHECKSUM_TYPES_SERVER` dalla sua impostazione di default a `SHA1,MD5`. In questo caso, assicurati di impostare `SQLNET.CRYPTO_CHECKSUM_TYPES_CLIENT` a `SHA1` o `MD5`. Questi algoritmi non sono inclusi nei valori di default per `SQLNET.CRYPTO_CHECKSUM_TYPES_CLIENT`.

## Modifica delle impostazioni ALLOW\$1WEAK\$1CRYPTO\$1
<a name="Oracle.Options.NNE.ModifySettings.encryption"></a>

Per impostare le opzioni `SQLNET.ALLOW_WEAK_CRYPTO*` dal valore di default `FALSE`, accertati che siano soddisfatte le seguenti condizioni:
+ `SQLNET.ENCRYPTION_TYPES_SERVER` e `SQLNET.ENCRYPTION_TYPES_CLIENT` hanno un metodo di crittografia sicuro corrispondente. Un metodo è considerato sicuro se non è `DES`, `3DES` oppure `RC4` (tutte le lunghezze di chiave).
+ `SQLNET.CHECKSUM_TYPES_SERVER` e `SQLNET.CHECKSUM_TYPES_CLIENT` hanno un metodo di checksum sicuro corrispondente. Un metodo è considerato sicuro se non è `MD5`.
+ Il client viene sottoposto a patch con la PSU di luglio 2021. Se non è stato sottoposto a patch, il client perde la connessione e riceve l’errore `ORA-12269`.

Il seguente esempio mostra impostazioni NNE di esempio. Supponiamo di voler impostare `SQLNET.ENCRYPTION_TYPES_SERVER` e `SQLNET.ENCRYPTION_TYPES_CLIENT` su FALSE, bloccando così connessioni non sicure. Le impostazioni dell'opzione checksum soddisfano i prerequisiti perché entrambe hanno `SHA256`. Tuttavia, `SQLNET.ENCRYPTION_TYPES_CLIENT` e `SQLNET.ENCRYPTION_TYPES_SERVER` utilizzano i metodi di crittografia `DES`, `3DES` e `RC4`, che non sono sicuri. Pertanto, per impostare l’opzione `SQLNET.ALLOW_WEAK_CRYPTO*` su `FALSE`, imposta prima `SQLNET.ENCRYPTION_TYPES_SERVER` e `SQLNET.ENCRYPTION_TYPES_CLIENT` su un metodo di crittografia sicuro come `AES256`.


| Impostazione opzioni | Valori | 
| --- | --- | 
|  `SQLNET.CRYPTO_CHECKSUM_TYPES_CLIENT`  |  `SHA256`, `SHA384`, `SHA512`  | 
|  `SQLNET.CRYPTO_CHECKSUM_TYPES_SERVER`  | SHA1,MD5,SHA256 | 
|  `SQLNET.ENCRYPTION_TYPES_CLIENT`  |  `RC4_256`, `3DES168`, `DES40`  | 
|  `SQLNET.ENCRYPTION_TYPES_SERVER`  |  `RC4_256`, `3DES168`, `DES40`  | 

# Rimozione dell’opzione NATIVE\$1NETWORK\$1ENCRYPTION
<a name="Oracle.Options.NNE.Remove"></a>

Puoi rimuovere NNE da un'istanza database. 

Per rimuovere l'opzione `NATIVE_NETWORK_ENCRYPTION` dall'istanza database, procedi in uno dei seguenti modi: 
+ Per rimuovere l’opzione da più istanze database, rimuovi `NATIVE_NETWORK_ENCRYPTION` dal gruppo di opzioni a cui appartengono le istanze. Questa modifica coinvolge tutte le istanze database che usano il gruppo di opzioni. Una volta rimossa l’opzione `NATIVE_NETWORK_ENCRYPTION`, non è necessario riavviare le istanze database. Per ulteriori informazioni, consulta [Rimozione di un'opzione da un gruppo di opzioni](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.RemoveOption). 
+ Per rimuovere l’opzione da una singola istanza database, modifica l’istanza e specifica un gruppo di opzioni diverso che non comprenda l’opzione `NATIVE_NETWORK_ENCRYPTION`. È possibile specificare il gruppo di opzioni predefinito (vuoto) o un gruppo di opzioni personalizzato diverso. Una volta rimossa l'opzione `NATIVE_NETWORK_ENCRYPTION` non è necessario riavviare la tua istanza database. Per ulteriori informazioni, consulta [Modifica di un'istanza database Amazon RDS](Overview.DBInstance.Modifying.md). 