SslStream Konstruktory

Definicja

Inicjuje nowe wystąpienie klasy SslStream.

Przeciążenia

SslStream(Stream)

Inicjuje SslStream nowe wystąpienie klasy przy użyciu określonego Streamelementu .

SslStream(Stream, Boolean)

Inicjuje SslStream nowe wystąpienie klasy przy użyciu określonego zachowania zamknięcia strumienia i określonego Stream .

SslStream(Stream, Boolean, RemoteCertificateValidationCallback)

Inicjuje SslStream nowe wystąpienie klasy przy użyciu określonego Stream, zachowanie zamknięcia strumienia i delegat weryfikacji certyfikatu.

SslStream(Stream, Boolean, RemoteCertificateValidationCallback, LocalCertificateSelectionCallback)

Inicjuje nowe wystąpienie SslStream klasy przy użyciu określonego Streamzachowania zamknięcia strumienia, delegata weryfikacji certyfikatu i delegata wyboru certyfikatu.

SslStream(Stream, Boolean, RemoteCertificateValidationCallback, LocalCertificateSelectionCallback, EncryptionPolicy)

Inicjuje SslStream nowe wystąpienie klasy przy użyciu określonego Streamelementu .

Uwagi

Aby zapobiec SslStream zamykaniu dostarczanego strumienia, użyj konstruktora SslStream .

SslStream(Stream)

Źródło:
SslStream.cs
Źródło:
SslStream.cs
Źródło:
SslStream.cs

Inicjuje SslStream nowe wystąpienie klasy przy użyciu określonego Streamelementu .

public:
 SslStream(System::IO::Stream ^ innerStream);
public SslStream (System.IO.Stream innerStream);
new System.Net.Security.SslStream : System.IO.Stream -> System.Net.Security.SslStream
Public Sub New (innerStream As Stream)

Parametry

innerStream
Stream

Stream Obiekt używany przez SslStream obiekt do wysyłania i odbierania danych.

Wyjątki

innerStream nie jest czytelna.

-lub-

innerStream nie jest zapisywalny.

innerStream to null.

-lub-

innerStream jest równe Null.

Uwagi

Jeśli wartość nie zostanie określona w pliku konfiguracji dla zasad szyfrowania, EncryptionPolicy wartością domyślną EncryptionPolicy.RequireEncryption dla tworzonego SslStream wystąpienia.

Użycie szyfru o wartości Null jest wymagane, gdy zasady szyfrowania są ustawione na EncryptionPolicy.NoEncryptionwartość .

Dotyczy

SslStream(Stream, Boolean)

Źródło:
SslStream.cs
Źródło:
SslStream.cs
Źródło:
SslStream.cs

Inicjuje SslStream nowe wystąpienie klasy przy użyciu określonego zachowania zamknięcia strumienia i określonego Stream .

public:
 SslStream(System::IO::Stream ^ innerStream, bool leaveInnerStreamOpen);
public SslStream (System.IO.Stream innerStream, bool leaveInnerStreamOpen);
new System.Net.Security.SslStream : System.IO.Stream * bool -> System.Net.Security.SslStream
Public Sub New (innerStream As Stream, leaveInnerStreamOpen As Boolean)

Parametry

innerStream
Stream

Stream Obiekt używany przez SslStream obiekt do wysyłania i odbierania danych.

leaveInnerStreamOpen
Boolean

Wartość logiczna wskazująca zachowanie zamknięcia obiektu używanego StreamSslStream przez obiekt do wysyłania i odbierania danych. Ten parametr wskazuje, czy strumień wewnętrzny jest pozostawiony otwarty.

Wyjątki

innerStream nie jest czytelna.

-lub-

innerStream nie jest zapisywalny.

innerStream to null.

-lub-

innerStream jest równe Null.

Przykłady

W poniższym przykładzie kodu pokazano wywołanie tego konstruktora.

