Microsoft has provided complaint-supported ad types in Microsoft.IdentityModel.dll that are not portable (but I hope). These types only extend current types of identity, for example. IPrincipal :
public interface IClaimsPrincipal : IPrincipal
This means that claims-supporting types are compatible with old code that uses the IPrincipal and IIdentity . But in order for your code requirements to be known, you must add a link to Microsoft.IdentityModel.dll (which is not available as PCL) or write it from scratch.
If you want to check how the old code works when handling instances of types that support claims, you can simply use downcasting for the IPrincipal interface:
IClaimsPrincipal claimsPrincipal = new ClaimsPrincipal(new List<IClaimsIdentity>() { new ClaimsIdentity("AuthType1"), new ClaimsIdentity("AuthType2") }); IPrincipal principal = claimsPrincipal as IPrincipal; IIdentity identity = principal.Identity;
source share