IChannelCredentials Interface

Definição

Uma interface que permite a configuração de determinados recursos de segurança em um proxy de serviço.

public interface class IChannelCredentials
[System.Runtime.InteropServices.Guid("181b448c-c17c-4b17-ac6d-06699b93198f")]
[System.Runtime.InteropServices.InterfaceType(System.Runtime.InteropServices.ComInterfaceType.InterfaceIsIDispatch)]
public interface IChannelCredentials
[<System.Runtime.InteropServices.Guid("181b448c-c17c-4b17-ac6d-06699b93198f")>]
[<System.Runtime.InteropServices.InterfaceType(System.Runtime.InteropServices.ComInterfaceType.InterfaceIsIDispatch)>]
type IChannelCredentials = interface
Public Interface IChannelCredentials
Atributos

Exemplos

monString = "service:mexAddress=http://localhost:8000/ServiceModelSamples/Service?wsdl"  
    monString = monString + ", address=http://localhost:8000/ServiceModelSamples/Service"  
    monString = monString + ", binding=BasicHttpBinding_ICalculator, bindingNamespace=http://Microsoft.ServiceModel.Samples"  
    monString = monString + ", contract=ICalculator, contractNamespace=http://Microsoft.ServiceModel.Samples"  

    Set monikerProxy = GetObject(monString)  

    'Set the Service Certificate.  
    monikerProxy.ChannelCredentials.SetServiceCertificateAuthentication "CurrentUser", "NoCheck", "PeerOrChainTrust"  
    monikerProxy.ChannelCredentials.SetDefaultServiceCertificateFromStore "CurrentUser", "TrustedPeople", "FindBySubjectName", "localhost"  

    'Set the Client Certificate.  
    monikerProxy.ChannelCredentials.SetClientCertificateFromStoreByName "CN=client.com", "CurrentUser", "My"  
    MsgBox monikerProxy.Add(3, 4)  

Comentários

Clientes não gerenciados usam o moniker de "serviço" para acessar serviços de Windows Communication Foundation (WCF). Esses clientes estão sujeitos ao modelo de segurança do WCF em vez do modelo de segurança COM. A IChannelCredentials interface é fornecida para especificar credenciais de canal. Isso é necessário porque o moniker COM não pode acessar o modelo de objeto de segurança WCF gerenciado.

Não é legal chamar métodos na IChannelCredentials interface depois que o canal é criado. Isso ocorre porque Windows Communication Foundation (WCF) não dá suporte à alteração das configurações de segurança em um canal já aberto. Quando o cliente do moniker de serviço obtém um proxy, o canal ainda não foi criado. Portanto, o cliente deve chamar IChannelCredentials métodos antes de invocar o método de serviço. Se o cliente chamar um IChannelCredentials método depois que o método de serviço for invocado, a exceção RPC_E_TOO_LATE será gerada.

Métodos

Nome Description
SetClientCertificateFromFile(String, String, String)

Recupera um certificado de um arquivo e o adiciona às credenciais do cliente.

SetClientCertificateFromStore(String, String, String, Object)

Recupera um certificado de um repositório de certificados e o adiciona às credenciais do cliente.

SetClientCertificateFromStoreByName(String, String, String)

Recupera um certificado de um repositório de certificados pelo nome e o adiciona às credenciais do cliente.

SetDefaultServiceCertificateFromFile(String, String, String)

Recupera um certificado de um arquivo e o adiciona às credenciais de serviço como o certificado padrão.

SetDefaultServiceCertificateFromStore(String, String, String, Object)

Recupera um certificado de um repositório de certificados e o adiciona às credenciais de serviço como o certificado padrão.

SetDefaultServiceCertificateFromStoreByName(String, String, String)

Recupera um certificado de um repositório de certificados pelo nome e o adiciona às credenciais de serviço como o certificado padrão.

SetIssuedToken(String, String, String)

Define parâmetros para o token emitido.

SetServiceCertificateAuthentication(String, String, String)

Define os parâmetros de autenticação de certificado de serviço.

SetUserNameCredential(String, String)

Define as credenciais de nome de usuário.

SetWindowsCredential(String, String, String, Int32, Boolean)

Define as credenciais de Windows.

Aplica-se a