ClaimsIdentity 建構函式
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
初始化 ClaimsIdentity 類別的新實例。
多載
ClaimsIdentity()
使用空的宣告集合,初始化 ClaimsIdentity 類別的新實例。
public:
ClaimsIdentity();
public ClaimsIdentity ();
Public Sub New ()
備註
下表顯示 ClaimsIdentity 類別實例的初始屬性值。
財產 | 價值 |
---|---|
Actor |
null 。 |
AuthenticationType |
null 。 |
BootstrapContext |
null 。 |
Claims | 空集合。 |
IsAuthenticated | 注意: 存取時,會根據 AuthenticationType 屬性的值傳回 IsAuthenticated 屬性值。 |
Label |
null 。 |
Name | 注意: 存取時,會根據 NameClaimType 和 Claims 集合傳回 Name 屬性值。 |
NameClaimType | DefaultNameClaimType。 |
RoleClaimType | DefaultRoleClaimType。 |
適用於
ClaimsIdentity(IIdentity, IEnumerable<Claim>, String, String, String)
使用指定的宣告、驗證類型、名稱宣告類型和角色宣告類型,從指定的 IIdentity 初始化 ClaimsIdentity 類別的新實例。
public:
ClaimsIdentity(System::Security::Principal::IIdentity ^ identity, System::Collections::Generic::IEnumerable<System::Security::Claims::Claim ^> ^ claims, System::String ^ authenticationType, System::String ^ nameType, System::String ^ roleType);
public ClaimsIdentity (System.Security.Principal.IIdentity identity, System.Collections.Generic.IEnumerable<System.Security.Claims.Claim> claims, string authenticationType, string nameType, string roleType);
public ClaimsIdentity (System.Security.Principal.IIdentity? identity, System.Collections.Generic.IEnumerable<System.Security.Claims.Claim>? claims, string? authenticationType, string? nameType, string? roleType);
new System.Security.Claims.ClaimsIdentity : System.Security.Principal.IIdentity * seq<System.Security.Claims.Claim> * string * string * string -> System.Security.Claims.ClaimsIdentity
Public Sub New (identity As IIdentity, claims As IEnumerable(Of Claim), authenticationType As String, nameType As String, roleType As String)
參數
- identity
- IIdentity
要從中建立新宣告身分識別的身分識別。
- claims
- IEnumerable<Claim>
要填入新宣告身分識別的宣告。
- authenticationType
- String
所使用的驗證類型。
- nameType
- String
要用於名稱宣告的宣告類型。
- roleType
- String
要用於角色宣告的宣告類型。
例外狀況
identity
是一個 ClaimsIdentity,Actor 會導致循環參考回到 this
。
備註
下表顯示 ClaimsIdentity 類別實例的初始屬性值。
財產 | 價值 |
---|---|
Actor | 如果 identity 可從 ClaimsIdentity指派,則為 identity.Actor 屬性的值;否則,null 。 |
AuthenticationType |
authenticationType 參數。 如果 authenticationType 參數是 null 或空字串,則會使用 identity.AuthenticationType (IIdentity.AuthenticationType) 屬性的值。 |
BootstrapContext | 如果 identity 可從 ClaimsIdentity指派,則為 identity.BootStrapContext 屬性的值;否則,null 。 |
Claims | 從 claims 參數初始化。 如果 identity 可從 ClaimsIdentity指派,則來自 identity 的宣告會在 claims 參數指定的宣告之前新增至新的實例。 |
IsAuthenticated | 注意: 存取時,會根據 AuthenticationType 屬性的值傳回 IsAuthenticated 屬性值。 |
Label | 如果 identity 可從 ClaimsIdentity指派,則為 identity.Label 屬性的值;否則,null 。 |
Name | 如果無法從 ClaimsIdentity指派 identity ,則不是 null ,而且具有非 null 的 IIdentity.Name 屬性;名稱宣告會使用 IIdentity.Name 屬性的值,新增至新的實例。
注意: 存取時,會根據 NameClaimType 和 Claims 集合傳回 Name 屬性值。 |
NameClaimType |
nameType 參數的值。 不過,如果 nameType 參數的值是 null 或空字串,且 identity 可從 ClaimsIdentity指派,則會使用 identity.NameClaimType 屬性值;否則會使用 DefaultNameClaimType。 |
RoleClaimType |
roleClaimType 參數的值。 不過,如果 roleClaimType 參數的值是 null ,或是可以從 ClaimsIdentity指派空字串和識別,則會使用 identity.RoleClaimType 屬性的值;否則會使用 DefaultRoleClaimType。 |
適用於
ClaimsIdentity(IEnumerable<Claim>, String, String, String)
使用指定的宣告、驗證類型、名稱宣告類型和角色宣告類型,初始化 ClaimsIdentity 類別的新實例。
public:
ClaimsIdentity(System::Collections::Generic::IEnumerable<System::Security::Claims::Claim ^> ^ claims, System::String ^ authenticationType, System::String ^ nameType, System::String ^ roleType);
public ClaimsIdentity (System.Collections.Generic.IEnumerable<System.Security.Claims.Claim> claims, string authenticationType, string nameType, string roleType);
public ClaimsIdentity (System.Collections.Generic.IEnumerable<System.Security.Claims.Claim>? claims, string? authenticationType, string? nameType, string? roleType);
new System.Security.Claims.ClaimsIdentity : seq<System.Security.Claims.Claim> * string * string * string -> System.Security.Claims.ClaimsIdentity
Public Sub New (claims As IEnumerable(Of Claim), authenticationType As String, nameType As String, roleType As String)
參數
- claims
- IEnumerable<Claim>
要填入宣告身分識別的宣告。
- authenticationType
- String
所使用的驗證類型。
- nameType
- String
要用於名稱宣告的宣告類型。
- roleType
- String
要用於角色宣告的宣告類型。
備註
下表顯示 ClaimsIdentity 類別實例的初始屬性值。
財產 | 價值 |
---|---|
Actor |
null 。 |
AuthenticationType |
authenticationType 參數的值。 如果 authenticationType 參數是 null 或空字串,則 屬性會設定為 null 。 |
BootstrapContext |
null 。 |
Claims | 從 claims 參數初始化。 |
IsAuthenticated | 注意: 存取時,會根據 AuthenticationType 屬性的值傳回 IsAuthenticated 屬性值。 |
Label |
null 。 |
Name | 注意: 存取時,會根據 NameClaimType 和 Claims 集合傳回 Name 屬性值。 |
NameClaimType |
nameType 參數的值。 不過,如果 nameType 參數是 null 或空字串,則 屬性會設定為 DefaultNameClaimType。 |
RoleClaimType |
roleClaimType 參數的值。 不過,如果 roleClaimType 參數是 null 或空字串,則 屬性會設定為 DefaultRoleClaimType。 |
適用於
ClaimsIdentity(String, String, String)
使用指定的驗證類型、名稱宣告類型和角色宣告類型,初始化 ClaimsIdentity 類別的新實例。
public:
ClaimsIdentity(System::String ^ authenticationType, System::String ^ nameType, System::String ^ roleType);
public ClaimsIdentity (string authenticationType, string nameType, string roleType);
public ClaimsIdentity (string? authenticationType, string? nameType, string? roleType);
new System.Security.Claims.ClaimsIdentity : string * string * string -> System.Security.Claims.ClaimsIdentity
Public Sub New (authenticationType As String, nameType As String, roleType As String)
參數
- authenticationType
- String
所使用的驗證類型。
- nameType
- String
要用於名稱宣告的宣告類型。
- roleType
- String
要用於角色宣告的宣告類型。
備註
下表顯示 ClaimsIdentity 類別實例的初始屬性值。
財產 | 價值 |
---|---|
Actor |
null 。 |
AuthenticationType |
authenticationType 參數的值。 如果 authenticationType 參數是 null 或空字串,則 屬性會設定為 null 。 |
BootstrapContext |
null 。 |
Claims | 空集合。 |
IsAuthenticated | 注意: 存取時,會根據 AuthenticationType 屬性的值傳回 IsAuthenticated 屬性值。 |
Label |
null 。 |
Name | 注意: 存取時,會根據 NameClaimType 和 Claims 集合傳回 Name 屬性值。 |
NameClaimType |
nameType 參數的值。 如果 nameType 參數為 null 或空字串,則 屬性會設定為 DefaultNameClaimType。 |
RoleClaimType |
roleType 參數的值。 如果 roleType 參數為 null 或空字串,則 屬性會設定為 DefaultRoleClaimType。 |
適用於
ClaimsIdentity(SerializationInfo, StreamingContext)
警告
This API supports obsolete formatter-based serialization. It should not be called or extended by application code.
從使用 ISerializable所建立的串行化數據流,初始化 ClaimsIdentity 類別的新實例。
protected:
ClaimsIdentity(System::Runtime::Serialization::SerializationInfo ^ info, System::Runtime::Serialization::StreamingContext context);
protected ClaimsIdentity (System.Runtime.Serialization.SerializationInfo info, System.Runtime.Serialization.StreamingContext context);
[System.Obsolete("This API supports obsolete formatter-based serialization. It should not be called or extended by application code.", DiagnosticId="SYSLIB0051", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
protected ClaimsIdentity (System.Runtime.Serialization.SerializationInfo info, System.Runtime.Serialization.StreamingContext context);
[System.Security.SecurityCritical]
protected ClaimsIdentity (System.Runtime.Serialization.SerializationInfo info, System.Runtime.Serialization.StreamingContext context);
new System.Security.Claims.ClaimsIdentity : System.Runtime.Serialization.SerializationInfo * System.Runtime.Serialization.StreamingContext -> System.Security.Claims.ClaimsIdentity
[<System.Obsolete("This API supports obsolete formatter-based serialization. It should not be called or extended by application code.", DiagnosticId="SYSLIB0051", UrlFormat="https://aka.ms/dotnet-warnings/{0}")>]
new System.Security.Claims.ClaimsIdentity : System.Runtime.Serialization.SerializationInfo * System.Runtime.Serialization.StreamingContext -> System.Security.Claims.ClaimsIdentity
[<System.Security.SecurityCritical>]
new System.Security.Claims.ClaimsIdentity : System.Runtime.Serialization.SerializationInfo * System.Runtime.Serialization.StreamingContext -> System.Security.Claims.ClaimsIdentity
Protected Sub New (info As SerializationInfo, context As StreamingContext)
參數
- info
- SerializationInfo
串行化的數據。
- context
- StreamingContext
串行化的內容。
- 屬性
例外狀況
info
null
。
適用於
ClaimsIdentity(IEnumerable<Claim>, String)
使用指定的宣告和驗證類型,初始化 ClaimsIdentity 類別的新實例。
public:
ClaimsIdentity(System::Collections::Generic::IEnumerable<System::Security::Claims::Claim ^> ^ claims, System::String ^ authenticationType);
public ClaimsIdentity (System.Collections.Generic.IEnumerable<System.Security.Claims.Claim> claims, string authenticationType);
public ClaimsIdentity (System.Collections.Generic.IEnumerable<System.Security.Claims.Claim>? claims, string? authenticationType);
new System.Security.Claims.ClaimsIdentity : seq<System.Security.Claims.Claim> * string -> System.Security.Claims.ClaimsIdentity
Public Sub New (claims As IEnumerable(Of Claim), authenticationType As String)
參數
- claims
- IEnumerable<Claim>
要填入宣告身分識別的宣告。
- authenticationType
- String
所使用的驗證類型。
備註
下表顯示 ClaimsIdentity 類別實例的初始屬性值。
財產 | 價值 |
---|---|
Actor |
null 。 |
AuthenticationType |
authenticationType 參數的值。 如果 authenticationType 參數是 null 或空字串,則 屬性會設定為 null 。 |
BootstrapContext |
null 。 |
Claims | 從 claims 參數初始化。 |
IsAuthenticated | 注意: 存取時,會根據 AuthenticationType 屬性的值傳回 IsAuthenticated 屬性值。 |
Label |
null 。 |
Name | 注意: 存取時,會根據 NameClaimType 和 Claims 集合傳回 Name 屬性值。 |
NameClaimType | DefaultNameClaimType。 |
RoleClaimType | DefaultRoleClaimType。 |
適用於
ClaimsIdentity(IIdentity, IEnumerable<Claim>)
使用指定的宣告和指定的 IIdentity,初始化 ClaimsIdentity 類別的新實例。
public:
ClaimsIdentity(System::Security::Principal::IIdentity ^ identity, System::Collections::Generic::IEnumerable<System::Security::Claims::Claim ^> ^ claims);
public ClaimsIdentity (System.Security.Principal.IIdentity identity, System.Collections.Generic.IEnumerable<System.Security.Claims.Claim> claims);
public ClaimsIdentity (System.Security.Principal.IIdentity? identity, System.Collections.Generic.IEnumerable<System.Security.Claims.Claim>? claims);
new System.Security.Claims.ClaimsIdentity : System.Security.Principal.IIdentity * seq<System.Security.Claims.Claim> -> System.Security.Claims.ClaimsIdentity
Public Sub New (identity As IIdentity, claims As IEnumerable(Of Claim))
參數
- identity
- IIdentity
要從中建立新宣告身分識別的身分識別。
- claims
- IEnumerable<Claim>
要填入宣告身分識別的宣告。
備註
下表顯示 ClaimsIdentity 類別實例的初始屬性值。
財產 | 價值 |
---|---|
Actor | 如果 identity 可從 ClaimsIdentity指派,則為 identity.Actor 屬性的值;否則,null 。 |
AuthenticationType |
authenticationType 參數。 如果 authenticationType 參數是 null 或空字串,則會使用 identity.AuthenticationType (IIdentity.AuthenticationType) 屬性的值。 |
BootstrapContext | 如果 identity 可從 ClaimsIdentity指派,則為 identity.BootStrapContext 屬性的值;否則,null 。 |
Claims | 從 claims 參數初始化。 如果 identity 可從 ClaimsIdentity指派,則來自 identity 的宣告會在 claims 參數指定的宣告之前新增至新的實例。 |
IsAuthenticated | 注意: 存取時,會根據 AuthenticationType 屬性的值傳回 IsAuthenticated 屬性值。 |
Label | 如果 identity 可從 ClaimsIdentity指派,則為 identity.Label 屬性的值;否則,null 。 |
Name | 如果無法從 ClaimsIdentity指派 identity ,則不是 null ,而且具有非 null 的 IIdentity.Name 屬性;名稱宣告會使用 IIdentity.Name 屬性的值,新增至新的實例。
注意: 存取時,會根據 NameClaimType 和 Claims 集合傳回 Name 屬性值。 |
NameClaimType | 如果 identity 可從 ClaimsIdentity指派,則會使用 identity.NameClaimType 屬性的值;否則會使用 DefaultNameClaimType。 |
RoleClaimType | 如果 identity 可從 ClaimsIdentity指派,則會使用 identity.RoleClaimType 屬性的值;否則會使用 DefaultRoleClaimType。 |
適用於
ClaimsIdentity(IIdentity)
使用指定 IIdentity的名稱和驗證類型,初始化 ClaimsIdentity 類別的新實例。
public:
ClaimsIdentity(System::Security::Principal::IIdentity ^ identity);
public ClaimsIdentity (System.Security.Principal.IIdentity identity);
public ClaimsIdentity (System.Security.Principal.IIdentity? identity);
new System.Security.Claims.ClaimsIdentity : System.Security.Principal.IIdentity -> System.Security.Claims.ClaimsIdentity
Public Sub New (identity As IIdentity)
參數
- identity
- IIdentity
要從中建立新宣告身分識別的身分識別。
備註
下表顯示 ClaimsIdentity 類別實例的初始屬性值。
財產 | 價值 |
---|---|
Actor | 如果 identity 可從 ClaimsIdentity指派,則為 identity.Actor 屬性的值;否則,null 。 |
AuthenticationType | 會使用 identity.AuthenticationType (IIdentity.AuthenticationType) 屬性的值。 |
BootstrapContext | 如果 identity 可從 ClaimsIdentity指派,則為 identity.BootStrapContext 屬性的值;否則,null 。 |
Claims | 如果 identity 可從 ClaimsIdentity指派,則會將來自 identity 的宣告新增至新的實例;否則為空集合。 |
IsAuthenticated | 注意: 存取時,會根據 AuthenticationType 屬性的值傳回 IsAuthenticated 屬性值。 |
Label | 如果 identity 可從 ClaimsIdentity指派,則為 identity.Label 屬性的值;否則,null 。 |
Name | 如果無法從 ClaimsIdentity指派 identity ,則不是 null ,而且具有非 null 的 IIdentity.Name 屬性;名稱宣告會使用 IIdentity.Name 屬性的值,新增至新的實例。
注意: 存取時,會根據 NameClaimType 和 Claims 集合傳回 Name 屬性值。 |
NameClaimType | 如果 identity 可從 ClaimsIdentity指派,則會使用 identity.NameClaimType 屬性的值;否則會使用 DefaultNameClaimType。 |
RoleClaimType | 如果 identity 可從 ClaimsIdentity指派,則會使用 identity.RoleClaimType 屬性的值;否則會使用 DefaultRoleClaimType。 |
適用於
ClaimsIdentity(ClaimsIdentity)
從現有的 ClaimsIdentity 實例,初始化 ClaimsIdentity 類別的新實例。
protected:
ClaimsIdentity(System::Security::Claims::ClaimsIdentity ^ other);
protected ClaimsIdentity (System.Security.Claims.ClaimsIdentity other);
new System.Security.Claims.ClaimsIdentity : System.Security.Claims.ClaimsIdentity -> System.Security.Claims.ClaimsIdentity
Protected Sub New (other As ClaimsIdentity)
參數
- other
- ClaimsIdentity
要複製的 ClaimsIdentity。
例外狀況
other
null
。
備註
下表顯示提供給建構函式之 ClaimsIdentityClaimsIdentity 類別實例的屬性值指派。
財產 | 價值 |
---|---|
Actor | 如果 other.Actor 屬性值未 null ,則會複製並指派 other.Actor ClaimsIdentity;否則,null 。 |
AuthenticationType |
other.AuthenticationType 屬性的值。 |
BootstrapContext |
other.BootstrapContext 屬性的值。 |
Claims | 宣告的 List<Claim> ,如果有的話,在 other.Claims 屬性中。 |
Label |
other.Label 屬性的值。 |
NameClaimType |
other.NameClaimType 屬性的值。 |
RoleClaimType |
other.RoleClaimType 屬性的值。 |
CustomSerializationData | 如果 other.CustomSerializationData 未 null ,則會複製並指派 other.CustomSerializationData ;否則,null 。 |
適用於
ClaimsIdentity(SerializationInfo)
警告
This API supports obsolete formatter-based serialization. It should not be called or extended by application code.
從使用 ISerializable所建立的串行化數據流,初始化 ClaimsIdentity 類別的新實例。
protected:
ClaimsIdentity(System::Runtime::Serialization::SerializationInfo ^ info);
protected ClaimsIdentity (System.Runtime.Serialization.SerializationInfo info);
[System.Obsolete("This API supports obsolete formatter-based serialization. It should not be called or extended by application code.", DiagnosticId="SYSLIB0051", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
protected ClaimsIdentity (System.Runtime.Serialization.SerializationInfo info);
[System.Security.SecurityCritical]
protected ClaimsIdentity (System.Runtime.Serialization.SerializationInfo info);
new System.Security.Claims.ClaimsIdentity : System.Runtime.Serialization.SerializationInfo -> System.Security.Claims.ClaimsIdentity
[<System.Obsolete("This API supports obsolete formatter-based serialization. It should not be called or extended by application code.", DiagnosticId="SYSLIB0051", UrlFormat="https://aka.ms/dotnet-warnings/{0}")>]
new System.Security.Claims.ClaimsIdentity : System.Runtime.Serialization.SerializationInfo -> System.Security.Claims.ClaimsIdentity
[<System.Security.SecurityCritical>]
new System.Security.Claims.ClaimsIdentity : System.Runtime.Serialization.SerializationInfo -> System.Security.Claims.ClaimsIdentity
Protected Sub New (info As SerializationInfo)
參數
- info
- SerializationInfo
串行化的數據。
- 屬性
例外狀況
info
null
。
適用於
ClaimsIdentity(BinaryReader)
使用指定的 BinaryReader,初始化 ClaimsIdentity 的實例。
public:
ClaimsIdentity(System::IO::BinaryReader ^ reader);
public ClaimsIdentity (System.IO.BinaryReader reader);
new System.Security.Claims.ClaimsIdentity : System.IO.BinaryReader -> System.Security.Claims.ClaimsIdentity
Public Sub New (reader As BinaryReader)
參數
- reader
- BinaryReader
例外狀況
reader
null
。
備註
一般而言,讀取器是從從 WriteTo傳回的位元組建構。
適用於
ClaimsIdentity(IEnumerable<Claim>)
使用 Claim 物件的列舉集合,初始化 ClaimsIdentity 類別的新實例。
public:
ClaimsIdentity(System::Collections::Generic::IEnumerable<System::Security::Claims::Claim ^> ^ claims);
public ClaimsIdentity (System.Collections.Generic.IEnumerable<System.Security.Claims.Claim> claims);
public ClaimsIdentity (System.Collections.Generic.IEnumerable<System.Security.Claims.Claim>? claims);
new System.Security.Claims.ClaimsIdentity : seq<System.Security.Claims.Claim> -> System.Security.Claims.ClaimsIdentity
Public Sub New (claims As IEnumerable(Of Claim))
參數
- claims
- IEnumerable<Claim>
要填入宣告身分識別的宣告。
備註
下表顯示 ClaimsIdentity 類別實例的初始屬性值。
財產 | 價值 |
---|---|
Actor |
null 。 |
AuthenticationType |
null 。 |
BootstrapContext |
null 。 |
Claims | 從 claims 參數初始化。 |
IsAuthenticated | 注意: 存取時,會根據 AuthenticationType 屬性的值傳回 IsAuthenticated 屬性值。 |
Label |
null 。 |
Name | 注意: 存取時,會根據 NameClaimType 和 Claims 集合傳回 Name 屬性值。 |
NameClaimType | DefaultNameClaimType。 |
RoleClaimType | DefaultRoleClaimType。 |
適用於
ClaimsIdentity(String)
使用空的宣告集合和指定的驗證類型,初始化 ClaimsIdentity 類別的新實例。
public:
ClaimsIdentity(System::String ^ authenticationType);
public ClaimsIdentity (string authenticationType);
public ClaimsIdentity (string? authenticationType);
new System.Security.Claims.ClaimsIdentity : string -> System.Security.Claims.ClaimsIdentity
Public Sub New (authenticationType As String)
參數
- authenticationType
- String
所使用的驗證類型。
備註
下表顯示 ClaimsIdentity 類別實例的初始屬性值。
財產 | 價值 |
---|---|
Actor |
null 。 |
AuthenticationType |
authenticationType 參數的值。 如果 authenticationType 參數是 null 或空字串,則 屬性會設定為 null 。 |
BootstrapContext |
null 。 |
Claims | 空集合。 |
IsAuthenticated | 注意: 存取時,會根據 AuthenticationType 屬性的值傳回 IsAuthenticated 屬性值。 |
Label |
null 。 |
Name | 注意: 存取時,會根據 NameClaimType 和 Claims 集合傳回 Name 屬性值。 |
NameClaimType | DefaultNameClaimType。 |
RoleClaimType | DefaultRoleClaimType。 |