Manutenzione e risoluzione dei problemi di Connettore SQL ServerSQL Server Connector Maintenance & Troubleshooting

In questo argomento si applica a: SìSQL ServernonDatabase SQL di AzurenonAzure SQL Data Warehouse non Parallel Data WarehouseTHIS TOPIC APPLIES TO: yesSQL ServernoAzure SQL DatabasenoAzure SQL Data Warehouse noParallel Data Warehouse

Informazioni supplementari sul Connettore SQL ServerSQL Server sono disponibili in questo argomento.Supplemental information about the SQL ServerSQL Server Connector is provided in this topic. Per altre informazioni sul Connettore SQL ServerSQL Server, vedere Extensible Key Management con l'insieme di credenziali delle chiavi di Azure (SQL Server), Procedura di installazione di Extensible Key Management con l'insieme di credenziali delle chiavi di Azure e Usare Connettore SQL Server con le funzionalità di crittografia SQL.For more information about the SQL ServerSQL Server connector, see Extensible Key Management Using Azure Key Vault (SQL Server), Setup Steps for Extensible Key Management Using the Azure Key Vault, and Use SQL Server Connector with SQL Encryption Features.

A.A. Istruzioni di manutenzione per Connettore SQL ServerSQL ServerMaintenance Instructions for SQL ServerSQL Server Connector

Rollover della chiaveKey Rollover

Importante

Connettore SQL ServerSQL Server richiede che il nome della chiave usi soli i caratteri "a-z", "A-Z", "0-9", e "-", con un limite di 26 caratteri.The SQL ServerSQL Server Connector requires the key name to only use the characters “a-z”, “A-Z”, “0-9”, and “-“, with a 26-character limit.
Versioni diverse della chiave con lo stesso nome di chiave nell'insieme di credenziali delle chiavi di Azure non funzioneranno con il Connettore SQL ServerSQL Server .Different key versions under the same key name in Azure Key Vault will not work with SQL ServerSQL Server Connector. Per ruotare una chiave dell'insieme di credenziali delle chiavi di Azure usata da SQL ServerSQL Server, è necessario creare una nuova chiave con un nuovo nome.To rotate an Azure Key Vault key that’s being used by SQL ServerSQL Server, a new key with a new key name must be created.

In genere, il controllo delle versioni delle chiavi asimmetriche del server per la crittografia di SQL ServerSQL Server deve essere eseguito ogni 1-2 anni.Typically server asymmetric keys for SQL ServerSQL Server encryption need to be versioned every 1-2 years. È importante notare che, anche se l'insieme di credenziali delle chiavi consente il controllo delle versioni delle chiavi, i clienti non dovrebbero usare questa funzionalità per implementare il controllo delle versioni.It's important to note that although the Key Vault allows keys to be versioned, customers should not use that feature to implement versioning. Connettore SQL ServerSQL Server non può gestire le modifiche alla versione della chiave nell'insieme di credenziali delle chiavi.The SQL ServerSQL Server Connector cannot deal with changes in Key Vault key version. Per implementare il controllo delle versioni delle chiavi, è necessario che il cliente crei una nuova chiave nell'insieme di credenziali delle chiavi e quindi crittografi di nuovo la chiave di crittografia dei dati in Management StudioManagement Studio.To implement key versioning, the customer must create a new key in the Key Vault and then re-encrypt the data encryption key in Management StudioManagement Studio.