static void ProcessClient( TcpClient^ client )
{
   
   // A client has connected. Create the 
   // SslStream using the client's network stream.
   SslStream^ sslStream = gcnew SslStream( client->GetStream(),false );
   
   // Authenticate the server but don't require the client to authenticate.
   try
   {
      sslStream->AuthenticateAsServer( serverCertificate, false, true );
      // false == no client cert required; true == check cert revocation.
      
      // Display the properties and settings for the authenticated stream.
      DisplaySecurityLevel( sslStream );
      DisplaySecurityServices( sslStream );
      DisplayCertificateInformation( sslStream );
      DisplayStreamProperties( sslStream );
      
      // Set timeouts for the read and write to 5 seconds.
      sslStream->ReadTimeout = 5000;
      sslStream->WriteTimeout = 5000;
      
      // Read a message from the client.   
      Console::WriteLine( L"Waiting for client message..." );
      String^ messageData = ReadMessage( sslStream );
      Console::WriteLine( L"Received: {0}", messageData );
      
      // Write a message to the client.
      array<Byte>^message = Encoding::UTF8->GetBytes( L"Hello from the server.<EOF>" );
      Console::WriteLine( L"Sending hello message." );
      sslStream->Write( message );
   }
   catch ( AuthenticationException^ e ) 
   {
      Console::WriteLine( L"Exception: {0}", e->Message );
      if ( e->InnerException != nullptr )
      {
         Console::WriteLine( L"Inner exception: {0}", e->InnerException->Message );
      }
      Console::WriteLine( L"Authentication failed - closing the connection." );
      sslStream->Close();
      client->Close();
      return;
   }
   finally
   {
      
      // The client stream will be closed with the sslStream
      // because we specified this behavior when creating
      // the sslStream.
      sslStream->Close();
      client->Close();
   }

}
static void ProcessClient (TcpClient client)
{
    // A client has connected. Create the
    // SslStream using the client's network stream.
    SslStream sslStream = new SslStream(
        client.GetStream(), false);
    // Authenticate the server but don't require the client to authenticate.
    try
    {
        sslStream.AuthenticateAsServer(serverCertificate, clientCertificateRequired: false, checkCertificateRevocation: true);

        // Display the properties and settings for the authenticated stream.
        DisplaySecurityLevel(sslStream);
        DisplaySecurityServices(sslStream);
        DisplayCertificateInformation(sslStream);
        DisplayStreamProperties(sslStream);

        // Set timeouts for the read and write to 5 seconds.
        sslStream.ReadTimeout = 5000;
        sslStream.WriteTimeout = 5000;
        // Read a message from the client.
        Console.WriteLine("Waiting for client message...");
        string messageData = ReadMessage(sslStream);
        Console.WriteLine("Received: {0}", messageData);

        // Write a message to the client.
        byte[] message = Encoding.UTF8.GetBytes("Hello from the server.<EOF>");
        Console.WriteLine("Sending hello message.");
        sslStream.Write(message);
    }
    catch (AuthenticationException e)
    {
        Console.WriteLine("Exception: {0}", e.Message);
        if (e.InnerException != null)
        {
            Console.WriteLine("Inner exception: {0}", e.InnerException.Message);
        }
        Console.WriteLine ("Authentication failed - closing the connection.");
        sslStream.Close();
        client.Close();
        return;
    }
    finally
    {
        // The client stream will be closed with the sslStream
        // because we specified this behavior when creating
        // the sslStream.
        sslStream.Close();
        client.Close();
    }
}
Private Shared Sub ProcessClient(client As TcpClient)
    ' A client has connected. Create the 
    ' SslStream using the client's network stream.
    Dim sslStream = New SslStream(client.GetStream(), False)

    Try

        sslStream.AuthenticateAsServer(serverCertificate, clientCertificateRequired:=False, checkCertificateRevocation:=True)
        ' Display the properties And settings for the authenticated stream.
        DisplaySecurityLevel(sslStream)
        DisplaySecurityServices(sslStream)
        DisplayCertificateInformation(sslStream)
        DisplayStreamProperties(sslStream)

        ' Set timeouts for the read and write to 5 seconds.
        sslStream.ReadTimeout = 5000
        sslStream.WriteTimeout = 5000

        ' Read a message from the client.   
        Console.WriteLine("Waiting for client message...")
        Dim messageData As String = ReadMessage(sslStream)
        Console.WriteLine("Received: {0}", messageData)

        ' Write a message to the client.
        Dim message As Byte() = Encoding.UTF8.GetBytes("Hello from the server.<EOF>")
        Console.WriteLine("Sending hello message.")
        sslStream.Write(message)
    Catch e As AuthenticationException
        Console.WriteLine("Exception: {0}", e.Message)

        If e.InnerException IsNot Nothing Then
            Console.WriteLine("Inner exception: {0}", e.InnerException.Message)
        End If

        Console.WriteLine("Authentication failed - closing the connection.")
        sslStream.Close()
        client.Close()
        Return
    Finally
        ' The client stream will be closed with the sslStream
        ' because we specified this behavior when creating
        ' the sslStream.
        sslStream.Close()
        client.Close()
    End Try
