152 references to Advapi32
System.DirectoryServices (152)
_generated\0\LibraryImports.g.cs (10)
446internal static partial uint LsaCreateTrustedDomainEx(global::Microsoft.Win32.SafeHandles.SafeLsaPolicyHandle handle, in global::Interop.Advapi32.TRUSTED_DOMAIN_INFORMATION_EX domainEx, in global::Interop.Advapi32.TRUSTED_DOMAIN_AUTH_INFORMATION authInfo, int desiredAccess, out nint domainHandle) 459fixed (global::Interop.Advapi32.TRUSTED_DOMAIN_AUTH_INFORMATION* __authInfo_native = &authInfo) 460fixed (global::Interop.Advapi32.TRUSTED_DOMAIN_INFORMATION_EX* __domainEx_native = &domainEx) 476static extern unsafe uint __PInvoke(nint __handle_native, global::Interop.Advapi32.TRUSTED_DOMAIN_INFORMATION_EX* __domainEx_native, global::Interop.Advapi32.TRUSTED_DOMAIN_AUTH_INFORMATION* __authInfo_native, int __desiredAccess_native, nint* __domainHandle_native); 662internal static partial uint LsaQueryTrustedDomainInfoByName(global::Microsoft.Win32.SafeHandles.SafeLsaPolicyHandle handle, in global::Interop.UNICODE_STRING trustedDomain, global::Interop.Advapi32.TRUSTED_INFORMATION_CLASS infoClass, ref nint buffer) 690static extern unsafe uint __PInvoke(nint __handle_native, global::Interop.UNICODE_STRING* __trustedDomain_native, global::Interop.Advapi32.TRUSTED_INFORMATION_CLASS __infoClass_native, nint* __buffer_native); 741internal static partial uint LsaSetTrustedDomainInfoByName(global::Microsoft.Win32.SafeHandles.SafeLsaPolicyHandle handle, in global::Interop.UNICODE_STRING trustedDomain, global::Interop.Advapi32.TRUSTED_INFORMATION_CLASS infoClass, nint buffer) 768static extern unsafe uint __PInvoke(nint __handle_native, global::Interop.UNICODE_STRING* __trustedDomain_native, global::Interop.Advapi32.TRUSTED_INFORMATION_CLASS __infoClass_native, nint __buffer_native);
src\runtime\src\libraries\Common\src\Microsoft\Win32\SafeHandles\SafeLsaPolicyHandle.cs (1)
20return Interop.Advapi32.LsaClose(handle) == 0;
System\DirectoryServices\ActiveDirectory\DirectoryContext.cs (3)
596else if ((result == 0) && (global::Interop.Advapi32.LsaNtStatusToWinError(protocolStatus) == Interop.Errors.ERROR_NO_SUCH_LOGON_SESSION)) 610throw ExceptionHelper.GetExceptionFromErrorCode((int)global::Interop.Advapi32.LsaNtStatusToWinError((result != 0) ? result : protocolStatus)); 628throw ExceptionHelper.GetExceptionFromErrorCode((int)global::Interop.Advapi32.LsaNtStatusToWinError(result));
System\DirectoryServices\ActiveDirectory\Domain.cs (5)
531return TrustHelper.GetTrustedDomainInfoStatus(context, Name, targetDomainName, Interop.Advapi32.TRUST_ATTRIBUTE.TRUST_ATTRIBUTE_CROSS_ORGANIZATION, false); 544TrustHelper.SetTrustedDomainInfoStatus(context, Name, targetDomainName, Interop.Advapi32.TRUST_ATTRIBUTE.TRUST_ATTRIBUTE_CROSS_ORGANIZATION, enable, false); 557return TrustHelper.GetTrustedDomainInfoStatus(context, Name, targetDomainName, Interop.Advapi32.TRUST_ATTRIBUTE.TRUST_ATTRIBUTE_QUARANTINED_DOMAIN, false); 570TrustHelper.SetTrustedDomainInfoStatus(context, Name, targetDomainName, Interop.Advapi32.TRUST_ATTRIBUTE.TRUST_ATTRIBUTE_QUARANTINED_DOMAIN, enable, false); 1408if ((tmpObject.TrustAttributes & (int)Interop.Advapi32.TRUST_ATTRIBUTE.TRUST_ATTRIBUTE_FOREST_TRANSITIVE) != 0)
System\DirectoryServices\ActiveDirectory\Forest.cs (5)
343return TrustHelper.GetTrustedDomainInfoStatus(_context, Name, targetForestName, Interop.Advapi32.TRUST_ATTRIBUTE.TRUST_ATTRIBUTE_CROSS_ORGANIZATION, true); 356TrustHelper.SetTrustedDomainInfoStatus(_context, Name, targetForestName, Interop.Advapi32.TRUST_ATTRIBUTE.TRUST_ATTRIBUTE_CROSS_ORGANIZATION, enable, true); 369return TrustHelper.GetTrustedDomainInfoStatus(_context, Name, targetForestName, Interop.Advapi32.TRUST_ATTRIBUTE.TRUST_ATTRIBUTE_TREAT_AS_EXTERNAL, true); 382TrustHelper.SetTrustedDomainInfoStatus(_context, Name, targetForestName, Interop.Advapi32.TRUST_ATTRIBUTE.TRUST_ATTRIBUTE_TREAT_AS_EXTERNAL, enable, true); 1133if (unmanagedTrust.TrustType == TrustHelper.TRUST_TYPE_UPLEVEL && ((unmanagedTrust.TrustAttributes & (int)Interop.Advapi32.TRUST_ATTRIBUTE.TRUST_ATTRIBUTE_FOREST_TRANSITIVE) != 0))
System\DirectoryServices\ActiveDirectory\ForestTrustDomainInformation.cs (1)
30global::Interop.BOOL result = global::Interop.Advapi32.ConvertSidToStringSid(domainInfo.sid, out sidLocal);
System\DirectoryServices\ActiveDirectory\ForestTrustRelationshipInformation.cs (8)
184global::Interop.BOOL result = global::Interop.Advapi32.ConvertStringSidToSid(tmp.DomainSid, out pSid); 256uint error = Interop.Advapi32.LsaSetForestTrustInformation(handle, trustedDomainName, forestInfo, true, out collisionInfo); 259throw ExceptionHelper.GetExceptionFromErrorCode((int)global::Interop.Advapi32.LsaNtStatusToWinError(error), serverName); 269error = Interop.Advapi32.LsaSetForestTrustInformation(handle, trustedDomainName, forestInfo, false, out collisionInfo); 305global::Interop.Advapi32.LsaFreeMemory(collisionInfo); 352uint result = Interop.Advapi32.LsaQueryForestTrustInformation(handle, tmpName, ref forestTrustInfo); 356uint win32Error = global::Interop.Advapi32.LsaNtStatusToWinError(result); 420global::Interop.Advapi32.LsaFreeMemory(forestTrustInfo);
System\DirectoryServices\ActiveDirectory\TrustHelper.cs (83)
29internal static unsafe bool GetTrustedDomainInfoStatus(DirectoryContext context, string? sourceName, string targetName, Interop.Advapi32.TRUST_ATTRIBUTE attribute, bool isForest) 53uint result = Interop.Advapi32.LsaQueryTrustedDomainInfoByName(handle, trustedDomainName, Interop.Advapi32.TRUSTED_INFORMATION_CLASS.TrustedDomainInformationEx, ref buffer); 56uint win32Error = global::Interop.Advapi32.LsaNtStatusToWinError(result); 71Interop.Advapi32.TRUSTED_DOMAIN_INFORMATION_EX domainInfo = *(Interop.Advapi32.TRUSTED_DOMAIN_INFORMATION_EX*)buffer; 79if (attribute == Interop.Advapi32.TRUST_ATTRIBUTE.TRUST_ATTRIBUTE_CROSS_ORGANIZATION) 81if ((domainInfo.TrustAttributes & Interop.Advapi32.TRUST_ATTRIBUTE.TRUST_ATTRIBUTE_CROSS_ORGANIZATION) == 0) 87else if (attribute == Interop.Advapi32.TRUST_ATTRIBUTE.TRUST_ATTRIBUTE_TREAT_AS_EXTERNAL) 89if ((domainInfo.TrustAttributes & Interop.Advapi32.TRUST_ATTRIBUTE.TRUST_ATTRIBUTE_TREAT_AS_EXTERNAL) == 0) 95else if (attribute == Interop.Advapi32.TRUST_ATTRIBUTE.TRUST_ATTRIBUTE_QUARANTINED_DOMAIN) 97if ((domainInfo.TrustAttributes & Interop.Advapi32.TRUST_ATTRIBUTE.TRUST_ATTRIBUTE_QUARANTINED_DOMAIN) == 0) 117global::Interop.Advapi32.LsaFreeMemory(buffer); 123internal static unsafe void SetTrustedDomainInfoStatus(DirectoryContext context, string? sourceName, string targetName, Interop.Advapi32.TRUST_ATTRIBUTE attribute, bool status, bool isForest) 148uint result = Interop.Advapi32.LsaQueryTrustedDomainInfoByName(handle, trustedDomainName, Interop.Advapi32.TRUSTED_INFORMATION_CLASS.TrustedDomainInformationEx, ref buffer); 151uint win32Error = global::Interop.Advapi32.LsaNtStatusToWinError(result); 166Interop.Advapi32.TRUSTED_DOMAIN_INFORMATION_EX domainInfo = *(Interop.Advapi32.TRUSTED_DOMAIN_INFORMATION_EX*)buffer; 174if (attribute == Interop.Advapi32.TRUST_ATTRIBUTE.TRUST_ATTRIBUTE_CROSS_ORGANIZATION) 179domainInfo.TrustAttributes |= Interop.Advapi32.TRUST_ATTRIBUTE.TRUST_ATTRIBUTE_CROSS_ORGANIZATION; 184domainInfo.TrustAttributes &= ~(Interop.Advapi32.TRUST_ATTRIBUTE.TRUST_ATTRIBUTE_CROSS_ORGANIZATION); 188else if (attribute == Interop.Advapi32.TRUST_ATTRIBUTE.TRUST_ATTRIBUTE_TREAT_AS_EXTERNAL) 193domainInfo.TrustAttributes &= ~(Interop.Advapi32.TRUST_ATTRIBUTE.TRUST_ATTRIBUTE_TREAT_AS_EXTERNAL); 198domainInfo.TrustAttributes |= Interop.Advapi32.TRUST_ATTRIBUTE.TRUST_ATTRIBUTE_TREAT_AS_EXTERNAL; 202else if (attribute == Interop.Advapi32.TRUST_ATTRIBUTE.TRUST_ATTRIBUTE_QUARANTINED_DOMAIN) 207domainInfo.TrustAttributes |= Interop.Advapi32.TRUST_ATTRIBUTE.TRUST_ATTRIBUTE_QUARANTINED_DOMAIN; 212domainInfo.TrustAttributes &= ~(Interop.Advapi32.TRUST_ATTRIBUTE.TRUST_ATTRIBUTE_QUARANTINED_DOMAIN); 221newInfo = Marshal.AllocHGlobal(sizeof(Interop.Advapi32.TRUSTED_DOMAIN_INFORMATION_EX)); 224result = Interop.Advapi32.LsaSetTrustedDomainInfoByName(handle, trustedDomainName, Interop.Advapi32.TRUSTED_INFORMATION_CLASS.TrustedDomainInformationEx, newInfo); 227throw ExceptionHelper.GetExceptionFromErrorCode((int)global::Interop.Advapi32.LsaNtStatusToWinError(result), serverName); 241global::Interop.Advapi32.LsaFreeMemory(buffer); 274uint result = Interop.Advapi32.LsaQueryTrustedDomainInfoByName(policyHandle, trustedDomainName, Interop.Advapi32.TRUSTED_INFORMATION_CLASS.TrustedDomainInformationEx, ref buffer); 277uint win32Error = global::Interop.Advapi32.LsaNtStatusToWinError(result); 294Interop.Advapi32.TRUSTED_DOMAIN_INFORMATION_EX domainInfo = *(Interop.Advapi32.TRUSTED_DOMAIN_INFORMATION_EX*)buffer; 300result = Interop.Advapi32.LsaDeleteTrustedDomain(policyHandle, domainInfo.Sid); 303uint win32Error = global::Interop.Advapi32.LsaNtStatusToWinError(result); 310global::Interop.Advapi32.LsaFreeMemory(buffer); 478Interop.Advapi32.TRUSTED_DOMAIN_AUTH_INFORMATION AuthInfoEx = default; 493Interop.Advapi32.TRUSTED_DOMAIN_INFORMATION_EX tdi = new Interop.Advapi32.TRUSTED_DOMAIN_INFORMATION_EX() 503tdi.TrustAttributes = Interop.Advapi32.TRUST_ATTRIBUTE.TRUST_ATTRIBUTE_FOREST_TRANSITIVE; 507tdi.TrustAttributes = Interop.Advapi32.TRUST_ATTRIBUTE.TRUST_ATTRIBUTE_QUARANTINED_DOMAIN; 517uint result = Interop.Advapi32.LsaCreateTrustedDomainEx(policyHandle, tdi, AuthInfoEx, TRUSTED_SET_POSIX | TRUSTED_SET_AUTH, out domainHandle); 520result = global::Interop.Advapi32.LsaNtStatusToWinError(result); 541global::Interop.Advapi32.LsaClose(domainHandle); 544global::Interop.Advapi32.LsaFreeMemory(info); 586uint result = Interop.Advapi32.LsaQueryTrustedDomainInfoByName(handle, trustedDomainName, Interop.Advapi32.TRUSTED_INFORMATION_CLASS.TrustedDomainFullInformation, ref buffer); 589uint win32Error = global::Interop.Advapi32.LsaNtStatusToWinError(result); 603Interop.Advapi32.TRUSTED_DOMAIN_FULL_INFORMATION domainInfo = *(Interop.Advapi32.TRUSTED_DOMAIN_FULL_INFORMATION*)buffer; 631Interop.Advapi32.TRUSTED_DOMAIN_AUTH_INFORMATION AuthInfoEx = default; 648newBuffer = Marshal.AllocHGlobal(sizeof(Interop.Advapi32.TRUSTED_DOMAIN_FULL_INFORMATION)); 651result = Interop.Advapi32.LsaSetTrustedDomainInfoByName(handle, trustedDomainName, Interop.Advapi32.TRUSTED_INFORMATION_CLASS.TrustedDomainFullInformation, newBuffer); 654throw ExceptionHelper.GetExceptionFromErrorCode((int)global::Interop.Advapi32.LsaNtStatusToWinError(result), serverName); 668global::Interop.Advapi32.LsaFreeMemory(buffer); 715uint result = Interop.Advapi32.LsaQueryTrustedDomainInfoByName(handle, trustedDomainName, Interop.Advapi32.TRUSTED_INFORMATION_CLASS.TrustedDomainFullInformation, ref buffer); 718uint win32Error = global::Interop.Advapi32.LsaNtStatusToWinError(result); 732Interop.Advapi32.TRUSTED_DOMAIN_FULL_INFORMATION domainInfo = *(Interop.Advapi32.TRUSTED_DOMAIN_FULL_INFORMATION*)buffer; 757Interop.Advapi32.TRUSTED_DOMAIN_AUTH_INFORMATION AuthInfoEx; 789newBuffer = Marshal.AllocHGlobal(sizeof(Interop.Advapi32.TRUSTED_DOMAIN_FULL_INFORMATION)); 792result = Interop.Advapi32.LsaSetTrustedDomainInfoByName(handle, trustedDomainName, Interop.Advapi32.TRUSTED_INFORMATION_CLASS.TrustedDomainFullInformation, newBuffer); 795throw ExceptionHelper.GetExceptionFromErrorCode((int)global::Interop.Advapi32.LsaNtStatusToWinError(result), serverName); 809global::Interop.Advapi32.LsaFreeMemory(buffer); 832uint result = Interop.Advapi32.LsaQueryTrustedDomainInfoByName(handle, trustedDomainName, Interop.Advapi32.TRUSTED_INFORMATION_CLASS.TrustedDomainInformationEx, ref buffer); 835uint win32Error = global::Interop.Advapi32.LsaNtStatusToWinError(result); 852Interop.Advapi32.TRUSTED_DOMAIN_INFORMATION_EX domainInfo = *(Interop.Advapi32.TRUSTED_DOMAIN_INFORMATION_EX*)buffer; 872global::Interop.Advapi32.LsaFreeMemory(buffer); 876private static void ValidateTrustAttribute(Interop.Advapi32.TRUSTED_DOMAIN_INFORMATION_EX domainInfo, bool isForest, string? sourceName, string? targetName) 881if ((domainInfo.TrustAttributes & Interop.Advapi32.TRUST_ATTRIBUTE.TRUST_ATTRIBUTE_FOREST_TRANSITIVE) == 0) 889if ((domainInfo.TrustAttributes & Interop.Advapi32.TRUST_ATTRIBUTE.TRUST_ATTRIBUTE_FOREST_TRANSITIVE) != 0) 1002uint result = global::Interop.Advapi32.LsaQueryInformationPolicy(policyHandle.DangerousGetHandle(), policyDnsDomainInformation, ref buffer); 1005throw ExceptionHelper.GetExceptionFromErrorCode((int)global::Interop.Advapi32.LsaNtStatusToWinError(result), serverName);
System\DirectoryServices\ActiveDirectory\Utils.cs (36)
963int result = global::Interop.Advapi32.LogonUser(userName!, domainName, context.Password, LOGON32_LOGON_NEW_CREDENTIALS, LOGON32_PROVIDER_WINNT50, ref hToken); 970result = global::Interop.Advapi32.ImpersonateLoggedOnUser(hToken); 994bool success = Interop.Advapi32.ImpersonateAnonymousToken(hThread); 1007if (!global::Interop.Advapi32.RevertToSelf()) 1075uint result = global::Interop.Advapi32.LsaOpenPolicy(serverName, ref objectAttribute, (int)global::Interop.Advapi32.PolicyRights.POLICY_VIEW_LOCAL_INFORMATION, out handle); 1078throw ExceptionHelper.GetExceptionFromErrorCode((int)global::Interop.Advapi32.LsaNtStatusToWinError(result), serverName); 2004bool success = global::Interop.Advapi32.EqualDomainSid(pCopyOfUserSid, pMachineDomainSid, ref sameDomain); 2042if (!global::Interop.Advapi32.OpenThreadToken( 2055if (!global::Interop.Advapi32.OpenProcessToken( 2077bool success = global::Interop.Advapi32.GetTokenInformation( 2079(uint)global::Interop.Advapi32.TOKEN_INFORMATION_CLASS.TokenUser, 2096success = global::Interop.Advapi32.GetTokenInformation( 2098(uint)global::Interop.Advapi32.TOKEN_INFORMATION_CLASS.TokenUser, 2114Debug.Assert(global::Interop.Advapi32.IsValidSid(pUserSid)); 2117int userSidLength = global::Interop.Advapi32.GetLengthSid(pUserSid); 2119success = global::Interop.Advapi32.CopySid(userSidLength, pCopyOfUserSid, pUserSid); 2146uint err = global::Interop.Advapi32.LsaOpenPolicy( 2149(int)global::Interop.Advapi32.PolicyRights.POLICY_VIEW_LOCAL_INFORMATION, 2154throw new InvalidOperationException(SR.Format(SR.UnableToRetrievePolicy, global::Interop.Advapi32.LsaNtStatusToWinError(err))); 2158err = global::Interop.Advapi32.LsaQueryInformationPolicy( 2165throw new InvalidOperationException(SR.Format(SR.UnableToRetrievePolicy, global::Interop.Advapi32.LsaNtStatusToWinError(err))); 2171Debug.Assert(global::Interop.Advapi32.IsValidSid(info.DomainSid)); 2174int sidLength = global::Interop.Advapi32.GetLengthSid(info.DomainSid); 2176bool success = global::Interop.Advapi32.CopySid(sidLength, pCopyOfSid, info.DomainSid); 2191global::Interop.Advapi32.LsaFreeMemory(pBuffer); 2230Debug.Assert(global::Interop.Advapi32.IsValidSid(pSid)); 2233IntPtr pIdentAuth = global::Interop.Advapi32.GetSidIdentifierAuthority(pSid); 2235Interop.Advapi32.SID_IDENTIFIER_AUTHORITY identAuth = *(Interop.Advapi32.SID_IDENTIFIER_AUTHORITY*)pIdentAuth; 2237IntPtr pRid = global::Interop.Advapi32.GetSidSubAuthority(pSid, 0); 2274IntPtr pRidCount = global::Interop.Advapi32.GetSidSubAuthorityCount(pSid); 2276IntPtr pLastRid = global::Interop.Advapi32.GetSidSubAuthority(pSid, ridCount - 1); 2330Debug.Assert(global::Interop.Advapi32.IsValidSid(pSid)); 2332IntPtr psubAuthorityCount = global::Interop.Advapi32.GetSidSubAuthorityCount(pSid); 2357IntPtr pcurrentSubauthority = global::Interop.Advapi32.GetSidSubAuthority(pSid, i);