Assembly: Microsoft.EnterpriseManagement.OperationsManager (in microsoft.enterprisemanagement.operationsmanager.dll)
Usage
| Visual Basic |
|---|
Dim instance As MonitoringSecureData |
Syntax
| Visual Basic |
|---|
<SerializableAttribute> _ Public MustInherit Class MonitoringSecureData Inherits CreatableMonitoringBaseWithId |
| C# |
|---|
[SerializableAttribute] public abstract class MonitoringSecureData : CreatableMonitoringBaseWithId |
| C++ |
|---|
[SerializableAttribute] public ref class MonitoringSecureData abstract : public CreatableMonitoringBaseWithId |
| J# |
|---|
/** @attribute SerializableAttribute() */ public abstract class MonitoringSecureData extends CreatableMonitoringBaseWithId |
| JScript |
|---|
SerializableAttribute public abstract class MonitoringSecureData extends CreatableMonitoringBaseWithId |
Example
The following example shows how to update an existing RunAs action account using the MonitoringSecureData class.
| C# | Copy Code |
|---|---|
using System;
using System.Collections.Generic;
using System.Text;
using Microsoft.EnterpriseManagement;
using Microsoft.EnterpriseManagement.Configuration;
using Microsoft.EnterpriseManagement.Monitoring;
using System.Collections.ObjectModel;
using System.Diagnostics;
using System.Xml;
using Microsoft.EnterpriseManagement.Monitoring.Security;
using System.Security;
namespace SDKSamples
{
class Program
{
static void Main(string[] args)
{
MonitoringSecureDataCriteria runAsAccountCriteria;
ManagementGroup managementGroup;
ReadOnlyCollection<MonitoringSecureData> runAsAccounts;
SecureString password;
managementGroup = new ManagementGroup("localhost");
runAsAccountCriteria = new MonitoringSecureDataCriteria("UserName LIKE 'MonitoringAccount'");
password = new SecureString();
runAsAccounts = managementGroup.GetMonitoringSecureData(runAsAccountCriteria);
if (runAsAccounts.Count == 0)
{
Console.WriteLine("RunAs account not found");
}
Console.WriteLine("Please enter the password");
while (true)
{
ConsoleKeyInfo cki = Console.ReadKey(true);
if (cki.Key == ConsoleKey.Enter)
{
break;
}
else if (cki.Key == ConsoleKey.Backspace)
{
if (password.Length > 0)
{
Console.SetCursorPosition(Console.CursorLeft - 1, Console.CursorTop);
Console.Write(" ");
Console.SetCursorPosition(Console.CursorLeft - 1, Console.CursorTop);
password.RemoveAt(password.Length - 1);
}
}
else if (cki.Key == ConsoleKey.Escape)
{
Console.WriteLine("Password not entered");
return;
}
else if (Char.IsLetterOrDigit(cki.KeyChar) || Char.IsSymbol(cki.KeyChar))
{
password.AppendChar(cki.KeyChar);
Console.Write("*");
}
else
{
Console.Beep();
}
}
runAsAccounts[0].SecureData = password;
runAsAccounts[0].Update();
Console.WriteLine("RunAs account successfully updated");
}
}
}
|
|
Remarks
A RunAs account is a named set of credentials that are represented by RunAs Profiles for authentication when executing monitors, rules, or tasks. The types of RunAs accounts are as follows:
-
Windows
-
Community String
-
Basic Authentication
-
Simple Authentication
-
Digest Authentication
-
Binary Authentication
-
Action Account
Inheritance
Hierarchy
System.Object
Microsoft.EnterpriseManagement.Common.MonitoringBase
Microsoft.EnterpriseManagement.Common.CreatableMonitoringBaseWithId
Microsoft.EnterpriseManagement.Monitoring.Security.MonitoringSecureData
Microsoft.EnterpriseManagement.Monitoring.Security.MonitoringCommunityStringSecureData
Microsoft.EnterpriseManagement.Monitoring.Security.MonitoringGenericSecureData
Microsoft.EnterpriseManagement.Monitoring.Security.MonitoringUserNameSecureData
Microsoft.EnterpriseManagement.Common.MonitoringBase
Microsoft.EnterpriseManagement.Common.CreatableMonitoringBaseWithId
Microsoft.EnterpriseManagement.Monitoring.Security.MonitoringSecureData
Microsoft.EnterpriseManagement.Monitoring.Security.MonitoringCommunityStringSecureData
Microsoft.EnterpriseManagement.Monitoring.Security.MonitoringGenericSecureData
Microsoft.EnterpriseManagement.Monitoring.Security.MonitoringUserNameSecureData
Thread Safety
Any public static (Shared in Visual
Basic) members of this type are thread safe. Any instance members
are not guaranteed to be thread safe.