End Sub

Uwagi

Po określeniu true parametru leaveStreamOpen zamknięcie SslStream elementu nie ma wpływu na innerStream strumień; należy jawnie zamknąć innerStream , gdy nie jest już potrzebny.

Jeśli wartość nie zostanie określona w pliku konfiguracji dla zasad szyfrowania, EncryptionPolicy wartością domyślną EncryptionPolicy.RequireEncryption dla tworzonego SslStream wystąpienia.

Użycie szyfru o wartości Null jest wymagane, gdy zasady szyfrowania są ustawione na EncryptionPolicy.NoEncryptionwartość .

Dotyczy

SslStream(Stream, Boolean, RemoteCertificateValidationCallback)

Źródło:
SslStream.cs
Źródło:
SslStream.cs
Źródło:
SslStream.cs

Inicjuje SslStream nowe wystąpienie klasy przy użyciu określonego Stream, zachowanie zamknięcia strumienia i delegat weryfikacji certyfikatu.

public:
 SslStream(System::IO::Stream ^ innerStream, bool leaveInnerStreamOpen, System::Net::Security::RemoteCertificateValidationCallback ^ userCertificateValidationCallback);
public SslStream (System.IO.Stream innerStream, bool leaveInnerStreamOpen, System.Net.Security.RemoteCertificateValidationCallback? userCertificateValidationCallback);
public SslStream (System.IO.Stream innerStream, bool leaveInnerStreamOpen, System.Net.Security.RemoteCertificateValidationCallback userCertificateValidationCallback);
new System.Net.Security.SslStream : System.IO.Stream * bool * System.Net.Security.RemoteCertificateValidationCallback -> System.Net.Security.SslStream
Public Sub New (innerStream As Stream, leaveInnerStreamOpen As Boolean, userCertificateValidationCallback As RemoteCertificateValidationCallback)

Parametry

innerStream
Stream

Stream Obiekt używany przez SslStream obiekt do wysyłania i odbierania danych.

leaveInnerStreamOpen
Boolean

Wartość logiczna wskazująca zachowanie zamknięcia obiektu używanego StreamSslStream przez obiekt do wysyłania i odbierania danych. Ten parametr wskazuje, czy strumień wewnętrzny jest pozostawiony otwarty.

userCertificateValidationCallback
RemoteCertificateValidationCallback

Pełnomocnik RemoteCertificateValidationCallback odpowiedzialny za weryfikowanie certyfikatu dostarczonego przez stronę zdalną.

Wyjątki

innerStream nie jest czytelna.

-lub-

innerStream nie jest zapisywalny.

innerStream to null.

-lub-

innerStream jest równe Null.

Przykłady

Poniższy przykład kodu tworzy element SslStream i inicjuje część uwierzytelniania klienta.

// Create a TCP/IP client socket.
// machineName is the host running the server application.
TcpClient^ client = gcnew TcpClient(machineName, 5000);
Console::WriteLine("Client connected.");
  
// Create an SSL stream that will close 
// the client's stream.
SslStream^ sslStream = gcnew SslStream(
    client->GetStream(), false,
    gcnew RemoteCertificateValidationCallback(ValidateServerCertificate),
    nullptr);
  
// The server name must match the name
// on the server certificate.
try
{
    sslStream->AuthenticateAsClient(serverName);
}
catch (AuthenticationException^ ex) 
{
    Console::WriteLine("Exception: {0}", ex->Message);
    if (ex->InnerException != nullptr)
    {
        Console::WriteLine("Inner exception: {0}", 
            ex->InnerException->Message);
    }

    Console::WriteLine("Authentication failed - "
        "closing the connection.");
    sslStream->Close();
    client->Close();
    return;
}
// Create a TCP/IP client socket.
// machineName is the host running the server application.
TcpClient client = new TcpClient(machineName,5000);
Console.WriteLine("Client connected.");
// Create an SSL stream that will close the client's stream.
SslStream sslStream = new SslStream(
    client.GetStream(),
    false,
    new RemoteCertificateValidationCallback (ValidateServerCertificate),
    null
    );
