HostedEmailProtectedDataStore Class
Protects and stores data using an encryption scheme.
Namespace: Microsoft.WindowsServerSolutions.HostedEmail
Assembly: Wssg.HostedEmailBase (in Wssg.HostedEmailBase.dll)
Inheritance Hierarchy
System.Object
Microsoft.WindowsServerSolutions.HostedEmail.HostedEmailProtectedDataStore
Syntax
public class HostedEmailProtectedDataStore
public ref class HostedEmailProtectedDataStore
Public Class HostedEmailProtectedDataStore
Constructors
Name | Description | |
---|---|---|
HostedEmailProtectedDataStore(Guid, Byte[]) | Creates a new instance of the HostedEmailProtectedDataStore object, using the specified data store properties. |
Properties
Name | Description | |
---|---|---|
Item[String] | Retrieves or sets the data. |
Methods
Name | Description | |
---|---|---|
Destroy() | Destroys the protected data store. |
|
Equals(Object) | (Inherited from Object.) |
|
Finalize() | (Inherited from Object.) |
|
GetHashCode() | (Inherited from Object.) |
|
GetType() | (Inherited from Object.) |
|
MemberwiseClone() | (Inherited from Object.) |
|
ToString() | (Inherited from Object.) |
Remarks
All data stored in the class is encrypted using a password defined in the constructor, as well as the machine key of the system.
For more information about using the protected data store, see How to: Store Passwords and Other Sensitive Data.
Examples
The following code describes how to use the protected data store. For the complete code sample, see Quickstart: Creating a Hosted Email Adapter
internal static class CredentialManager
{
private const string adminUserNameKey = "adminUserName";
private const string adminPasswordKey = "adminPassword";
// This is copied from ContosoHostedEmail.addin
private const string addinId = "3983E9AC-B6D1-4A2A-881C-4B1CEFCA5266";
// The following line is the result of executing the code 'Encoding.Unicode.GetBytes("P@ssw0rd");'
static byte[] optionalEntropy = new byte[] { 80, 0, 64, 0, 115, 0, 115, 0, 119, 0, 48, 0, 114, 0, 100, 0 };
static HostedEmailProtectedDataStore store = new HostedEmailProtectedDataStore(Guid.Parse(addinId), optionalEntropy);
public static string AdminUserName
{
get
{
return store[adminUserNameKey];
}
set
{
store[adminUserNameKey] = value;
}
}
public static string AdminPassword
{
get
{
return store[adminPasswordKey];
}
set
{
store[adminPasswordKey] = value;
}
}
public static void ClearAll()
{
if (store != null) store.Destroy();
}
}
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.
See Also
Microsoft.WindowsServerSolutions.HostedEmail Namespace
Return to top