IBTSTicket.ValidateAndRedeemTicket (método) (COM)

 

Recupera las credenciales asociadas a un mensaje de BizTalk.

Sintaxis

  
HRESULT ValidateAndRedeemTicket(  
IUnknown*  
punkMessage  
,  
BSTR  
bstrApplicationName  
,  
LONG  
lFlags  
,  
BSTR*  
pbstrExternalUserName  
,  
SAFEARRAY  
BSTR  
);  
  
  
HRESULT ValidateAndRedeemTicket(  
IUnknown*  
punkMessage  
,  
BSTR  
bstrApplicationName  
,  
LONG  
lFlags  
,  
BSTR*  
pbstrExternalUserName  
,  
SAFEARRAY  
BSTR  
);  
  
  
Function   
Ticket  
.ValidateAndRedeemTicket(  
punkMessage  
As Object,  
bstrApplicationName  
As String,  
lFlags  
As Long,  
pbstrExternalUserName  
As String  
)  
As String  
  

Parámetros

punkMessage
[in] Especifica el mensaje BizTalk Server.

punkMessage
[in] Especifica el mensaje BizTalk Server.

bstrApplicationName
[in] Cadena que especifica el nombre de la aplicación. Este parámetro no puede ser NULL, una cadena vacía ni incluir espacios. Los nombres de aplicación no distinguen mayúsculas de minúsculas, pero se conservarán mayúsculas y minúsculas. "ABC", "abc" y "AbC" se consideran la misma aplicación.

bstrApplicationName
[in] Cadena que especifica el nombre de la aplicación. Este parámetro no puede ser NULL, una cadena vacía ni incluir espacios. Los nombres de aplicación no distinguen mayúsculas de minúsculas, pero se conservarán mayúsculas y minúsculas. "ABC", "abc" y "AbC" se consideran la misma aplicación.

lFlags
[in] Entero largo que especifica los marcadores establecidos. Use la marca Enterprise Single Sign-On Flags para omitir la memoria caché de credenciales.

lFlags
[in] Long que especifica los marcadores establecidos. Use la marca Marca enterprise Single Sign-On Flags para omitir la memoria caché de credenciales.

pbstrExternalUserName
[out] Puntero a una cadena que especifica el nombre de usuario externo.

pbstrExternalUserName
[out] Cadena que especifica el nombre de usuario externo.

Valor devuelto

Este método devuelve un valor HRESULT que indica si se ha completado correctamente. Consulte la sección Valores de error para obtener información más detallada.

Matriz de cadena que contiene credenciales externas.

Excepciones

Este método devuelve un HRESULT que contiene uno de los valores de la siguiente tabla.

Este método indica errores al establecer uno de los valores de la siguiente tabla para la propiedad Número del objeto global Err:

Value Descripción
S_OK El método se ha llevado a cabo de forma correcta.
E_ACCESSDENIED Acceso denegado al autor de la llamada.
E_INVALIDARG Se ha detectado un parámetro no válido.

Comentarios

Este método comprueba que la identidad del remitente del mensaje de Microsoft® BizTalk® Server se corresponda con la identidad del usuario del ticket antes de canjearlo.

Debido a que las credenciales se devuelven en texto no cifrado a través de este método, el autor de la llamada debe actuar con precaución para borrarlos (sobrescribirlos) lo antes posible, tras su uso.

Para obtener acceso a este método, debe ser un administrador de SSO, administrador afiliado de SSO o un administrador de aplicación.

Ejemplo

using System;  
using System.Runtime.InteropServices;  
  
namespace Microsoft.BizTalk.PublicInterop  
{  
   // Only include flags that apply to these interfaces  
   // See the ssoflags.idl file  
  
   internal enum BTSTicketFlags  
   {  
      SSO_FLAG_NONE      = 0,  
      SSO_FLAG_REFRESH   = 1  
   };  
  
   [ComImport]  
   [TypeLibType(TypeLibTypeFlags.FCanCreate)]  
   [ClassInterface(ClassInterfaceType.None)]  
   [Guid("8DA848D0-E703-4043-9AF7-C569AC1F4507")]  
   internal class BTSTicket  
   {  
   }  
  
   [ComImport]  
   [InterfaceType(ComInterfaceType.InterfaceIsDual)]  
   [Guid("54596C7F-D343-4F20-BF7A-0722C5DA1F7D")]  
   [CoClass(typeof(BTSTicket))]  
   internal interface IBTSTicket  
   {  
      string[] ValidateAndRedeemTicket(  
         [In, MarshalAs(UnmanagedType.IUnknown)] object message,  
         string applicationName,  
         int flags,  
         out string externalUserName);  
   };  
}  
Imports System  
Imports System.Runtime.InteropServices  
  
Namespace Microsoft.BizTalk.PublicInterop  
  
   ' Only include flags that apply to these interfaces  
   ' See the ssoflags.idl file  
  
   Friend Enum BTSTicketFlags  
      SSO_FLAG_NONE       = 0  
      SSO_FLAG_REFRESH    = 1  
    End Enum  
  
   <ComImport(), TypeLibType(TypeLibTypeFlags.FCanCreate), ClassInterface(ClassInterfaceType.None), Guid("8DA848D0-E703-4043-9AF7-C569AC1F4507")> _  
    Friend Class BTSTicket  
    End Class  
  
   <ComImport(), InterfaceType(ComInterfaceType.InterfaceIsDual), Guid("54596C7F-D343-4F20-BF7A-0722C5DA1F7D"), CoClass(GetType(BTSTicket))> _  
   Friend Interface IBTSTicket  
      Function ValidateAndRedeemTicket( _  
         <InAttribute, MarshalAs(UnmanagedType.IUnknown)> message As Object, _  
         ByVal applicationName As String, _  
         ByVal flags As Integer, _  
         <OutAttribute> externalUserName As String) As String()  
   End Interface  
End Namespace  

Requisitos

Plataformas: Windows

Consulte también

IBTSTicket (interfaz) (COM)
Miembros de IBTSTicket (COM)