// The server name must match the name on the server certificate.
try
{
    sslStream.AuthenticateAsClient(serverName);
}
catch (AuthenticationException e)
{
    Console.WriteLine("Exception: {0}", e.Message);
    if (e.InnerException != null)
    {
        Console.WriteLine("Inner exception: {0}", e.InnerException.Message);
    }
    Console.WriteLine ("Authentication failed - closing the connection.");
    client.Close();
    return;
}
' Create a TCP/IP client socket.
' machineName is the host running the server application.
Dim client = New TcpClient(machineName, 5000)
Console.WriteLine("Client connected.")

' Create an SSL stream that will close the client's stream.
Dim sslStream = New SslStream(
    client.GetStream(), False, 
    New RemoteCertificateValidationCallback(AddressOf ValidateServerCertificate), Nothing)

' The server name must match the name on the server certificate.
Try
    sslStream.AuthenticateAsClient(serverName)
Catch e As AuthenticationException
    Console.WriteLine("Exception: {0}", e.Message)

    If e.InnerException IsNot Nothing Then
        Console.WriteLine("Inner exception: {0}", e.InnerException.Message)
    End If

    Console.WriteLine("Authentication failed - closing the connection.")
    client.Close()
    Return
End Try

Uwagi

Po określeniu true parametru leaveStreamOpen zamknięcie SslStream elementu nie ma wpływu na innerStream strumień; należy jawnie zamknąć innerStream , gdy nie jest już potrzebny.

userCertificateValidationCallback Argument delegata certificateErrors zawiera wszystkie kody błędów systemu Windows zwracane przez channel Security Support Provider Interface (SSPI). Wartość zwracana metody wywoływanej przez delegata userCertificateValidationCallback określa, czy uwierzytelnianie powiedzie się.

Protokół zabezpieczeń i algorytmy kryptograficzne są już wybrane po userCertificateValidationCallback wywołaniu metody delegata. Możesz użyć metody , aby określić, czy wybrane algorytmy kryptograficzne i mocne strony są wystarczające dla aplikacji. Jeśli nie, metoda powinna powrócić false , aby zapobiec utworzeniu SslStream obiektu .

Jeśli wartość nie zostanie określona w pliku konfiguracji dla zasad szyfrowania, EncryptionPolicy wartością domyślną EncryptionPolicy.RequireEncryption dla tworzonego SslStream wystąpienia.

Użycie szyfru o wartości Null jest wymagane, gdy zasady szyfrowania są ustawione na EncryptionPolicy.NoEncryptionwartość .

Uwaga

Platforma .NET buforuje sesje SSL podczas ich tworzenia i próbuje ponownie użyć sesji buforowanej dla kolejnych żądań, jeśli to możliwe. Podczas próby ponownego użycia sesji SSL platforma używa pierwszego elementu podanego X509Certificate2Collection podczas uwierzytelniania (jeśli istnieje) lub próbuje ponownie użyć sesji anonimowych, jeśli kolekcja certyfikatów jest pusta.

Uwaga

Certyfikaty klienta nie są obsługiwane w protokole SSL w wersji 2.

Dotyczy

SslStream(Stream, Boolean, RemoteCertificateValidationCallback, LocalCertificateSelectionCallback)

Źródło:
SslStream.cs
Źródło:
SslStream.cs
Źródło:
SslStream.cs

Inicjuje nowe wystąpienie SslStream klasy przy użyciu określonego Streamzachowania zamknięcia strumienia, delegata weryfikacji certyfikatu i delegata wyboru certyfikatu.

public:
 SslStream(System::IO::Stream ^ innerStream, bool leaveInnerStreamOpen, System::Net::Security::RemoteCertificateValidationCallback ^ userCertificateValidationCallback, System::Net::Security::LocalCertificateSelectionCallback ^ userCertificateSelectionCallback);
