dotnet-core/release-notes/1.0/1.0.0-api/1.0.0-api_System.ServiceModel.Security.Tokens.md

178 lines
11 KiB
Markdown
Raw Normal View History

2017-07-05 23:24:38 +02:00
# System.ServiceModel.Security.Tokens
``` diff
+namespace System.ServiceModel.Security.Tokens {
+ public class ClaimTypeRequirement {
+ public ClaimTypeRequirement(string claimType);
+ public ClaimTypeRequirement(string claimType, bool isOptional);
+ public string ClaimType { get; }
+ public bool IsOptional { get; }
+ }
+ public sealed class InitiatorServiceModelSecurityTokenRequirement : ServiceModelSecurityTokenRequirement {
+ public InitiatorServiceModelSecurityTokenRequirement();
+ public EndpointAddress TargetAddress { get; set; }
+ public Uri Via { get; set; }
+ public override string ToString();
+ }
+ public interface ISecurityContextSecurityTokenCache {
+ void AddContext(SecurityContextSecurityToken token);
+ void ClearContexts();
+ Collection<SecurityContextSecurityToken> GetAllContexts(UniqueId contextId);
+ SecurityContextSecurityToken GetContext(UniqueId contextId, UniqueId generation);
+ void RemoveAllContexts(UniqueId contextId);
+ void RemoveContext(UniqueId contextId, UniqueId generation);
+ bool TryAddContext(SecurityContextSecurityToken token);
+ void UpdateContextCachingTime(SecurityContextSecurityToken context, DateTime expirationTime);
+ }
+ public sealed class RecipientServiceModelSecurityTokenRequirement : ServiceModelSecurityTokenRequirement {
+ public RecipientServiceModelSecurityTokenRequirement();
+ public Uri ListenUri { get; set; }
+ public override string ToString();
+ }
+ public class SecureConversationSecurityTokenParameters : SecurityTokenParameters {
+ public SecureConversationSecurityTokenParameters();
+ public SecureConversationSecurityTokenParameters(SecurityBindingElement bootstrapSecurityBindingElement);
+ protected SecureConversationSecurityTokenParameters(SecureConversationSecurityTokenParameters other);
+ public SecurityBindingElement BootstrapSecurityBindingElement { get; set; }
+ protected internal override bool HasAsymmetricKey { get; }
+ protected internal override bool SupportsClientAuthentication { get; }
+ protected internal override bool SupportsClientWindowsIdentity { get; }
+ protected internal override bool SupportsServerAuthentication { get; }
+ protected override SecurityTokenParameters CloneCore();
+ public override string ToString();
+ }
+ public class SecurityContextSecurityToken : SecurityToken, IDisposable, TimeBoundedCache.IExpirableItem {
+ public SecurityContextSecurityToken(UniqueId contextId, byte[] key, DateTime validFrom, DateTime validTo);
+ public SecurityContextSecurityToken(UniqueId contextId, string id, byte[] key, DateTime validFrom, DateTime validTo);
+ public SecurityContextSecurityToken(UniqueId contextId, string id, byte[] key, DateTime validFrom, DateTime validTo, ReadOnlyCollection<IAuthorizationPolicy> authorizationPolicies);
+ public SecurityContextSecurityToken(UniqueId contextId, string id, byte[] key, DateTime validFrom, DateTime validTo, UniqueId keyGeneration, DateTime keyEffectiveTime, DateTime keyExpirationTime, ReadOnlyCollection<IAuthorizationPolicy> authorizationPolicies);
+ public ReadOnlyCollection<IAuthorizationPolicy> AuthorizationPolicies { get; internal set; }
+ public SecurityMessageProperty BootstrapMessageProperty { get; set; }
+ public UniqueId ContextId { get; }
+ public override string Id { get; }
+ public bool IsCookieMode { get; }
+ public DateTime KeyEffectiveTime { get; }
+ public DateTime KeyExpirationTime { get; }
+ public UniqueId KeyGeneration { get; }
+ public override ReadOnlyCollection<SecurityKey> SecurityKeys { get; }
+ public override DateTime ValidFrom { get; }
+ public override DateTime ValidTo { get; }
+ public static SecurityContextSecurityToken CreateCookieSecurityContextToken(UniqueId contextId, string id, byte[] key, DateTime validFrom, DateTime validTo, ReadOnlyCollection<IAuthorizationPolicy> authorizationPolicies, SecurityStateEncoder securityStateEncoder);
+ public static SecurityContextSecurityToken CreateCookieSecurityContextToken(UniqueId contextId, string id, byte[] key, DateTime validFrom, DateTime validTo, UniqueId keyGeneration, DateTime keyEffectiveTime, DateTime keyExpirationTime, ReadOnlyCollection<IAuthorizationPolicy> authorizationPolicies, SecurityStateEncoder securityStateEncoder);
+ public void Dispose();
+ public override string ToString();
+ }
+ public enum SecurityTokenInclusionMode {
+ AlwaysToInitiator = 3,
+ AlwaysToRecipient = 0,
+ Never = 1,
+ Once = 2,
+ }
+ public abstract class SecurityTokenParameters {
+ protected SecurityTokenParameters();
+ protected SecurityTokenParameters(SecurityTokenParameters other);
+ protected internal abstract bool HasAsymmetricKey { get; }
+ public bool RequireDerivedKeys { get; set; }
+ protected internal abstract bool SupportsClientAuthentication { get; }
+ protected internal abstract bool SupportsClientWindowsIdentity { get; }
+ protected internal abstract bool SupportsServerAuthentication { get; }
+ public SecurityTokenParameters Clone();
+ protected abstract SecurityTokenParameters CloneCore();
+ public override string ToString();
+ }
+ public enum SecurityTokenReferenceStyle {
+ External = 1,
+ Internal = 0,
+ }
+ public abstract class ServiceModelSecurityTokenRequirement : SecurityTokenRequirement {
+ protected const string Namespace = "http://schemas.microsoft.com/ws/2006/05/servicemodel/securitytokenrequirement";
+ protected ServiceModelSecurityTokenRequirement();
+ public static string AuditLogLocationProperty { get; }
+ public static string ChannelParametersCollectionProperty { get; }
+ public static string DuplexClientLocalAddressProperty { get; }
+ public static string EndpointFilterTableProperty { get; }
+ public static string ExtendedProtectionPolicy { get; }
+ public static string HttpAuthenticationSchemeProperty { get; }
+ public bool IsInitiator { get; }
+ public static string IsInitiatorProperty { get; }
+ public static string IsOutOfBandTokenProperty { get; }
+ public static string IssuedSecurityTokenParametersProperty { get; }
+ public EndpointAddress IssuerAddress { get; set; }
+ public static string IssuerAddressProperty { get; }
+ public Binding IssuerBinding { get; set; }
+ public static string IssuerBindingContextProperty { get; }
+ public static string IssuerBindingProperty { get; }
+ public static string ListenUriProperty { get; }
+ public static string MessageAuthenticationAuditLevelProperty { get; }
+ public static string MessageDirectionProperty { get; }
+ public SecurityTokenVersion MessageSecurityVersion { get; set; }
+ public static string MessageSecurityVersionProperty { get; }
+ public static string PreferSslCertificateAuthenticatorProperty { get; }
+ public static string PrivacyNoticeUriProperty { get; }
+ public static string PrivacyNoticeVersionProperty { get; }
+ public SecurityBindingElement SecureConversationSecurityBindingElement { get; set; }
+ public static string SecureConversationSecurityBindingElementProperty { get; }
+ public SecurityAlgorithmSuite SecurityAlgorithmSuite { get; set; }
+ public static string SecurityAlgorithmSuiteProperty { get; }
+ public SecurityBindingElement SecurityBindingElement { get; set; }
+ public static string SecurityBindingElementProperty { get; }
+ public static string SupportingTokenAttachmentModeProperty { get; }
+ public static string SupportSecurityContextCancellationProperty { get; }
+ public static string SuppressAuditFailureProperty { get; }
+ public static string TargetAddressProperty { get; }
+ public string TransportScheme { get; set; }
+ public static string TransportSchemeProperty { get; }
+ public static string ViaProperty { get; }
+ }
+ public static class ServiceModelSecurityTokenTypes {
+ public static string AnonymousSslnego { get; }
+ public static string MutualSslnego { get; }
+ public static string SecureConversation { get; }
+ public static string SecurityContext { get; }
+ public static string Spnego { get; }
+ public static string SspiCredential { get; }
+ }
+ public class SspiSecurityToken : SecurityToken {
+ public SspiSecurityToken(NetworkCredential networkCredential, bool extractGroupsForWindowsAccounts, bool allowUnauthenticatedCallers);
+ public SspiSecurityToken(TokenImpersonationLevel impersonationLevel, bool allowNtlm, NetworkCredential networkCredential);
+ public bool AllowNtlm { get; }
+ public bool AllowUnauthenticatedCallers { get; }
+ public bool ExtractGroupsForWindowsAccounts { get; }
+ public override string Id { get; }
+ public TokenImpersonationLevel ImpersonationLevel { get; }
+ public NetworkCredential NetworkCredential { get; }
+ public override ReadOnlyCollection<SecurityKey> SecurityKeys { get; }
+ public override DateTime ValidFrom { get; }
+ public override DateTime ValidTo { get; }
+ }
+ public class SupportingTokenParameters {
+ public SupportingTokenParameters();
+ public Collection<SecurityTokenParameters> Endorsing { get; }
+ public Collection<SecurityTokenParameters> Signed { get; }
+ public Collection<SecurityTokenParameters> SignedEncrypted { get; }
+ public Collection<SecurityTokenParameters> SignedEndorsing { get; }
+ public SupportingTokenParameters Clone();
+ protected virtual SupportingTokenParameters CloneCore();
+ public void SetKeyDerivation(bool requireDerivedKeys);
+ public override string ToString();
+ }
+ public class UserNameSecurityTokenParameters : SecurityTokenParameters {
+ public UserNameSecurityTokenParameters();
+ protected UserNameSecurityTokenParameters(UserNameSecurityTokenParameters other);
+ protected internal override bool HasAsymmetricKey { get; }
+ protected internal override bool SupportsClientAuthentication { get; }
+ protected internal override bool SupportsClientWindowsIdentity { get; }
+ protected internal override bool SupportsServerAuthentication { get; }
+ protected override SecurityTokenParameters CloneCore();
+ }
+ public enum X509KeyIdentifierClauseType {
+ Any = 0,
+ IssuerSerial = 2,
+ RawDataKeyIdentifier = 4,
+ SubjectKeyIdentifier = 3,
+ Thumbprint = 1,
+ }
+}
```