Compartilhar via


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

Os clientes não gerenciados usam o moniker "Service" para acessar os serviços do 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 do 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 oferece suporte à alteração de configurações de segurança em um canal já aberto. Quando o cliente moniker do 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á lançada.

Métodos

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 do 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 do 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 do 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 do Windows.

Aplica-se a