using System; using System.Runtime.CompilerServices; using System.Runtime.InteropServices; namespace Interop.LmxProxy; [ComImport] [InterfaceType(ComInterfaceType.InterfaceIsIUnknown)] [Guid("73ECBF0E-8A67-4878-8DED-934F6DBD943B")] public interface IUserAuthenticator3 : IUserAuthenticator2 { [MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)] [return: MarshalAs(UnmanagedType.Interface)] new ISecurityToken LogIn([In][MarshalAs(UnmanagedType.LPWStr)] string galaxyNodeName, [In][MarshalAs(UnmanagedType.LPWStr)] string galaxyName, [In][MarshalAs(UnmanagedType.LPWStr)] string UserName, [In][MarshalAs(UnmanagedType.LPWStr)] string userPassword, [In][MarshalAs(UnmanagedType.LPWStr)] string newPassword, [In][MarshalAs(UnmanagedType.LPWStr)] string newPasswordA, out ELOGIN eLoginFlag, [MarshalAs(UnmanagedType.BStr)] out string bstrReason); [MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)] new void GetAuthenticationMode([In][MarshalAs(UnmanagedType.LPWStr)] string galaxyNodeName, out EAUTHMODE eAuthenticationMode); [MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)] new void IsSecurityEnabled([In][MarshalAs(UnmanagedType.LPWStr)] string galaxyNodeName, out bool bEnable); [MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)] [return: MarshalAs(UnmanagedType.Interface)] new ISecurityToken UserLogIn([In][MarshalAs(UnmanagedType.LPWStr)] string UserName, [In] Guid callerID); [MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)] [return: MarshalAs(UnmanagedType.BStr)] new string GetUserName([In] ref VBGUID userGuid); [MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)] new bool IsLoginRequired([In][MarshalAs(UnmanagedType.LPWStr)] string galaxyNodeName); [MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)] new VBGUID GetUserId([In][MarshalAs(UnmanagedType.LPWStr)] string UserName); [MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)] [return: MarshalAs(UnmanagedType.Interface)] new ISecurityToken ChangeLogIn([In][MarshalAs(UnmanagedType.LPWStr)] string galaxyNodeName, [In][MarshalAs(UnmanagedType.LPWStr)] string galaxyName, [In][MarshalAs(UnmanagedType.LPWStr)] string UserName, [In][MarshalAs(UnmanagedType.LPWStr)] string userPassword, [In][MarshalAs(UnmanagedType.LPWStr)] string newPassword, [In][MarshalAs(UnmanagedType.LPWStr)] string newPasswordA, out ELOGIN eLoginFlag, [MarshalAs(UnmanagedType.BStr)] out string bstrReason); [MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)] [return: MarshalAs(UnmanagedType.Interface)] new ISecurityToken SmartCardLogIn([In][MarshalAs(UnmanagedType.LPWStr)] string galaxyNodeName, [In][MarshalAs(UnmanagedType.LPWStr)] string galaxyName, [In][MarshalAs(UnmanagedType.LPWStr)] string UserName, [In][MarshalAs(UnmanagedType.LPWStr)] string credential, [In][MarshalAs(UnmanagedType.LPWStr)] string userPin, out ELOGIN eLoginFlag, [MarshalAs(UnmanagedType.BStr)] out string bstrReason, [MarshalAs(UnmanagedType.BStr)] out string bstrLogonDomain); [MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)] [return: MarshalAs(UnmanagedType.Interface)] ISecurityToken GetUserSecurityToken([In][MarshalAs(UnmanagedType.LPWStr)] string loginDomain, [In][MarshalAs(UnmanagedType.LPWStr)] string loginName); }