IBTSTicket.ValidateAndRedeemTicket 方法 (COM)
會擷取與 BizTalk 訊息相關聯的認證。
語法
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
參數
punkMessage
[in]指定BizTalk Server訊息。
punkMessage
[in]指定BizTalk Server訊息。
bstrApplicationName
[in] 指定應用程式名稱的字串。 這個參數不可以是 NULL 或空字串,或是包含空格。 應用程式名稱不區分大小寫,但是將會保持大小寫。 "ABC"、"abc" 和 "AbC" 都會被視為相同的應用程式。
bstrApplicationName
[in] 指定應用程式名稱的字串。 這個參數不可以是 NULL 或空字串,或是包含空格。 應用程式名稱不區分大小寫,但是將會保持大小寫。 "ABC"、"abc" 和 "AbC" 都會被視為相同的應用程式。
lFlags
[in]指定旗標集的長整數。 使用旗標 Enterprise Single Sign-On Flags 略過認證快取。
lFlags
[in]指定旗標集的 Long。 使用旗標 Enterprise Single Sign-On Flags 略過認證快取
pbstrExternalUserName
[out]指定外部使用者名稱之字串的指標。
pbstrExternalUserName
[out]指定外部使用者名稱的字串。
傳回值
這個方法會傳回 HRESULT,指出它是否已成功完成。 如需詳細資訊,請參閱「錯誤值」一節。
包含外部認證的字串陣列。
例外狀況
這個方法會傳回 HRESULT,其中包含下表的一個值。
這個方法會將全域 Err 物件的 Number 屬性設定為下表的其中一個值,以指出錯誤:
值 | 描述 |
S_OK | 此方法已成功。 |
E_ACCESSDENIED | 拒絕呼叫者的存取。 |
E_INVALIDARG | 偵測到無效的參數。 |
備註
這個方法會在贖回票證之前,會先驗證 Microsoft® BizTalk® Server 訊息的傳送者識別是否符合票證中的使用者識別。
由於這個方法是以純文字格式傳回認證,因此呼叫者應該小心,並在使用完畢之後盡快清除 (覆寫) 這些認證。
若要存取此方法,您必須是 SSO 系統管理員、SSO 分支機構系統管理員,或是應用程式系統管理員。
範例
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
規格需求
平臺: 窗戶
另請參閱
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應