IChannelCredentials Interface

Definição

Uma interface que permite a definição de certas funcionalidades de segurança num 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)  

Observações

Os clientes não geridos usam a designação "service" para aceder aos serviços da Windows Communication Foundation (WCF). Estes clientes estão sujeitos ao modelo de segurança WCF em vez do modelo de segurança COM. A IChannelCredentials interface é fornecida para especificar as credenciais do canal. Isto é necessário porque o nome COM não consegue aceder ao modelo de objetos de segurança WCF gerido.

Não é legal chamar métodos na IChannelCredentials interface após a criação do canal. Isto porque o Windows Communication Foundation (WCF) não suporta alterar definições de segurança num canal já aberto. Quando o cliente de nome de serviço obtém um proxy, o canal ainda não foi criado. Assim, o cliente deve chamar IChannelCredentials métodos antes de invocar o método de serviço. Se o cliente chamar um IChannelCredentials método após o método de serviço ser invocado, a exceção RPC_E_TOO_LATE é lançada.

Métodos

Name Description
SetClientCertificateFromFile(String, String, String)

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

SetClientCertificateFromStore(String, String, String, Object)

Recupera um certificado de um armazenamento de certificados e adiciona-o às credenciais do cliente.

SetClientCertificateFromStoreByName(String, String, String)

Recupera um certificado de um armazenamento de certificados pelo nome e adiciona-o às credenciais do cliente.

SetDefaultServiceCertificateFromFile(String, String, String)

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

SetDefaultServiceCertificateFromStore(String, String, String, Object)

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

SetDefaultServiceCertificateFromStoreByName(String, String, String)

Recupera um certificado de um armazenamento de certificados pelo nome e adiciona-o às credenciais de serviço como 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 do certificado de serviço.

SetUserNameCredential(String, String)

Define as credenciais do nome de utilizador.

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

Define as credenciais do Windows.

Aplica-se a