public SslStream (System.IO.Stream innerStream, bool leaveInnerStreamOpen, System.Net.Security.RemoteCertificateValidationCallback? userCertificateValidationCallback, System.Net.Security.LocalCertificateSelectionCallback? userCertificateSelectionCallback);
public SslStream (System.IO.Stream innerStream, bool leaveInnerStreamOpen, System.Net.Security.RemoteCertificateValidationCallback userCertificateValidationCallback, System.Net.Security.LocalCertificateSelectionCallback userCertificateSelectionCallback);
new System.Net.Security.SslStream : System.IO.Stream * bool * System.Net.Security.RemoteCertificateValidationCallback * System.Net.Security.LocalCertificateSelectionCallback -> System.Net.Security.SslStream
Public Sub New (innerStream As Stream, leaveInnerStreamOpen As Boolean, userCertificateValidationCallback As RemoteCertificateValidationCallback, userCertificateSelectionCallback As LocalCertificateSelectionCallback)

Parametry

innerStream
Stream

Stream Obiekt używany przez SslStream obiekt do wysyłania i odbierania danych.

leaveInnerStreamOpen
Boolean

Wartość logiczna wskazująca zachowanie zamknięcia obiektu używanego StreamSslStream przez obiekt do wysyłania i odbierania danych. Ten parametr wskazuje, czy strumień wewnętrzny jest pozostawiony otwarty.

userCertificateValidationCallback
RemoteCertificateValidationCallback

Pełnomocnik RemoteCertificateValidationCallback odpowiedzialny za weryfikowanie certyfikatu dostarczonego przez stronę zdalną.

userCertificateSelectionCallback
LocalCertificateSelectionCallback

Pełnomocnik LocalCertificateSelectionCallback odpowiedzialny za wybór certyfikatu używanego do uwierzytelniania.

Wyjątki

innerStream nie jest czytelna.

-lub-

innerStream nie jest zapisywalny.

innerStream to null.

-lub-

innerStream jest równe Null.

Przykłady

W poniższym przykładzie kodu pokazano wywołanie tego konstruktora. Ten przykład jest częścią większego przykładu udostępnionego SslStream dla klasy .

// Server name must match the host name and the name on the host's certificate. 
serverName = args[ 1 ];

// Create a TCP/IP client socket.
TcpClient^ client = gcnew TcpClient( serverName,5000 );
Console::WriteLine( L"Client connected." );

// Create an SSL stream that will close the client's stream.
SslStream^ sslStream = gcnew SslStream( 
    client->GetStream(),
    false,
    gcnew RemoteCertificateValidationCallback( ValidateServerCertificate ),
    gcnew LocalCertificateSelectionCallback( SelectLocalCertificate ) );
// Server name must match the host name and the name on the host's certificate.
serverName = args[0];
// Create a TCP/IP client socket.
TcpClient client = new TcpClient(serverName,5000);
Console.WriteLine("Client connected.");
// Create an SSL stream that will close the client's stream.
SslStream sslStream = new SslStream(
    client.GetStream(),
    false,
    new RemoteCertificateValidationCallback (ValidateServerCertificate),
    new LocalCertificateSelectionCallback(SelectLocalCertificate)
    );
' Server name must match the host name and the name on the host's certificate. 
serverName = args(0)
' Create a TCP/IP client socket.
Dim client As New TcpClient(serverName, 5000)
Console.WriteLine("Client connected.")
' Create an SSL stream that will close the client's stream.
Dim sslStream As New SslStream(
    client.GetStream(), False, 
    New RemoteCertificateValidationCallback(AddressOf ValidateServerCertificate), 
    New LocalCertificateSelectionCallback(AddressOf SelectLocalCertificate))

Uwagi

Po określeniu true parametru leaveStreamOpen zamknięcie SslStream elementu nie ma wpływu na innerStream strumień; należy jawnie zamknąć innerStream , gdy nie jest już potrzebny.

userCertificateValidationCallback Argument delegata certificateErrors zawiera wszystkie kody błędów systemu Windows zwracane przez channel Security Support Provider Interface (SSPI). Wartość zwracana metody wywoływanej przez delegata userCertificateValidationCallback określa, czy uwierzytelnianie powiedzie się.

Protokół zabezpieczeń i algorytmy kryptograficzne są już wybrane po userCertificateValidationCallback wywołaniu metody delegata. Możesz użyć metody , aby określić, czy wybrane algorytmy kryptograficzne i mocne strony są wystarczające dla aplikacji. Jeśli nie, metoda powinna powrócić false , aby zapobiec utworzeniu SslStream obiektu .

