2015-11-27 2 views
0

У меня есть служба,WCF уровень безопасности метод или экспонирование

[ServiceContract] 
public interface IProduct 
{ 
    [OperationContract] 
    [WebInvoke(Method = "POST", UriTemplate = "/Products/Update")] 
    void Update(Product product); 

    [OperationContract] 
    [WebInvoke(Method = "GET", UriTemplate = "/Products")] 
    Product[] Get(); 
} 

Теперь я хочу только конкретного пользователя в домене, чтобы иметь возможность обновлять продукты и вызывать этот метод, только так я могу одно из в методе сам проверить, если зарегистрированный пользователь является пользователем, которого я хочу дать разрешениям, есть ли лучший способ?

Update(Product product) 
{ 
    if (HttpContext.Current.User.Identity.Name == "Something") 
    { 
     // update product 
    } 
} 
+0

сделать эту помощь - https://msdn.microsoft.com/en-us/library/ms731200(v=vs.110).aspx? –

+0

@AmitKumarGhosh отлично, вот что я был точно после этого, пожалуйста, добавьте в качестве ответа, и он будет принят! – Mathematics

+0

Рад, что я помог. Мы давно говорили. –

ответ

1

Ну, вы можете использовать атрибут PriciplePermission, чтобы позволить определенным пользователям/группам доступ к определенным ресурсам. Используется внутренний поставщик ASP.Net Role. Этот атрибут может использоваться как на уровне класса, так и на индивидуальном (ых) методе.

Для деталей реализации -

https://msdn.microsoft.com/en-us/library/ms731200(v=vs.110).aspx

Смежные вопросы