Ecco come si ottiene questo risultato per TDE:For TDE, this is how this would be achieved:

  • In PowerShell: creare una nuova chiave asimmetrica (con un nome diverso dalla chiave asimmetrica TDE corrente) nell'insieme di credenziali delle chiavi.In PowerShell: Create a new asymmetric key (with a different name from your current TDE asymmetric key) in the Key Vault.

    Add-AzureRmKeyVaultKey -VaultName 'ContosoDevKeyVault' `  
      -Name 'Key2' -Destination 'Software'  
    
  • Uso di Management StudioManagement Studio o sqlcmd.exe: usare le istruzioni seguenti, come illustrato nella sezione 3 del passaggio 3.Using Management StudioManagement Studio or sqlcmd.exe: Use the following statements as shown in Step 3, section 3.

    Importare la nuova chiave asimmetrica.Import the new asymmetric key.

    USE master  
    CREATE ASYMMETRIC KEY [MASTER_KEY2]   
    FROM PROVIDER [EKM]   
    WITH PROVIDER_KEY_NAME = 'Key2',   
    CREATION_DISPOSITION = OPEN_EXISTING   
    GO  
    

    Creare un nuovo account di accesso da associare alla nuova chiave asimmetrica (come illustrato nelle istruzioni relative a TDE).Create a new login to be associated with the new asymmetric key (as shown under the TDE instructions).

    USE master  
    CREATE LOGIN TDE_Login2   
    FROM ASYMMETRIC KEY [MASTER_KEY2]  
    GO  
    

    Creare nuove credenziali per il mapping all'account di accesso.Create a new credential to be mapped to the login.

    CREATE CREDENTIAL Azure_EKM_TDE_cred2  
        WITH IDENTITY = 'ContosoDevKeyVault',   
       SECRET = 'EF5C8E094D2A4A769998D93440D8115DAADsecret123456789=’   
    FOR CRYPTOGRAPHIC PROVIDER EKM;  
    
    ALTER LOGIN TDE_Login2  
    ADD CREDENTIAL Azure_EKM_TDE_cred2;  
    GO  
    

    Scegliere il database per cui si vuole crittografare di nuovo la chiave di crittografia del database.Choose the database whose database encryption key you would like to re-encrypt.

    USE [database]  
    GO  
    

    Crittografare di nuovo la chiave di crittografia del database.Re-encrypt the database encryption key.

    ALTER DATABASE ENCRYPTION KEY   
    ENCRYPTION BY SERVER ASYMMETRIC KEY [MASTER_KEY2];  
    GO  
    

Aggiornamento del Connettore SQL ServerSQL ServerUpgrade of SQL ServerSQL Server Connector

Le versioni 1.0.0.440 e precedenti sono state sostituite e non sono più supportate negli ambienti di produzione.Versions 1.0.0.440 and older have been replaced and are no longer supported in production environments. Le versioni 1.0.1.0 e successive sono supportate negli ambienti di produzione.Versions 1.0.1.0 and newer are supported in production environments. Usare le istruzioni seguenti per eseguire l'aggiornamento alla versione più recente disponibile nell' Area download Microsoft.Please use the following instructions to upgrade to the latest version available on the Microsoft Download Center.

Se è in uso la versione 1.0.1.0 o una versione successiva, seguire questa procedura per eseguire l'aggiornamento alla versione più recente del Connettore SQL ServerSQL Server .If you are currently using Version 1.0.1.0 or newer, follow these steps to update to the latest version of the SQL ServerSQL Server Connector. Queste istruzioni evitano di dover riavviare l'istanza di SQL ServerSQL Server .These instructions avoid the need to restart the SQL ServerSQL Server instance.

  1. Installare la versione più recente del Connettore SQL ServerSQL Server dall' Area download Microsoft.Install the newest version of the SQL ServerSQL Server Connector from the Microsoft Download Center. Nell'installazione guidata salvare il nuovo file DLL in un percorso di file diverso dal percorso del file DLL del Connettore SQL ServerSQL Server originale.In the installer wizard, save the new DLL file under a file path different from your original SQL ServerSQL Server Connector DLL's file path. Il nuovo percorso di file potrebbe ad esempio essere: C:\Program Files\SQL Server Connector for Microsoft Azure Key Vault\<latest version number>\Microsoft.AzureKeyVaultService.EKM.dllFor example, the new file path could be: C:\Program Files\SQL Server Connector for Microsoft Azure Key Vault\<latest version number>\Microsoft.AzureKeyVaultService.EKM.dll

  2. Nell'istanza di SQL ServerSQL Servereseguire il comando Transact-SQL seguente per fare in modo che l'istanza di SQL ServerSQL Server punti alla nuova versione del Connettore SQL ServerSQL Server :In the instance of the SQL ServerSQL Server, run the following Transact-SQL command to point your SQL ServerSQL Server instance to your new version of the SQL ServerSQL Server Connector:

    ALTER CRYPTOGRAPHIC PROVIDER AzureKeyVault_EKM_Prov   
    FROM FILE =   
    'C:\Program Files\SQL Server Connector for Microsoft Azure Key Vault\<latest version number>\Microsoft.AzureKeyVaultService.EKM.dll'
    GO  
    

Se è in uso la versione 1.0.0.440 o una versione precedente, seguire questa procedura per eseguire l'aggiornamento alla versione più recente del Connettore SQL ServerSQL Server .If you are currently using Version 1.0.0.440 or older, follow these steps to update to the latest version of the SQL ServerSQL Server Connector.

  1. Arrestare l'istanza di SQL ServerSQL Server.Stop the instance of SQL ServerSQL Server.

  2. Arrestare il servizio del Connettore SQL ServerSQL Server .Stop the SQL ServerSQL Server Connector service.

  3. Disinstallare Connettore SQL ServerSQL Server usando Programmi e funzionalità di Windows.Uninstall the SQL ServerSQL Server Connector using the Windows Programs and Features feature.

    In alternativa, è possibile rinominare la cartella in cui si trova il file DLL.(Alternatively, you can rename the folder that the DLL file is in. Il nome predefinito della cartella è " SQL ServerSQL Server per Insieme credenziali chiavi Microsoft Azure".The default name of the folder is “ SQL ServerSQL Server for Microsoft Azure Key Vault”.

  4. Installare la versione più recente del Connettore SQL ServerSQL Server dall'Area download Microsoft.Install the newest version of the SQL ServerSQL Server Connector from the Microsoft Download Center.

  5. Riavviare l'istanza di SQL ServerSQL Server.Restart the instance of SQL ServerSQL Server.

  6. Eseguire questa istruzione per modificare il provider EKM per iniziare a usare la versione più recente del Connettore SQL ServerSQL Server .Run the following statement to alter the EKM Provider to start using the newest version of the SQL ServerSQL Server Connector. Assicurarsi che il percorso file punti alla posizione in cui è stata scaricata la versione più recente.Make sure that the file path is pointing to where you downloaded the newest version. È possibile ignorare questo passaggio se la nuova versione viene installata nello stesso percorso della versione originale.(This step can be skipped if the new version is being installed in the same location as the original version.)

    ALTER CRYPTOGRAPHIC PROVIDER AzureKeyVault_EKM_Prov   
    FROM FILE =   
    'C:\Program Files\SQL Server Connector for Microsoft Azure Key Vault\Microsoft.AzureKeyVaultService.EKM.dll';  
    GO  
    
  7. Verificare che i database che usano TDE siano accessibili.Check that the databases using TDE are accessible.

  8. Dopo aver verificato il corretto funzionamento dell'aggiornamento, è possibile eliminare la cartella precedente di Connettore SQL ServerSQL Server se si è scelto di rinominarla invece di disinstallarla nel passaggio 3.After validating that the update works, you may delete the old SQL ServerSQL Server Connector folder (if you chose to rename it instead of uninstalling in Step 3.)

Rollover dell'entità servizio di SQL ServerSQL ServerRolling the SQL ServerSQL Server Service Principal

SQL ServerSQL Server usa le entità servizio create in Azure Active Directory come credenziali per accedere all'insieme di credenziali delle chiavi. uses Service Principals created in Azure Active Directory as credentials to access the Key Vault. L'entità servizio ha un ID client e una chiave di autenticazione.Service Principal has a Client ID and Authentication Key. Le credenziali di SQL ServerSQL Server vengono configurate con il nome dell'insieme di credenziali, l' ID cliente la chiave di autenticazione.A SQL ServerSQL Server credential is set up with the VaultName, Client ID, and Authentication Key. La chiave di autenticazione è valida per un determinato periodo di tempo (1 o 2 anni).The Authentication Key is valid for a certain period of time (1 or 2 years). Prima della scadenza è necessario generare una nuova chiave in Azure AD per l'entità servizio.Before the time period expires a new key must be generated in Azure AD for the Service Principal. Successivamente è necessario cambiare le credenziali in SQL ServerSQL Server.Then the credential has to be changed in SQL ServerSQL Server. Management StudioManagement Studio mantiene una cache per le credenziali nella sessione corrente, per cui, quando vengono modificate le credenziali, Management StudioManagement Studio deve essere riavviato. maintains a cache for the credential in the current session, so when a credential is changed, Management StudioManagement Studio should be restarted.

Backup e ripristino delle chiaviKey Backup and Recovery

È importante eseguire regolarmente il backup dell'insieme di credenziali delle chiavi.The Key vault should be regularly backed up. In caso di perdita di una chiave asimmetrica nell'insieme di credenziali, è possibile ripristinarla dal backup.If an asymmetric key in the vault is lost, it can be restored from backup. La chiave deve essere ripristinata usando lo stesso nome precedente con il comando Restore di PowerShell (vedere i passaggi successivi).The key must be restored using the same name as before, which the Restore PowerShell command will do (see below steps).
In caso di perdita dell'insieme di credenziali, è necessario ricreare un insieme di credenziali e ripristinare la chiave asimmetrica al suo interno usando lo stesso nome assegnato in precedenza.If the vault has been lost, you will need to recreate a vault and restore the asymmetric key to the vault using the same name as before. Il nome dell'insieme di credenziali può essere diverso o uguale rispetto a prima.The vault name can be different (or the same as before). È necessario impostare anche le autorizzazioni di accesso nel nuovo insieme di credenziali per concedere all'entità servizio di SQL Server l'accesso richiesto per gli scenari di crittografia di SQL Server e quindi modificare le credenziali di SQL Server in modo che includano il nuovo nome dell'insieme di credenziali.You must also set the access permissions on the new vault to grant to the SQL Server service principal the access that is needed for the SQL Server encryption scenarios and then adjust the SQL Server credential so that the new vault name is reflected.
In sintesi, ecco i passaggi necessari:In summary, here are the steps:

  • Eseguire il backup della chiave dell'insieme di credenziali usando il cmdlet di Powershell Backup-AzureKeyVaultKey.Backup the vault key (using the Backup-AzureKeyVaultKey Powershell cmdlet).
  • In caso di errore dell'insieme di credenziali, crearne uno nuovo nella stessa area geografica.In the case of vault failure, create a new vault in the same geographic region. L'utente che lo crea deve trovarsi nella stessa directory predefinita dell'entità servizio configurata per SQL Server.The user creating this should be in the same default directory as the service principal setup for SQL Server.
  • Ripristinare la chiave per il nuovo insieme di credenziali usando il cmdlet Restore-AzureKeyVaultKey di Powershell, che consente di ripristinare la chiave usando lo stesso nome che aveva in precedenza.Restore the key to the new vault (using the Restore-AzureKeyVaultKey Powershell cmdlet – this restores the key using the same name as before). Se esiste già una chiave con lo stesso nome, il ripristino non riesce.If there is already a key with the same name, the restore will fail.
  • Concedere le autorizzazioni all'entità servizio di SQL Server per l'uso di questo nuovo insieme di credenziali.Grant permissions to the SQL Server service principal to use this new vault.
  • Modificare le credenziali di SQL Server usate dal motore di database in modo da riflettere il nuovo nome dell'insieme di credenziali, se necessario.Modify the SQL Server credential used by the Database Engine to reflect the new vault name (if needed).

I backup delle chiavi possono essere ripristinati nelle aree di Azure, a condizione che rimangano nella stessa area geografica o nel cloud nazionale: Stati Uniti, Canada, Giappone, Australia, India, Asia Pacifico, Europa, Brasile, Cina, Governo degli Stati Uniti o Germania.Key backups can be restored across Azure regions, as long as they remain in the same geographic region or national cloud: USA, Canada, Japan, Australia, India, APAC, Europe Brazil, China, US Government, or Germany.

B.B. Domande frequentiFrequently Asked Questions

Informazioni sull'insieme di credenziali delle chiavi di AzureOn Azure Key Vault

Come funzionano le operazioni relative alla chiave nell'insieme di credenziali delle chiavi di Azure?How do key operations work with Azure Key Vault?
la chiave asimmetrica nell'insieme di credenziali delle chiavi viene usata per proteggere le chiavi di crittografia di SQL ServerSQL Server .The asymmetric key in the key vault is used to protect SQL ServerSQL Server encryption keys. Solo la parte pubblica della chiave asimmetrica lascia sempre l'insieme di credenziali. La parte privata non viene mai esportata dall'insieme di credenziali.Only the public portion of the asymmetric key ever leaves the vault; the private portion is never exported by the vault. Tutte le operazioni crittografiche che usano la chiave asimmetrica vengono eseguite nel servizio dell'insieme di credenziali delle chiavi di Azure e sono protette dalla sicurezza del servizio.All cryptographic operations using the asymmetric key are done within the Azure Key Vault service, and are protected by the service’s security.

Che cos'è un URI della chiave?What is a Key URI?
Ogni chiave nell'insieme di credenziali delle chiavi di Azure ha un URI (Uniform Resource Identifier) che può essere usato per fare riferimento alla chiave dell'applicazione.Every key in Azure Key Vault has a Uniform Resource Identifier (URI), which you can use to reference the key in your application. Usare il formato https://ContosoKeyVault.vault.azure.net/keys/ContosoFirstKey per ottenere la versione corrente e usare il formato https://ContosoKeyVault.vault.azure.net/keys/ContosoFirstKey/cgacf4f763ar42ffb0a1gca546aygd87 per ottenere una versione specifica.Use the format https://ContosoKeyVault.vault.azure.net/keys/ContosoFirstKey to get the current version, and use the format https://ContosoKeyVault.vault.azure.net/keys/ContosoFirstKey/cgacf4f763ar42ffb0a1gca546aygd87 to get a specific version.

Informazioni sulla configurazione SQL ServerSQL ServerOn Configuring SQL ServerSQL Server

Quali sono gli endpoint a cui deve accedere Connettore SQL Server?What are the endpoints that the SQL Server Connector needs access to? Il connettore comunica con due endpoint che devono essere inclusi nell'elenco degli elementi consentiti.The Connector talks to two endpoints, which need to be whitelisted. L'unica porta necessaria per la comunicazione in uscita a questi altri servizi è 443 per Https:The only port required for outbound communication to these other services is 443 for Https:

  • login.microsoftonline.com/:443login.microsoftonline.com/:443
  • .vault.azure.net/:443.vault.azure.net/:443

Quali sono i livelli minimi di autorizzazione necessari per ogni passaggio di configurazione in SQL ServerSQL Server?What are the minimum permission levels required for each configuration step in SQL ServerSQL Server?
Anche se è possibile eseguire tutti i passaggi di configurazione come membro del ruolo predefinito del server sysadmin, MicrosoftMicrosoft consiglia di ridurre al minimo le autorizzazioni.Though you could perform all the configuration steps as a member of the sysadmin fixed server role, MicrosoftMicrosoft encourages you to minimize the permissions you use. L'elenco seguente indica il livello di autorizzazione minima per ogni azione.The following list defines the minimum permission level for each action.

  • Per creare un provider di crittografia è necessaria l'autorizzazione CONTROL SERVER o l'appartenenza al ruolo predefinito del server sysadmin .To create a cryptographic provider, requires CONTROL SERVER permission or membership in the sysadmin fixed server role.

  • Per modificare un'opzione di configurazione ed eseguire l'istruzione RECONFIGURE , è necessaria l'autorizzazione a livello di server ALTER SETTINGS .To change a configuration option and run the RECONFIGURE statement, you must be granted the ALTER SETTINGS server-level permission. L'autorizzazione ALTER SETTINGS è assegnata implicitamente ai ruoli predefiniti del server sysadmin e serveradmin .The ALTER SETTINGS permission is implicitly held by the sysadmin and serveradmin fixed server roles.

  • Per creare le credenziali è necessaria l'autorizzazione ALTER ANY CREDENTIAL .To create a credential, requires ALTER ANY CREDENTIAL permission.

  • Per aggiungere le credenziali a un account di accesso è necessaria l'autorizzazione ALTER ANY LOGIN .To add a credential to a login, requires ALTER ANY LOGIN permission.

  • Per creare una chiave asimmetrica è necessaria l'autorizzazione CREATE ASYMMETRIC KEY .To create an asymmetric key, requires CREATE ASYMMETRIC KEY permission.

Come è possibile cambiare l'istanza predefinita di Active Directory in modo che l'insieme di credenziali delle chiavi venga creato nella stessa sottoscrizione dell'entità servizio di Active Directory creata per il Connettore SQL ServerSQL Server ?How do I change my default Active Directory so my key vault is created in the same subscription and Active Directory as the service principal I created for the SQL ServerSQL Server Connector?

aad-change-default-directory-helpsteps

  1. Passare al portale di Azure classico: https://manage.windowsazure.comGo to the Azure classic portal: https://manage.windowsazure.com
  2. Nel menu a sinistra scorrere verso il basso e selezionare Impostazioni.On the left-hand menu, scroll down and select Settings.
  3. Selezionare la sottoscrizione di Azure attualmente in uso e fare clic su Modifica directory nei comandi nella parte inferiore della schermata.Select the Azure subscription you are currently using, and click Edit Directory from the commands at the bottom of the screen.
  4. Nella finestra popup usare il menu a discesa Directory per selezionare l'istanza di Active Directory che si vuole usare.In the pop-up window, use the Directory dropdown to select the Active Directory you'd like to use. L'istanza verrà impostata come directory predefinita.This will make it the default Directory.
  5. Assicurarsi di essere l'amministratore globale della nuova istanza di Active Directory selezionata.Make sure you are the global admin of the newly selected Active Directory. Se non si è l'amministratore globale, si potrebbero perdere le autorizzazioni di gestione a causa della modifica della directory.If you are not the global admin, so might lose management permissions because you switched directories.
  6. Dopo la chiusura della finestra popup, se non è visualizzata alcuna delle sottoscrizioni, potrebbe essere necessario aggiornare il filtro Filtra per directory in Sottoscrizioni nel menu in alto a destra della schermata per visualizzare le sottoscrizioni che usano la nuova istanza di Active Directory appena aggiornata.Once the pop-up window closes, if you don't see any of your subscriptions, you may need to update the Filter by Directory filter in the Subscriptions filter in the top right hand menu of the screen to see subscriptions using your newly updated Active Directory.

    Nota

    Si potrebbe non disporre delle autorizzazioni per modificare la directory predefinita nella sottoscrizione di Azure.You may not have permissions to actually change the default directory on your Azure subscription. In questo caso, creare l'entità servizio AAD nella directory predefinita, in modo che si trovi nella stessa directory dell'insieme di credenziali delle chiavi di Azure usato successivamente.In this case, create the AAD service principal within your default directory so that it is in the same directory as the Azure Key Vault used later.

Per altre informazioni su Active Directory, leggere Associare le sottoscrizioni di Azure ad Azure Active Directory.To learn more about Active Directory, read How Azure subscription are related to Azure Active Directory

C.C. Spiegazioni dei codici di errore per Connettore SQL ServerSQL ServerError Code Explanations for SQL ServerSQL Server Connector

Codici di errore del provider:Provider Error Codes:

Codice di erroreError code SimboloSymbol DescrizioneDescription
00 scp_err_Successscp_err_Success L'operazione è stata completata.The operation has succeeded.
11 scp_err_Failurescp_err_Failure L'operazione non è riuscita.The operation has failed.
22 scp_err_InsufficientBufferscp_err_InsufficientBuffer Questo errore indica al motore di allocare altra memoria per il buffer.This error tells engine to allocate more memory for the buffer.
33 scp_err_NotSupportedscp_err_NotSupported L'operazione non è supportata.The operation is not supported. Ad esempio, il tipo di chiave o l'algoritmo specificato non è supportato dal provider EKM.E.g., the key type or algorithm specified is not supported by the EKM provider.
44 scp_err_NotFoundscp_err_NotFound Il provider EKM non ha trovato la chiave o l'algoritmo specificato.The specified key or algorithm could not be found by the EKM provider.
55 scp_err_AuthFailurescp_err_AuthFailure L'autenticazione con il provider EKM non è riuscita.The authentication has failed with EKM provider.
66 scp_err_InvalidArgumentscp_err_InvalidArgument L'argomento specificato non è valido.The provided argument is invalid.
77 scp_err_ProviderErrorscp_err_ProviderError Si è verificato un errore non specificato nel provider EKM rilevato dal motore SQL.There is an unspecified error happened in EKM provider that is caught by SQL engine.
20492049 scp_err_KeyNameDoesNotFitThumbprintscp_err_KeyNameDoesNotFitThumbprint Il nome della chiave è troppo lungo l'identificazione personale del motore SQL.The key name is too long to fit into SQL engine’s thumbprint. Il nome della chiave non deve superare i 26 caratteri.The key name must not exceed 26 characters.
20502050 scp_err_PasswordTooShortscp_err_PasswordTooShort La stringa del segreto, che rappresenta la concatenazione dell'ID client e del segreto di AAD, contiene un numero di caratteri inferiore a 32.The secret string which is the concatenation of AAD client id and secret is shorter than 32 characters.
20512051 scp_err_OutOfMemoryscp_err_OutOfMemory La memoria del motore SQL è insufficiente e non è stato possibile allocare memoria per il provider EKM.SQL engine has run out of memory and failed to allocate memory for EKM provider.
20522052 scp_err_ConvertKeyNameToThumbprintscp_err_ConvertKeyNameToThumbprint La conversione del nome della chiave in identificazione personale non è riuscita.Failed to convert key name to thumbprint.
20532053 scp_err_ConvertThumbprintToKeyNamescp_err_ConvertThumbprintToKeyName La conversione dell'identificazione personale nel nome della chiave non è riuscita.Failed to convert thumbprint to key name.
30003000 ErrorSuccessErrorSuccess L'operazione AKV è stata completata.The AKV operation has succeeded.
30013001 ErrorUnknownErrorUnknown L'operazione AKV non è riuscita con un errore non specificato.The AKV operation has failed with an unspecified error.
30023002 ErrorHttpCreateHttpClientOutOfMemoryErrorHttpCreateHttpClientOutOfMemory Non è possibile creare HttpClient per un'operazione AKV perché la memoria è insufficiente.Cannot create a HttpClient for AKV operation due to out of memory.
30033003 ErrorHttpOpenSessionErrorHttpOpenSession Non è possibile aprire una sessione Http a causa di un errore di rete.Cannot open a Http session due to network error.
30043004 ErrorHttpConnectSessionErrorHttpConnectSession Non è possibile connettere una sessione Http a causa di un errore di rete.Cannot connect a Http session due to network error.
30053005 ErrorHttpAttemptConnectErrorHttpAttemptConnect Un tentativo di connessione non è riuscito a causa di un errore di rete.Cannot attempt a connect due to network error.
30063006 ErrorHttpOpenRequestErrorHttpOpenRequest Non è possibile aprire una richiesta a causa di un errore di rete.Cannot open a request due to network error.
30073007 ErrorHttpAddRequestHeaderErrorHttpAddRequestHeader Non è possibile aggiungere l'intestazione della richiesta.Cannot add request header.
30083008 ErrorHttpSendRequestErrorHttpSendRequest Non è possibile inviare una richiesta a causa di un errore di rete.Cannot send a request due to network error.
30093009 ErrorHttpGetResponseCodeErrorHttpGetResponseCode Non è possibile ottenere un codice di risposta a causa di un errore di rete.Cannot get a response code due to network error.
30103010 ErrorHttpResponseCodeUnauthorizedErrorHttpResponseCodeUnauthorized Il server ha restituito 401 per la richiesta.Server responded 401 for the request.
30113011 ErrorHttpResponseCodeThrottledErrorHttpResponseCodeThrottled Il server ha limitato la richiesta.Server has throttled the request.
30123012 ErrorHttpResponseCodeClientErrorErrorHttpResponseCodeClientError La richiesta inviata dal connettore non è valida.The request sent from the connector is invalid. Questo significa in genere che il nome della chiave non è valido o contiene caratteri non validi.This usually means the key name is invalid or contains invalid characters.
30133013 ErrorHttpResponseCodeServerErrorErrorHttpResponseCodeServerError Il server ha restituito un codice di risposta compreso tra 500 e 600.Server responded a response code between 500 and 600.
30143014 ErrorHttpQueryHeaderErrorHttpQueryHeader Non è possibile eseguire la query per un'intestazione della risposta.Cannot query for response header.
30153015 ErrorHttpQueryHeaderOutOfMemoryCopyHeaderErrorHttpQueryHeaderOutOfMemoryCopyHeader Non è possibile copiare l'intestazione della risposta a causa della memoria insufficiente.Cannot copy the response header due to out of memory.
30163016 ErrorHttpQueryHeaderOutOfMemoryReallocBufferErrorHttpQueryHeaderOutOfMemoryReallocBuffer Non è possibile eseguire la query sull'intestazione della risposta a causa della memoria insufficiente durante la riallocazione di un buffer.Cannot query the response header due to out of memory when reallocating a buffer.
30173017 ErrorHttpQueryHeaderNotFoundErrorHttpQueryHeaderNotFound Non è possibile trovare l'intestazione della query nella risposta.Cannot find the query header in the response.
30183018 ErrorHttpQueryHeaderUpdateBufferLengthErrorHttpQueryHeaderUpdateBufferLength Non è possibile aggiornare la lunghezza del buffer quando si eseguono query sull'intestazione della risposta.Cannot update the buffer length when querying the response header.
30193019 ErrorHttpReadDataErrorHttpReadData Non è possibile leggere i dati della risposta a causa di un errore di rete.Cannot read response data due to network error.
30763076 ErrorHttpResourceNotFoundErrorHttpResourceNotFound Il server ha risposto 404, perché il nome della chiave non è stato trovato.The server responded 404, because the key name was not found. Assicurarsi che il nome della chiave sia presente nell'insieme di credenziali.Please make sure the key name exists in your vault.
30773077 ErrorHttpOperationForbiddenErrorHttpOperationForbidden Il server ha risposto 403, perché l'utente non ha le autorizzazioni appropriate per eseguire l'azione.The server responded 403, because the user doesn’t have proper permission to perform the action. Assicurarsi di avere le autorizzazioni per l'operazione specificata.Please make sure you have the permission for the specified operation. Per il corretto funzionamento, il connettore richiede almeno le autorizzazioni "get, list, wrapKey, unwrapKey".At minimum, the connector requires 'get, list, wrapKey, unwrapKey' permissions to function properly.

Se il codice di errore visualizzato non è presente in questa tabella, di seguito sono riportate alcune altre condizioni che potrebbero essere causa dell'errore:If you don’t see your error code in this table, here are some other reasons the error may be happening:

  • Non si ha un accesso a Internet, quindi non è possibile accedere all'insieme di credenziali delle chiavi di Azure. Verificare la connessione a Internet.You may not have Internet access and cannot access your Azure Key Vault – please check your Internet connection.

  • Il servizio dell'insieme di credenziali delle chiavi potrebbe non essere attivo.The Azure Key Vault service may be down. Riprovare in un altro momento.Please try again at another time.

  • La chiave asimmetrica dell'insieme di credenziali delle chiavi di Azure o SQL ServerSQL Serverpotrebbe essere stata eliminata.You may have dropped the asymmetric key from Azure Key Vault or SQL ServerSQL Server. Ripristinare la chiave.Please restore the key.

  • Se viene visualizzato l'errore "Impossibile caricare la libreria", verificare che sia installata la versione più recente di Visual Studio C++ Redistributable nella versione di SQL Server in esecuzione.If you receive a “Cannot load library” error, make sure you have the appropriate version of the Visual Studio C++ redistributable installed based on the version of SQL Server that you are running. La tabella seguente specifica la versione da installare dall'Area download Microsoft.The table below specifies which version to install from the Microsoft Download Center.

Versione di SQL ServerSQL Server Version Collegamento di installazione ridistribuibileRedistributable Install Link
2008, 2008 R2, 2012, 20142008, 2008 R2, 2012, 2014 Visual C++ Redistributable Package per Visual Studio 2013Visual C++ Redistributable Packages for Visual Studio 2013
20162016 Visual C++ Redistributable per Visual Studio 2015Visual C++ Redistributable for Visual Studio 2015

Riferimenti aggiuntiviAdditional References

Altre informazioni su Extensible Key Management:More About Extensible Key Management:

Vedere ancheSee Also

Extensible Key Management con l'insieme di credenziali delle chiavi di Azure Usare Connettore SQL Server con le funzionalità di crittografia SQL Extensible Key Management Using Azure Key Vault Use SQL Server Connector with SQL Encryption Features
Opzione di configurazione del server EKM provider enabled EKM provider enabled Server Configuration Option
Procedura di installazione di Extensible Key Management con l'insieme di credenziali delle chiavi di AzureSetup Steps for Extensible Key Management Using the Azure Key Vault