Condividi tramite


Proteggere la programmazione con l'adapter SAP

Come si proteggono le credenziali quando si usa il plug-in Add Adapter Service Reference Visual Studio?

Quando si usa il plug-in Add Adapter Service Reference per creare un client WCF, è necessario specificare un nome utente e una password per il sistema SAP. È consigliabile eseguire questa operazione solo dalla scheda Sicurezza nella finestra di dialogo Configura adattatore . Immettendo le credenziali SAP dalla scheda Sicurezza anziché direttamente nel campo Uri , assicurarsi quanto segue:

  • Le credenziali non verranno visualizzate nel campo Uri del plug-in Aggiungi plug-in del servizio adattatore in cui chiunque può accedere alla schermata del computer può leggerli.

  • Le credenziali non verranno visualizzate nel file di configurazione generato dal plug-in Aggiungi plug-in del servizio adapter.

    Per altre informazioni su come generare un client WCF usando il plug-in Aggiungi plug-in Di riferimento al servizio adapter, incluso come immettere un nome utente e una password per il sistema SAP, vedere Ottenere metadati per le operazioni SAP in Visual Studio

Quali sono le procedure consigliate per l'impostazione delle credenziali nel codice?

WCF fornisce la classe ClientCredentials per configurare le credenziali usate da un oggetto di comunicazione client, ad esempio ChannelFactory, per autenticarsi con un servizio. Usando la classe ClientCredentials , assicurarsi che WCF prenda qualsiasi meccanismo di autenticazione specificato nello stack di canali dell'oggetto e li applica allo scambio tra il client e il servizio.

Poiché l'adapter SAP è ospitato in-process con l'applicazione che usa, non è imperativo usare la classe ClientCredentials per impostare le credenziali sugli oggetti di comunicazione client usati dall'applicazione. Tuttavia, è considerata buona pratica farlo.

L'adapter SAP incoraggia l'uso della classe ClientCredentials tramite la proprietà di associazione AcceptCredentialsInUri . Questa proprietà specifica se l'adapter accetterà il nome utente e la password per il sistema SAP nell'URI di connessione. AcceptCredentialsInUri impostazione predefinita su false, il che significa che l'adapter genererà un'eccezione se l'URI di connessione contiene le credenziali. È possibile impostare AcceptCredentialsInUri su true per specificare le credenziali nell'URI di connessione. Infatti, è necessario farlo in determinati casi; ad esempio, quando si specifica un URI di connessione per un endpoint host del servizio o per uno scenario IReplyChannel in ingresso.

Nell'esempio seguente viene illustrato come usare la classe ClientCredentials per impostare le credenziali per il sistema SAP in un client WCF.

SAPBinding binding = new SAPBinding();  
  
// Set endpoint address  
EndpointAddress endpointAddress = new EndpointAddress("sap://CLIENT=800;LANG=EN;@a/YourSAPHost/00?RfcSdkTrace=False&AbapDebug=False&UseSapGui=Without");  
  
// Create client and set credentials  
RfcClient rfcClient = new RfcClient(binding, endpointAddress);  
rfcClient.ClientCredentials.UserName.UserName = "YourUserName";  
rfcClient.ClientCredentials.UserName.Password = "YourPassword";  

Come è possibile fornire uno scambio di dati più sicuro tra i limiti del processo?

La scheda SAP è ospitata in-process con l'applicazione o il servizio che lo utilizza. Poiché l'adapter è ospitato in-process con il consumer, non è necessario fornire sicurezza sui messaggi scambiati tra il consumer e l'adapter SAP. Tuttavia, se l'applicazione o il servizio che utilizza invia messaggi che contengono informazioni riservate sul database attraverso un limite di processo a un altro servizio o client, è consigliabile adottare misure per fornire una protezione adeguata per questi dati nell'ambiente. Windows Communication Foundation (WCF) offre molte opzioni per proteggere i messaggi inviati tra client e servizi. Per altre informazioni sull'aiuto per proteggere i messaggi inviati tra client e servizi in WCF, vedere Protezione di servizi e client. Per altre informazioni generali sulle funzionalità di sicurezza fornite da WCF, vedere Windows Communication Foundation Security.

Vedere anche

Procedure consigliate per proteggere l'adapter SAP
Proteggere le applicazioni SAP