Metode IBTSTicket.ValidateAndRedeemTicket (COM)

 

Mengambil kredensial yang terkait dengan pesan BizTalk.

Sintaks

  
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  
  

Parameter

punkMessage
[in] Menentukan pesan BizTalk Server.

punkMessage
[in] Menentukan pesan BizTalk Server.

bstrApplicationName
[in] String yang menentukan nama aplikasi. Parameter ini tidak boleh NULL, string kosong, atau berisi spasi. Nama aplikasi tidak peka huruf besar/kecil, tetapi kasus akan dipertahankan. "ABC", "abc" dan "AbC" dianggap sebagai aplikasi yang sama.

bstrApplicationName
[in] String yang menentukan nama aplikasi. Parameter ini tidak boleh NULL, string kosong, atau berisi spasi. Nama aplikasi tidak peka huruf besar/kecil, tetapi kasus akan dipertahankan. "ABC", "abc" dan "AbC" dianggap sebagai aplikasi yang sama.

iFlags
[in] Bilangan bulat panjang yang menentukan set bendera. Gunakan bendera Enterprise Single Sign-On Flags untuk melewati cache kredensial.

iFlags
[in] Panjang yang menentukan set bendera. Gunakan bendera Bendera Sign-On Tunggal Perusahaan untuk melewati cache kredensial

pbstrExternalUserName
[keluar] Penunjuk ke string yang menentukan nama pengguna eksternal.

pbstrExternalUserName
[keluar] String yang menentukan nama pengguna eksternal.

Tampilkan Nilai

Metode ini mengembalikan HRESULT yang menunjukkan apakah berhasil diselesaikan. Lihat bagian Nilai Kesalahan untuk detail selengkapnya.

Array string yang berisi kredensial eksternal.

Pengecualian

Metode ini mengembalikan HRESULT yang berisi salah satu nilai dalam tabel berikut.

Metode ini menunjukkan kesalahan dengan mengatur properti Angka objek Err global ke salah satu nilai dalam tabel berikut:

Nilai Deskripsi
S_OK Metode berhasil.
E_ACCESSDENIED Akses ditolak ke penelepon.
E_INVALIDARG Parameter yang tidak valid terdeteksi.

Keterangan

Metode ini memvalidasi bahwa identitas pengirim dalam pesan Microsoft® BizTalk® Server cocok dengan identitas pengguna dalam tiket sebelum menukarkan tiket.

Karena kredensial dikembalikan dalam teks yang jelas dengan metode ini, pemanggil harus berhati-hati untuk menghapus (menimpanya sesegera mungkin setelah digunakan.

Untuk mengakses metode ini, Anda harus menjadi Administrator SSO, Administrator Afiliasi SSO, atau Administrator Aplikasi.

Contoh

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  

Persyaratan

Platform: Windows

Lihat juga

Antarmuka IBTSTicket (COM)
Anggota IBTSTicket (COM)