DataProtector.GetHashedPurpose Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Erstellt einen Hash der Eigenschaftswerte, die vom Konstruktor angegeben sind.
protected:
virtual cli::array <System::Byte> ^ GetHashedPurpose();
protected virtual byte[] GetHashedPurpose ();
abstract member GetHashedPurpose : unit -> byte[]
override this.GetHashedPurpose : unit -> byte[]
Protected Overridable Function GetHashedPurpose () As Byte()
Gibt zurück
Ein Bytearray, das den Hash des ApplicationName, PrimaryPurpose und der SpecificPurposes-Eigenschaften enthalten.
Beispiele
Im folgenden Beispiel wird gezeigt, wie die GetHashedPurpose -Methode verwendet wird, um die Zweckeigenschaften für die Verwendung als zusätzliche Entropie zu hashen. Sie ist Teil eines größeren Codebeispiels für die DataProtector -Klasse.
// To allow a service to hand out instances of a DataProtector we demand unrestricted DataProtectionPermission
// in the constructor, but Assert the permission when ProviderProtect is called. This is similar to FileStream
// where access is checked at time of creation, not time of use.
[SecuritySafeCritical]
[DataProtectionPermission(SecurityAction.Assert, ProtectData = true)]
protected override byte[] ProviderProtect(byte[] userData)
{
// Delegate to ProtectedData
return ProtectedData.Protect(userData, GetHashedPurpose(), Scope);
}
' To allow a service to hand out instances of a DataProtector we demand unrestricted DataProtectionPermission
' in the constructor, but Assert the permission when ProviderProtect is called. This is similar to FileStream
' where access is checked at time of creation, not time of use.
<SecuritySafeCritical(), DataProtectionPermission(SecurityAction.Assert, ProtectData:=True)> _
Protected Overrides Function ProviderProtect(ByVal userData() As Byte) As Byte()
' Delegate to ProtectedData
Return ProtectedData.Protect(userData, GetHashedPurpose(), Scope)
End Function 'ProviderProtect
Hinweise
GetHashedPurpose berechnet den Hash des Anwendungsnamens und den vollständigen Zweck. Der vollständige Zweck ist eine Verkettung aller PrimaryPurpose Eigenschaften und SpecificPurposes . Jedem der drei Teile wird seine Länge vorangestellt, sodass der Hash umgekehrt werden kann.