This documentation is archived and is not being maintained.

ProxyAccount Class

The ProxyAccount class represents a SQL Server Agent proxy account.

Namespace: Microsoft.SqlServer.Management.Smo.Agent
Assembly: Microsoft.SqlServer.Smo (in microsoft.sqlserver.smo.dll)

public sealed class ProxyAccount : AgentObjectBase, IAlterable, ICreatable, IDroppable, 
	IRenamable, IScriptable
public final class ProxyAccount extends AgentObjectBase implements IAlterable, ICreatable, 
	IDroppable, IRenamable, IScriptable
public final class ProxyAccount extends AgentObjectBase implements IAlterable, ICreatable, 
	IDroppable, IRenamable, IScriptable

Proxy accounts allow for the impersonation of logins, server roles, and database roles when executing a job step in any subsystem other than Transact-SQL. In SQL Server Management Objects (SMO), the ProxyAccount object allows programmatic control over proxy accounts. The ProxyAccount object describes the relationship between an alternative (proxy) login account, a subsystem that is used for job step execution, and a list of Microsoft SQL Server logins, server roles, and database roles.

This namespace, class, or member is supported only in version 2.0 of the Microsoft .NET Framework.

To get ProxyAccount object properties, users must be a member of the SQLAgentOperatorRole on the MSDB database, or be a member of the sysadmin fixed server role.

To set ProxyAccount object properties, users must be a member of the sysadmin fixed server role.

To create or drop a proxy account, users must be a member of the sysadmin fixed server role.

To add or remove subsystems from the proxy account, users must be a member of the sysadmin fixed server role.


Any public static (Shared in Microsoft Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Development Platforms

For a list of the supported platforms, see Hardware and Software Requirements for Installing SQL Server 2005.

Target Platforms

Show: