小编Mat*_*ber的帖子

WCF自定义授权

基本上,我正在创建我的第一个WCF Web服务,我正在寻求实现自定义身份验证和授权.身份验证似乎运行良好,但我希望能够使用自定义授权存储角色和权限.

我的身份验证是通过覆盖UserNamePasswordValidator和使用该Validate方法完成的.

Validate(string UserName, string password)
Run Code Online (Sandbox Code Playgroud)

现在我尝试使用该IAuthorizationPolicy接口实现授权

public class AuthorizationPolicy : IAuthorizationPolicy
{
    private string _id;

    public string Id
    {
        get { return this._id; }
    }

    public ClaimSet Issuer
    {
        get { return ClaimSet.System; }
    }

    public AuthorizationPolicy()
    {
        _id = Guid.NewGuid().ToString();
    }

    public bool Evaluate(EvaluationContext context, ref object state)
    {
        IIdentity client = GetClientIdentity(context);
        context.Properties["Principal"] = new CustomPrincipal(client);

        return true;
    }

    private IIdentity GetClientIdentity(EvaluationContext evaluationContext)
    {
        object obj;
        if (!evaluationContext.Properties.TryGetValue("Identities", out obj)) …
Run Code Online (Sandbox Code Playgroud)

c# wcf authorization

14
推荐指数
1
解决办法
2558
查看次数

XmlSerializer没有序列化两个枚举属性

我们目前正在尝试使用XmlSerializer.Serialize将一组对象序列化为xml

我们已经使用以下存根测试了XmlSerializer

private static void TestMethod()
{
    ChartContentConfig Config = new ChartContentConfig();
    Config.DefinitionId = "6790e2ca-be93-48dd-94e7-f8ec0f6e5fd4";
    Config.Sorts = null;
    Config.DataFields = new DataField[1];
    Config.DataFields[0] = new DataField()
    {
        Aggregator = AggregateFunction.Sum,
        ApplyFilter = ApplyFilter.Before,
        FieldName = "Hello",
        FieldType = typeof(decimal).ToString(),
        FilterToValue = "",
        FilterFromValue = "",
        FilterOperator = FilterOperator.None,
        IsVisible = false,
        DisplayName = "Hello",
        DefaultStyle = "DefaultFormat"
    };

    Type configType = typeof(DataField);
    DataField DataField = Config.DataFields[0];
    DataField.MarkerFormat = "MarkerFormatTest";
    DataField.SeriesColour = "SeriesColourTest";
    DataField.TestProperty = AggregateFunction.Average;
    DataField.Aggregator = AggregateFunction.Average;
    string test …
Run Code Online (Sandbox Code Playgroud)

c# xml serialization xmlserializer

4
推荐指数
1
解决办法
2147
查看次数

标签 统计

c# ×2

authorization ×1

serialization ×1

wcf ×1

xml ×1

xmlserializer ×1