Delegat userCertificateSelectionCallback jest przydatny, gdy aplikacja ma wiele certyfikatów i musi dynamicznie wybrać certyfikat. Certyfikaty w magazynie "MY" są przekazywane do metody wywoływanej przez delegata.

Jeśli wartość nie zostanie określona w pliku konfiguracji dla zasad szyfrowania, EncryptionPolicy wartością domyślną EncryptionPolicy.RequireEncryption dla tworzonego SslStream wystąpienia.

Użycie szyfru o wartości Null jest wymagane, gdy zasady szyfrowania są ustawione na EncryptionPolicy.NoEncryptionwartość .

Uwaga

Platforma .NET buforuje sesje SSL podczas ich tworzenia i próbuje ponownie użyć sesji buforowanej dla kolejnych żądań, jeśli to możliwe. Podczas próby ponownego użycia sesji SSL platforma używa pierwszego elementu podanego X509Certificate2Collection podczas uwierzytelniania (jeśli istnieje) lub próbuje ponownie użyć sesji anonimowych, jeśli kolekcja certyfikatów jest pusta.

Dotyczy

SslStream(Stream, Boolean, RemoteCertificateValidationCallback, LocalCertificateSelectionCallback, EncryptionPolicy)

Źródło:
SslStream.IO.cs
Źródło:
SslStream.cs
Źródło:
SslStream.cs

Inicjuje SslStream nowe wystąpienie klasy przy użyciu określonego Streamelementu .

public:
 SslStream(System::IO::Stream ^ innerStream, bool leaveInnerStreamOpen, System::Net::Security::RemoteCertificateValidationCallback ^ userCertificateValidationCallback, System::Net::Security::LocalCertificateSelectionCallback ^ userCertificateSelectionCallback, System::Net::Security::EncryptionPolicy encryptionPolicy);
public SslStream (System.IO.Stream innerStream, bool leaveInnerStreamOpen, System.Net.Security.RemoteCertificateValidationCallback? userCertificateValidationCallback, System.Net.Security.LocalCertificateSelectionCallback? userCertificateSelectionCallback, System.Net.Security.EncryptionPolicy encryptionPolicy);
public SslStream (System.IO.Stream innerStream, bool leaveInnerStreamOpen, System.Net.Security.RemoteCertificateValidationCallback userCertificateValidationCallback, System.Net.Security.LocalCertificateSelectionCallback userCertificateSelectionCallback, System.Net.Security.EncryptionPolicy encryptionPolicy);
new System.Net.Security.SslStream : System.IO.Stream * bool * System.Net.Security.RemoteCertificateValidationCallback * System.Net.Security.LocalCertificateSelectionCallback * System.Net.Security.EncryptionPolicy -> System.Net.Security.SslStream
Public Sub New (innerStream As Stream, leaveInnerStreamOpen As Boolean, userCertificateValidationCallback As RemoteCertificateValidationCallback, userCertificateSelectionCallback As LocalCertificateSelectionCallback, encryptionPolicy As EncryptionPolicy)

Parametry

innerStream
Stream

Stream Obiekt używany przez SslStream obiekt do wysyłania i odbierania danych.

leaveInnerStreamOpen
Boolean

Wartość logiczna wskazująca zachowanie zamknięcia obiektu używanego StreamSslStream przez obiekt do wysyłania i odbierania danych. Ten parametr wskazuje, czy strumień wewnętrzny jest pozostawiony otwarty.

userCertificateValidationCallback
RemoteCertificateValidationCallback

Pełnomocnik RemoteCertificateValidationCallback odpowiedzialny za weryfikowanie certyfikatu dostarczonego przez firmę zdalną.

userCertificateSelectionCallback
LocalCertificateSelectionCallback

Pełnomocnik LocalCertificateSelectionCallback odpowiedzialny za wybranie certyfikatu używanego do uwierzytelniania.

encryptionPolicy
EncryptionPolicy

Do EncryptionPolicy użycia.

Wyjątki

innerStream nie jest czytelna.

-lub-

innerStream nie jest zapisywalny.

-lub-

encryptionPolicy jest nieprawidłowy.

innerStream to null.

-lub-

innerStream jest równe Null.

Uwagi

Użycie szyfrowania null jest wymagane, gdy encryptionPolicy parametr jest ustawiony na EncryptionPolicy.NoEncryptionwartość .

Dotyczy