Metodo IBTSTicket.ValidateAndRedeemTicket (COM)

 

Recupera le credenziali associate a un messaggio BizTalk.

Sintassi

  
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  
  

Parametri

punkMessage
[in] Specifica il messaggio BizTalk Server.

punkMessage
[in] Specifica il messaggio BizTalk Server.

bstrApplicationName
[in] Stringa che specifica il nome dell'applicazione. Questo parametro non può essere NULL o una stringa vuota, né contenere spazi. Nei nomi delle applicazioni non è rilevante la distinzione tra maiuscole e minuscole, ma viene conservata la rispettiva combinazione di maiuscole/minuscole. Ad esempio, ABC, abc e AbC sono considerati come la stessa applicazione.

bstrApplicationName
[in] Stringa che specifica il nome dell'applicazione. Questo parametro non può essere NULL o una stringa vuota, né contenere spazi. Nei nomi delle applicazioni non è rilevante la distinzione tra maiuscole e minuscole, ma viene conservata la rispettiva combinazione di maiuscole/minuscole. Ad esempio, ABC, abc e AbC sono considerati come la stessa applicazione.

lFlags
[in] Valore intero lungo che specifica i flag impostati. Usare il flag Enterprise Single Sign-On Flags per ignorare la cache delle credenziali.

lFlags
[in] Long che specifica i flag impostati. Usare il flag Enterprise Single Sign-On Flags per ignorare la cache delle credenziali

pbstrExternalUserName
[out] Puntatore a una stringa che specifica il nome utente esterno.

pbstrExternalUserName
[out] Stringa che specifica il nome utente esterno.

Valore restituito

Questo metodo restituisce un HRESULT che indica se il metodo viene completato in modo corretto. Per ulteriori dettagli, vedere la sezione relativa ai valori di errore.

Matrice di stringhe che contiene le credenziali esterne.

Eccezioni

Questo metodo restituisce un HRESULT contenente uno dei valori riportati nella tabella seguente.

Questo metodo indica errori impostando la proprietà Number dell'oggetto Err globale su uno dei valori riportati nella tabella seguente:

Valore Descrizione
S_OK Il metodo è riuscito.
E_ACCESSDENIED Al chiamante viene negato l'accesso.
E_INVALIDARG È stato rilevato un parametro non valido.

Commenti

Il metodo convalida la corrispondenza tra l'identità del mittente nel messaggio di Microsoft® BizTalk® Server e l'identità utente nel ticket prima che questo venga riscattato.

Poiché questo metodo restituisce le credenziali come testo non crittografato, il chiamante deve prestare attenzione a cancellarle (sovrascriverle) nel più breve tempo possibile dopo averle utilizzate.

Per accedere a questo metodo, è necessario essere un amministratore SSO, un amministratore di applicazioni affiliate SSO o un amministratore di applicazioni.

Esempio

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  

Requisiti

Piattaforme: Finestre

Vedere anche

Interfaccia IBTSTicket (COM)
Membri IBTSTicket (COM)