---
title: IMachineSecurityService
summary: API reference for IMachineSecurityService.
status: draft
owner: <owner>
last_reviewed: 2026-07-23
library: SAIF.Framework.Security
reference_type: package
---

# IMachineSecurityService

`IMachineSecurityService` is the contract for machine/service-account AD group authorization, implemented by `MachineSecurityService`.

## Purpose
- Define the single-method contract for authorizing a machine/service account against an AD security group.

## Context
- Namespace: `SAIF.Framework.Security.Utilities`
- Assembly/package: `SAIF.BOF.Framework.Security` (bundled into the repository-wide `SAIF.BOF.Framework` NuGet package)

## Public members
| Member | Signature | Purpose |
| --- | --- | --- |
| `IsAuthorized` | `Function IsAuthorized(machine As String, ByRef groupName As String, Optional isResource As Boolean = True, Optional useProductionSecurityResource As Boolean = True) As Boolean` | Sole contract member; determines whether `machine` is a member of the (optionally suffixed) `groupName` AD security group. |

## Behavioral notes
- This is the only member declared on the interface; all behavior (suffixing, WCF call, matching, fail-closed error handling) is defined by the implementing class, `MachineSecurityService`.*

## Constraints and usage notes
- Consumers should code against this interface rather than the concrete `MachineSecurityService` class where dependency substitution or testing is required.

> **Note:** Statements marked with * were inferred from code structure, naming conventions, or
> contextual evidence where direct confirmation was not available in source artifacts.

## Sources
- `SAIF.Framework.Security\Utilities\IMachineSecurityService.vb`
