Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

816 lines
32 KiB

/**********************************************************************/
/** Microsoft Passport **/
/** Copyright(c) Microsoft Corporation, 1999 - 2001 **/
/**********************************************************************/
/*
Passport.idl
FILE HISTORY:
*/// Passport.idl : IDL source for Passport.dll
//
// This file will be processed by the MIDL tool to
// produce the type library (Passport.tlb) and marshalling code.
cpp_quote("// Size definitions")
const int PASSPORT_COOKIES_MAXLEN = 512;
const int PASSPORT_COOKIES_BUFSIZE = PASSPORT_COOKIES_MAXLEN + 1;
const int PASSPORT_EMAIL_MAXLEN = 64 + 1 + 64;
const int PASSPORT_EMAIL_BUFSIZE = PASSPORT_EMAIL_MAXLEN + 1;
const int PASSPORT_NICKNAME_MAXLEN = 30;
const int PASSPORT_NICKNAME_BUFSIZE = PASSPORT_NICKNAME_MAXLEN + 1;
// flags for OnStartPageHeaders
const int PASSPORT_HEADER_FLAGS_HTTPS = 0x1;
// max size for encryption
// max blocks + 10 should be multiples of 3 for simplicity
const int ENC_MAX_SIZE = 2045;
// max size for decryption
// I don't trust the compiler... (((2045+10)*4)/3)+9 = 2749 * sizeof(wchar)
const int DEC_MAX_SIZE = 5498;
//
// passport core profile names
//
const char* MSPP_PROF_MEMBER_NAME = "membername";
const char* MSPP_PROF_HI_UID = "memberidhigh";
const char* MSPP_PROF_LO_UID = "memberidlow";
const char* MSPP_PROF_VERSION = "profileVersion";
const char* MSPP_PROF_COUNTRY = "country";
const char* MSPP_PROF_POSTALCODE = "postalCode";
const char* MSPP_PROF_REGION = "region";
const char* MSPP_PROF_CITY = "city";
const char* MSPP_PROF_LANGPREF = "lang_preference";
const char* MSPP_PROF_BDAYPREC = "bday_precision";
const char* MSPP_PROF_BDATE = "birthdate";
const char* MSPP_PROF_GENDER = "gender";
const char* MSPP_PROF_PREF_EMAIL = "preferredEmail";
const char* MSPP_PROF_NICKNAME = "nickname";
const char* MSPP_PROF_ACCESS = "accessibility";
const char* MSPP_PROF_WALLET = "wallet";
const char* MSPP_PROF_DIRECTORY = "directory";
const char* MSPP_PROF_MSNIA = "inetaccess";
const char* MSPP_PROF_FLAGS = "flags";
import "oaidl.idl";
import "ocidl.idl";
[
object,
uuid(ACE1AC86-E14F-4f7b-B89A-805A69959680),
dual,
helpstring("IDomainMap Interface"),
pointer_default(unique)
]
interface IDomainMap : IUnknown
{
[helpstring("Returns information about a given member domain, such as registration URL, etc.")]
HRESULT GetDomainAttribute([in] BSTR attributeName,
[in,optional] VARIANT lcid,
[in,optional] VARIANT domain,
[out,retval] BSTR *pAttrVal);
[propget, helpstring("The list of all valid Passport domains, including 'default'")]
HRESULT Domains([out,retval] VARIANT *pArrayVal);
[helpstring("Determine whether a given domain name is the name of a domain authority.")]
HRESULT DomainExists([in] BSTR domainName,
[out,retval] VARIANT_BOOL* pbExists);
};
[
object,
uuid(41651BF1-A5C8-11D2-95DF-00C04F8E7A70),
dual,
helpstring("IPassportTicket Interface -- internal used"),
pointer_default(unique)
]
interface IPassportTicket : IDispatch
{
[propget, id(1), helpstring("The raw ticket bytes, unencrypted.")]
HRESULT unencryptedTicket([out, retval] BSTR *pVal);
[propput, id(1), helpstring("The raw ticket bytes, unencrypted.")]
HRESULT unencryptedTicket([in] BSTR newVal);
[propget, id(2),
helpstring("TRUE if the user has been authenticated to this site/domain within the TimeWindow, and if ForceLogin is true, that they have typed in their password within the TimeWindow.")]
HRESULT IsAuthenticated( [in] ULONG TimeWindow,
[in] VARIANT_BOOL ForceLogin,
[in,optional] VARIANT SecureLevel,
[out, retval] VARIANT_BOOL *pVal);
[propget, id(3), helpstring("Age of the ticket, in seconds")]
HRESULT TicketAge([out, retval] int *pVal);
[propget, id(4), helpstring("Number of seconds since the user typed in their password")]
HRESULT TimeSinceSignIn([out, retval] int *pVal);
[propget, id(5), helpstring("The user's 64-bit numeric member ID, encoded as a string")]
HRESULT MemberId([out, retval] BSTR *pVal);
[propget, id(6), helpstring("The lower 32 bits of the member id")]
HRESULT MemberIdLow([out, retval] int *pVal);
[propget, id(7), helpstring("The upper 32 bits of the member id")]
HRESULT MemberIdHigh([out, retval] int *pVal);
[propget, id(8), helpstring("TRUE if the user requested that their password be saved")]
HRESULT HasSavedPassword([out, retval] VARIANT_BOOL *pVal);
[propget, id(9), helpstring("Gets the fully qualified hostname of the signin server for this user")]
HRESULT SignInServer([out, retval] BSTR *pVal);
[propget, id(10), helpstring("Gets the absolute time the ticket was generated")]
HRESULT TicketTime([out, retval] long *pVal);
[propget, id(11), helpstring("Gets the absolute time the member last signed in")]
HRESULT SignInTime([out, retval] long *pVal);
[propget, id(12), helpstring("Gets any Passport Network errors that occurred")]
HRESULT Error([out, retval] long *pVal);
[id(13), helpstring("method DoSecureCheck with Secure Cookie")]
HRESULT DoSecureCheck([in] BSTR bstrSec);
[id(14), helpstring("method DoSecureCheckInTicket")]
HRESULT DoSecureCheckInTicket([in] BOOL fSecureTransported);
};
[
object,
uuid(5992F4F4-05CB-4944-A426-1E1870266F85),
dual,
helpstring("IPassportTicket2 Interface"),
pointer_default(unique)
]
interface IPassportTicket2 : IPassportTicket
{
typedef enum {
ConsentStatus_Unknown = 0,
ConsentStatus_Known,
ConsentStatus_NotDefinedInTicket,
ConsentStatus_DoNotNeed,
} ConsentStatusEnum;
[id(21), helpstring("method GetProperty")]
HRESULT GetProperty( [in] BSTR propName,
[out, retval] VARIANT* pVal);
[id(22), helpstring("method SetTertiaryConsent")]
HRESULT SetTertiaryConsent([in] BSTR consentCookie);
[id(23), helpstring("method ConsentStatus")]
HRESULT ConsentStatus(
[in] VARIANT_BOOL RequireConsentStatus,
[out] ULONG* consentFlags,
[out, retval] ConsentStatusEnum* pConsentCode);
};
[
object,
uuid(41651BF3-A5C8-11D2-95DF-00C04F8E7A70),
dual,
helpstring("IPassportProfile Interface"),
pointer_default(unique)
]
interface IPassportProfile : IDispatch
{
[propget, id(DISPID_VALUE), helpstring("Gets a profile attribute by name")]
HRESULT Attribute([in] BSTR name, [out, retval] VARIANT *pVal);
[propput, id(DISPID_VALUE), helpstring("Sets a profile attribute by name")]
HRESULT Attribute([in] BSTR name, [in] VARIANT newVal);
[propget, id(1), helpstring("Gets a profile attribute by numeric index")]
HRESULT ByIndex([in] int index, [out, retval] VARIANT *pVal);
[propput, id(1), helpstring("Sets a profile attribute by numeric index")]
HRESULT ByIndex([in] int index, [in] VARIANT newVal);
[propget, id(2), helpstring("TRUE if the profile token is valid according to its schema")]
HRESULT IsValid([out, retval] VARIANT_BOOL *pVal);
[propget, id(3), helpstring("The name of the schema by which the profile is interpreted. Must be set BEFORE using the object")]
HRESULT SchemaName([out, retval] BSTR *pVal);
[propput, id(3), helpstring("The name of the schema by which the profile is interpreted. Must be set BEFORE using the object")]
HRESULT SchemaName([in] BSTR newVal);
[propget, id(4), helpstring("The raw, unencrypted profile bytes")]
HRESULT unencryptedProfile([out, retval] BSTR *pVal);
[propput, id(4), helpstring("The raw, unencrypted profile bytes")]
HRESULT unencryptedProfile([in] BSTR newVal);
[propget, id(5), helpstring("The raw update string, if any, which can be sent as a 'diff' to the update server")]
HRESULT updateString([out,retval] BSTR *pVal);
};
[
object,
uuid(41651BEF-A5C8-11D2-95DF-00C04F8E7A70),
dual,
helpstring("IPassportManager Interface"),
pointer_default(unique)
]
interface IPassportManager : IDispatch
{
//Standard Server Side Component Methods
HRESULT OnStartPage([in] IUnknown* piUnk);
HRESULT OnEndPage();
HRESULT OnStartPageECB([in] BYTE *pECB,
[in,out] DWORD *pBufSize,
[out, size_is(*pBufSize)] LPSTR pCookieHeader);
[
hidden
]
HRESULT _Ticket([out] IPassportTicket** piTicket);
[
hidden
]
HRESULT _Profile([out] IPassportProfile** piProfile);
[
id(1),
helpstring("Returns a URL with the correct login server and path based on the member's domain and optional parameters")
]
HRESULT AuthURL([in,optional] VARIANT returnUrl,
[in,optional] VARIANT TimeWindow,
[in,optional] VARIANT ForceLogin,
[in,optional] VARIANT coBrandArgs,
[in,optional] VARIANT lang_id,
[in,optional] VARIANT NameSpace,
[in,optional] VARIANT KPP,
[in,optional] VARIANT SecureLevel,
[out, retval] BSTR *pAuthVal);
[
id(2),
helpstring("TRUE if the user has been authenticated to this site/domain within the TimeWindow, and if ForceLogin is true, that they have typed in their password within the TimeWindow.")
]
HRESULT IsAuthenticated([in,optional] VARIANT TimeWindow,
[in,optional] VARIANT ForceLogin,
[in,optional] VARIANT SecureLevel,
[out, retval] VARIANT_BOOL *pVal);
[
id(3),
helpstring("Returns an HREF with an imbedded image tag to display the Passport logo")
]
HRESULT LogoTag([in,optional] VARIANT returnUrl,
[in,optional] VARIANT TimeWindow,
[in,optional] VARIANT ForceLogin,
[in,optional] VARIANT coBrandArgs,
[in,optional] VARIANT lang_id,
[in,optional] VARIANT bSecure,
[in,optional] VARIANT NameSpace,
[in,optional] VARIANT KPP,
[in,optional] VARIANT SecureLevel,
[out, retval] BSTR *pVal);
[id(4), helpstring("TRUE if the user has Passport profile data available")]
HRESULT HasProfile([in,optional] VARIANT ProfileName, [out, retval] VARIANT_BOOL *pVal);
[propget, id(5), helpstring("TRUE if the user has an authentication Ticket in this domain, regardless of how old it is")]
HRESULT HasTicket([out, retval] VARIANT_BOOL *pVal);
[propget, id(6), helpstring("TRUE if this page view is the FIRST page view after the user was sent to the login server, determined by new valid cookie data in the query string")]
HRESULT FromNetworkServer([out, retval] VARIANT_BOOL *pVal);
[id(7), helpstring("TRUE if the specified flag has been raised in the processing of this user's page view")]
HRESULT HasFlag([in,optional] VARIANT flagMask, [out, retval] VARIANT_BOOL *pVal);
[propget, id(8), helpstring("The age of the authentication ticket, in seconds")]
HRESULT TicketAge([out, retval] int *pVal);
[propget, id(9), helpstring("Number of seconds since the last time the user typed in their password")]
HRESULT TimeSinceSignIn([out, retval] int *pVal);
[id(10), helpstring("Returns information about a given member domain, such as registration URL, etc.")]
HRESULT GetDomainAttribute( [in] BSTR attributeName,
[in,optional] VARIANT lcid,
[in,optional] VARIANT domain,
[out,retval] BSTR *pAttrVal);
[id(11), helpstring("Returns the member domain part of a member's fully qualified name")]
HRESULT DomainFromMemberName( [in,optional] VARIANT memberName,
[out,retval] BSTR *pDomainName);
[propget, id(12), helpstring("Gets a profile attribute by numeric index")]
HRESULT ProfileByIndex([in] int index, [out, retval] VARIANT *pVal);
[propput, id(12), helpstring("This method is deprecated. Do not use for Passport 2.0 implementation")]
HRESULT ProfileByIndex([in] int index, [in] VARIANT newVal);
[id(13), helpstring("This method is deprecated. Do not use for Passport 2.0 implementation")]
HRESULT OnStartPageManual([in] BSTR queryStringT,
[in] BSTR queryStringP,
[in] BSTR MSPAuthCookie,
[in] BSTR MSPProfCookie,
[in] BSTR MSPConsentCookie,
[in,optional] VARIANT vMSPSecCookie,
[out, retval] VARIANT *pSetCookieArray);
[propget, id(14), helpstring("TRUE if the user requested that their password be saved")]
HRESULT HasSavedPassword([out, retval] VARIANT_BOOL *pVal);
[id(15), helpstring("This method is deprecated. Do not use for Passport 2.0 implementation")]
HRESULT Commit([out,retval] BSTR *pNewProfileCookieHeader);
[propget, id(DISPID_VALUE), helpstring("Returns the value a profile attribute, such as alias or gender")]
HRESULT Profile([in] BSTR attributeName, [out, retval] VARIANT *pVal);
[propput, id(DISPID_VALUE), helpstring("This method is deprecated. Do not use for Passport 2.0 implementation")]
HRESULT Profile([in] BSTR attributeName, [in] VARIANT newVal);
[hidden, propget, id(16), helpstring("Gets the absolute time the ticket was generated")]
HRESULT TicketTime([out, retval] long *pVal);
[hidden, propget, id(17), helpstring("Gets the absolute time the member last signed in")]
HRESULT SignInTime([out, retval] long *pVal);
[hidden, propget, id(18), helpstring("The list of all valid Passport domains, including 'default'")]
HRESULT Domains([out,retval] VARIANT *pArrayVal);
[propget, id(19), helpstring("Returns any network error code associated with this request")]
HRESULT Error([out,retval] long *pErrorVal);
[hidden, helpstring("Initialize Passport Manager for use within an ISAPI filter")]
HRESULT OnStartPageFilter( [in] BYTE* pPFC,
[in,out] DWORD* pBufSize,
[out, size_is(*pBufSize)] LPSTR pCookieHeader);
[id(20), helpstring("Initialize Passport Manager object using Request/Response ASP objects")]
HRESULT OnStartPageASP( [in] IDispatch* pdispRequest,
[in] IDispatch* pdispResponse);
[hidden, id(21), helpstring("method GetServerInfo")]
HRESULT GetServerInfo([out,retval] BSTR *pbstrOut);
[id(22), helpstring("Returns true if the currently signed on user has consent")]
HRESULT HaveConsent([in] VARIANT_BOOL bNeedFullConsent,
[in] VARIANT_BOOL bNeedBirthdate,
[out,retval] VARIANT_BOOL* pbHaveConsent);
};
[
object,
uuid(8ca48d6a-0b51-4f7a-9475-b0a8b59c3999),
dual,
helpstring("IPassportManager2 Interface"),
pointer_default(unique)
]
interface IPassportManager2 : IPassportManager
{
[id(23),helpstring("Partners should use this call to initiate user logon. It does redirect inside")]
HRESULT LoginUser([in, optional] VARIANT returnUrl,
[in, optional] VARIANT TimeWindow,
[in, optional] VARIANT ForceLogin,
[in, optional] VARIANT coBrandTemplate,
[in, optional] VARIANT lang_id,
[in, optional] VARIANT NameSpace,
[in, optional] VARIANT KPP,
[in, optional] VARIANT SecureLevel,
[in, optional] VARIANT ExtraParams);
[
id(24),
helpstring("Returns a URL used for login on the member's domain and optional parameters")
]
HRESULT AuthURL2([in,optional] VARIANT returnUrl,
[in,optional] VARIANT TimeWindow,
[in,optional] VARIANT ForceLogin,
[in,optional] VARIANT coBrandArgs,
[in,optional] VARIANT lang_id,
[in,optional] VARIANT NameSpace,
[in,optional] VARIANT KPP,
[in,optional] VARIANT SecureLevel,
[out, retval] BSTR *pAuthVal);
[
id(25),
helpstring("Returns an HREF with an imbedded image tag to display the Passport logo")
]
HRESULT LogoTag2([in,optional] VARIANT returnUrl,
[in,optional] VARIANT TimeWindow,
[in,optional] VARIANT ForceLogin,
[in,optional] VARIANT coBrandArgs,
[in,optional] VARIANT lang_id,
[in,optional] VARIANT bSecure,
[in,optional] VARIANT NameSpace,
[in,optional] VARIANT KPP,
[in,optional] VARIANT SecureLevel,
[out, retval] BSTR *pVal);
};
[
object,
uuid(1451151f-90a0-491b-b8e1-81a13767ed98),
dual,
helpstring("IPassportManager3 Interface"),
pointer_default(unique)
]
interface IPassportManager3 : IPassportManager2
{
[propget, id(30),
helpstring("Returns the value a ticket attribute, such as security level")]
HRESULT Ticket([in] BSTR attributeName, [out, retval] VARIANT *pVal);
[
id(31),
helpstring("Returns config settings the registry")
]
HRESULT GetCurrentConfig([in] BSTR name, [out, retval] VARIANT *pVal);
[
id(32),
helpstring("Returns LogoutURL")
]
HRESULT LogoutURL([in,optional] VARIANT returnUrl,
[in,optional] VARIANT coBrandArgs,
[in,optional] VARIANT lang_id,
[in,optional] VARIANT domain,
[in,optional] VARIANT bSecure,
[out, retval] BSTR *pVal);
[id(33),helpstring("To get Auth Challenge Headers")]
HRESULT GetLoginChallenge([in, optional] VARIANT returnUrl,
[in, optional] VARIANT TimeWindow,
[in, optional] VARIANT ForceLogin,
[in, optional] VARIANT coBrandTemplate,
[in, optional] VARIANT lang_id,
[in, optional] VARIANT NameSpace,
[in, optional] VARIANT KPP,
[in, optional] VARIANT SecureLevel,
[in, optional] VARIANT ExtraParams,
[out, retval] BSTR* pAuthHeader
);
[propget, id(34), helpstring("PUID")]
HRESULT HexPUID([out, retval] BSTR *pVal);
[id(35), helpstring("on start page with http request line and headers")]
HRESULT OnStartPageHTTPRaw(
[in, string] LPCSTR request_line,
[in, string] LPCSTR headers,
[in] DWORD flags,
[in,out] DWORD *pRespHeadersSize,
[out, size_is(*pRespHeadersSize)] LPSTR pRespHeaders);
[id(36),
helpstring("continue auth with addtional http body, as required by the return value of OnStartPageHTTPRaw")]
HRESULT ContinueStartPageHTTPRaw(
[in] DWORD bodyLen,
[in, size_is(bodyLen)] byte* body,
[in,out] DWORD *pBufSize,
[out, size_is(*pBufSize)] LPSTR pRespHeadersSize,
[in, out] DWORD* pRespBodyLen,
[out, size_is(*pRespBodyLen)] byte* pRespBody);
[propget, id(37), helpstring("Passport manager Options")]
HRESULT Option([in] BSTR name, [out, retval] VARIANT *pVal);
[propput, id(37), helpstring("passport manager options")]
HRESULT Option([in] BSTR name, [in] VARIANT newVal);
};
[
object,
uuid(41651BF9-A5C8-11D2-95DF-00C04F8E7A70),
dual,
helpstring("IPassportCrypt Interface"),
pointer_default(unique)
]
interface IPassportCrypt : IDispatch
{
[id(1), helpstring("Encrypt a blob of data")]
HRESULT Encrypt([in] BSTR rawData, [out,retval] BSTR *pEncrypted);
[id(2), helpstring("Decrypt a blob of data")]
HRESULT Decrypt([in] BSTR rawData, [out,retval] BSTR *pUnencrypted);
[hidden, propget, id(3), helpstring("keyVersion number for multiple key support")]
HRESULT keyVersion([out, retval] int *pVal);
[hidden, propput, id(3), helpstring("keyVersion number for multiple key support")]
HRESULT keyVersion([in] int newVal);
[propget, id(4), helpstring("Find out if this object is capable of encryption")]
HRESULT IsValid([out, retval] VARIANT_BOOL *pVal);
[hidden, propput, id(5),
helpstring("For advanced users only: this sets the keyMaterial of the encryption algorithm")]
HRESULT keyMaterial([in] BSTR newVal);
[id(6), helpstring("Compress a string.")]
HRESULT Compress([in] BSTR bstrIn, [out,retval] BSTR *pbstrOut);
[id(7), helpstring("Decompress a string.")]
HRESULT Decompress([in] BSTR bstrIn, [out,retval] BSTR *pbstrOut);
[id(8), propput, helpstring("Use a different set of keys based on site name.")]
HRESULT site([in] BSTR bstrSiteName);
[id(9), helpstring("on start page")]
HRESULT OnStartPage([in] IUnknown* piUnk);
[id(10), propput, helpstring("Use a different set of keys based on host name.")]
HRESULT host([in] BSTR bstrHostName);
};
// passport admin interface
[
object,
uuid(A0082CF5-AFF5-11D2-95E3-00C04F8E7A70),
dual,
helpstring("IPassportAdmin Interface"),
pointer_default(unique)
]
interface IPassportAdmin : IDispatch
{
[propget, id(1), helpstring("TRUE if all configuration is ok and Passport objects are functional")]
HRESULT IsValid([out, retval] VARIANT_BOOL *pVal);
[propget, id(2), helpstring("Get the description for configuration error")]
HRESULT ErrorDescription([out, retval] BSTR *pVal);
[id(3), helpstring("Adds a key to the key store")]
HRESULT addKey(
[in] BSTR keyMaterial,
[in] int version,
[in] long expires,
[out,retval] VARIANT_BOOL *ok
);
[id(4), helpstring("Removes a key from the store")]
HRESULT deleteKey([in] int version);
[id(5), helpstring("Change the exipration time on a key")]
HRESULT setKeyTime([in] int version, [in] int fromNow);
[propget, id(6), helpstring("Get the current key version number")]
HRESULT currentKeyVersion([out,retval] int *pCur);
[propput, id(6), helpstring("Set the current key version number")]
HRESULT currentKeyVersion([in] int cur);
[hidden, id(7), helpstring("Refresh nexus and registry configuration")]
HRESULT Refresh([in] VARIANT_BOOL bWait,
[out,retval] VARIANT_BOOL* pbSuccess);
};
[
object,
uuid(876181A0-3B05-11d3-9ACD-0080C712D19C),
dual,
helpstring("IPassportAdminEx Interface"),
pointer_default(unique)
]
interface IPassportAdminEx : IPassportAdmin
{
[id(8), helpstring("Adds a key to the key store")]
HRESULT addKeyEx(
[in] BSTR keyMaterial,
[in] int nVersion,
[in] long expires,
[in,optional] VARIANT vSiteName,
[out,retval] VARIANT_BOOL* ok
);
[id(9), helpstring("Removes a key from the store")]
HRESULT deleteKeyEx([in] int nVersion,
[in,optional] VARIANT vSiteName);
[id(10), helpstring("Change the exipration time on a key")]
HRESULT setKeyTimeEx(
[in] int nVersion,
[in] int fromNow,
[in,optional] VARIANT vSiteName);
[id(11), helpstring("Get the current key version number")]
HRESULT getCurrentKeyVersionEx(
[in,optional] VARIANT vSiteName,
[out,retval] int* pCur);
[id(12), helpstring("Set the current key version number")]
HRESULT putCurrentKeyVersionEx(
[in] int cur,
[in,optional] VARIANT vSiteName);
[id(13), helpstring("Set the nexus password")]
HRESULT setNexusPassword(
[in] BSTR bstrPwd);
};
[
object,
uuid(74EB2513-E239-11D2-95E9-00C04F8E7A70),
dual,
helpstring("This method is deprecated. Do not use for Passport 2.0 implementation"),
pointer_default(unique)
]
interface IPassportFastAuth : IDispatch
{
[id(1), helpstring("This method is deprecated. Do not use for Passport 2.0 implementation")]
HRESULT IsAuthenticated(
[in] BSTR bstrTicket,
[in] BSTR bstrProfile,
[in,optional] VARIANT vSecure,
[in,optional] VARIANT vTimeWindow,
[in,optional] VARIANT vForceLogin,
[in,optional] VARIANT vSiteName,
[in,optional] VARIANT vDoSecureCheck,
[out,retval] VARIANT_BOOL* pbIsAuthenticated
);
[id(2), helpstring("This method is deprecated. Do not use for Passport 2.0 implementation")]
HRESULT LogoTag([in] BSTR bstrTicket,
[in] BSTR bstrProfile,
[in,optional] VARIANT vRU,
[in,optional] VARIANT vTimeWindow,
[in,optional] VARIANT vForceLogin,
[in,optional] VARIANT vCoBrand,
[in,optional] VARIANT vLangId,
[in,optional] VARIANT vSecure,
[in,optional] VARIANT vLogoutURL,
[in,optional] VARIANT vSiteName,
[in,optional] VARIANT NameSpace,
[in,optional] VARIANT vKPP,
[in,optional] VARIANT SecureLevel,
[out,retval] BSTR* pbstrLogoTag
);
[id(3), helpstring("This method is deprecated. Do not use for Passport 2.0 implementation")]
HRESULT AuthURL([in,optional] VARIANT vTicket,
[in,optional] VARIANT vProfile,
[in,optional] VARIANT vRU,
[in,optional] VARIANT vTimeWindow,
[in,optional] VARIANT vForceLogin,
[in,optional] VARIANT vCoBrand,
[in,optional] VARIANT vLangId,
[in,optional] VARIANT vSecure,
[in,optional] VARIANT vLogoutURL,
[in,optional] VARIANT vReserved1,
[in,optional] VARIANT vSiteName,
[in,optional] VARIANT NameSpace,
[in,optional] VARIANT vKPP,
[in,optional] VARIANT SecureLevel,
[out,retval] BSTR* pbstrAuthURL
);
[id(4), helpstring("This method is deprecated. Do not use for Passport 2.0 implementation"), hidden]
HRESULT GetTicketAndProfilePFC(
[in] BYTE* pbPFC,
[in] BYTE* pbPPH,
[out] BSTR* pbstrTicket,
[out] BSTR* pbstrProfile,
[out] BSTR* pbstrSecure,
[out] BSTR* pbstrSiteName
);
[id(5), helpstring("This method is deprecated. Do not use for Passport 2.0 implementation"), hidden]
HRESULT GetTicketAndProfileECB(
[in] BYTE* pbECB,
[out] BSTR* pbstrTicket,
[out] BSTR* pbstrProfile,
[out] BSTR* pbstrSecure,
[out] BSTR* pbstrSiteName
);
};
[
object,
uuid(fb41a7d8-3739-4468-bdf1-e5b4b2eaeb4b),
dual,
helpstring("This method is deprecated. Do not use for Passport 2.0 implementation"),
pointer_default(unique)
]
interface IPassportFastAuth2 : IPassportFastAuth
{
[id(6), helpstring("This method is deprecated. Do not use for Passport 2.0 implementation")]
HRESULT LogoTag2([in] BSTR bstrTicket,
[in] BSTR bstrProfile,
[in,optional] VARIANT vRU,
[in,optional] VARIANT vTimeWindow,
[in,optional] VARIANT vForceLogin,
[in,optional] VARIANT vCoBrand,
[in,optional] VARIANT vLangId,
[in,optional] VARIANT vSecure,
[in,optional] VARIANT vLogoutURL,
[in,optional] VARIANT vSiteName,
[in,optional] VARIANT NameSpace,
[in,optional] VARIANT vKPP,
[in,optional] VARIANT SecureLevel,
[out,retval] BSTR* pbstrLogoTag
);
[id(7), helpstring("This method is deprecated. Do not use for Passport 2.0 implementation")]
HRESULT AuthURL2([in,optional] VARIANT vTicket,
[in,optional] VARIANT vProfile,
[in,optional] VARIANT vRU,
[in,optional] VARIANT vTimeWindow,
[in,optional] VARIANT vForceLogin,
[in,optional] VARIANT vCoBrand,
[in,optional] VARIANT vLangId,
[in,optional] VARIANT vSecure,
[in,optional] VARIANT vLogoutURL,
[in,optional] VARIANT vReserved1,
[in,optional] VARIANT vSiteName,
[in,optional] VARIANT NameSpace,
[in,optional] VARIANT vKPP,
[in,optional] VARIANT SecureLevel,
[out,retval] BSTR* pbstrAuthURL
);
};
[
object,
uuid(5602E147-27F6-11d3-94DD-00C04F72DC08),
dual,
helpstring("IPassportFactory Interface"),
pointer_default(unique)
]
interface IPassportFactory : IDispatch
{
HRESULT CreatePassportManager(
[out,retval] IDispatch** ppdispPassportManager
);
};
[
uuid(41651BE3-A5C8-11D2-95DF-00C04F8E7A70),
version(1.0),
helpstring("Passport 1.0 Type Library")
]
library PASSPORTLib
{
importlib("stdole32.tlb");
importlib("stdole2.tlb");
[
uuid(41651BF0-A5C8-11D2-95DF-00C04F8E7A70),
helpstring("Passport Manager")
]
coclass Manager
{
[default] interface IPassportManager3;
interface IPassportManager2;
interface IPassportManager;
interface IDomainMap;
};
[
uuid(41651BF2-A5C8-11D2-95DF-00C04F8E7A70),
helpstring("Passport Ticket Parser")
]
coclass Ticket
{
[default] interface IPassportTicket2;
interface IPassportTicket;
};
[
uuid(41651BF4-A5C8-11D2-95DF-00C04F8E7A70),
helpstring("Passport Profile Object")
]
coclass Profile
{
[default] interface IPassportProfile;
};
[
uuid(41651BFA-A5C8-11D2-95DF-00C04F8E7A70),
helpstring("Passport Encryption Class")
]
coclass Crypt
{
[default] interface IPassportCrypt;
};
[
uuid(A0082CF6-AFF5-11D2-95E3-00C04F8E7A70),
helpstring("Administration Interface for Passport Objects")
]
coclass Admin
{
[default] interface IPassportAdminEx;
interface IPassportAdmin;
};
[
uuid(5602E146-27F6-11d3-94DD-00C04F72DC08),
helpstring("PassportFastAuth Class")
]
coclass FastAuth
{
[default] interface IPassportFastAuth2;
interface IPassportFastAuth;
};
[
uuid(74EB2514-E239-11D2-95E9-00C04F8E7A70),
helpstring("PassportFactory Class")
]
coclass PassportFactory
{
[default] interface IPassportFactory;
};
};