ADUserServices is a single-class ASMX web service that provisions, unlocks, deletes, and modifies Active Directory user accounts in the external domain (external.saif.com), manages group membership there, and answers read-only queries about user attributes and group/resource membership in both the external domain and the internal domain (corp.saif.com).
Add, modify, unlock, and delete AD user accounts in the external domain, and add/remove those accounts from AD groups*, per the object description embedded in the codebehind's header comment (clsADUserServices.asmx.vb).
Answer directory read queries (email, fax number, printer attribute, last logon, group and resource membership) for callers, spanning both the internal and external domains depending on the operation.
Serve as the IP allow-list gate (CheckAccess) that the eight mutating operations consult before acting.
The header comment in the codebehind states this object "provides maintenance to AD user accounts in the external domain from web calls," while AD maintenance for the internal domain is stated to be handled elsewhere ("managed in batch by clDirectoryEntry in SAIF.Business.Security") — a system outside this repository and not further described here. If this service were unavailable, callers would lose the ability to provision, unlock, or delete external-domain AD accounts, manage their group memberships, and query AD attributes over SOAP.
Attribute
Value
Business domain
Active Directory user and group account maintenance (external domain) and directory attribute lookup (internal and external domains)
Owning team
Not determined from source
Data ownership
Active Directory user and group objects in external.saif.com (writes); read-only attribute and membership queries against external.saif.com and corp.saif.com
The namespace qualifies every request and response element and every SOAP action (e.g. http://tempuri.org/GetUserEmail); changing it breaks every existing caller
This is a flagged, non-negotiable finding. The service ships with the bare template default namespace rather than an organization- or service-specific value. Because the namespace still matches the unmodified default*, this deployed service shares it with every other unmodified-default ASMX service, creating collision risk if two such services are ever proxied into the same consumer project. See Tech debt (TD-01, HIGH).
Protocol/binding availability is unknown — no <protocols> element is declared in Web.config and no WSDL is checked into the repository, so which SOAP binding is actually published is not evidenced and the ASMX/SoapExtensionReflector framework default applies**
Serializer
XmlSerializer (ASMX default)
Binding style
Document/Literal (ASMX default; no explicit SoapDocumentMethod overrides found)
Visual Studio web-project template scaffolding — My Project\Application.myapp, Application.Designer.vb, Resources.resx/Resources.Designer.vb, Settings.settings/Settings.Designer.vb, AssemblyInfo.vb, and My Project\MyExtensions\MyWebExtension.vb (the generated, empty MyWebServices group) are generated designer files with no authored content and are excluded from this document set.
Note: Statements marked with * were inferred from code structure, naming conventions, or
contextual evidence where direct confirmation was not available in source artifacts. Statements
marked with ** could not be confirmed; treat as unknown until verified.