标签: roleprovider

Web.HttpContext.Current.User.Identity.Name来自哪里?

我有

FormsAuthentication.SetAuthCookie("someName", True)
Run Code Online (Sandbox Code Playgroud)

作为我的自定义登录序列的一部分.后来,我有一些页面只允许一个特定的角色:

<location path="myPage.aspx">
    <system.web>
        <authorization>
            <allow roles="SomeRole"/>
            <deny users="*"/>
        </authorization>
    </system.web>
</location>
Run Code Online (Sandbox Code Playgroud)

据我所知,这会调用我的角色提供程序的GetRolesForUser实现.它似乎从Web.HttpContext.Current.User.Identity.Name获取用户名参数.

我的问题是...... 来自auth cookie的用户名何时被设置为我当前用户身份中的名称?

asp.net forms-authentication httpcontext roleprovider

5
推荐指数
1
解决办法
9563
查看次数

推荐第三方Asp.Net会员提供商

我正在开发一个具有严格安全和审计要求的Web应用程序(HIPPA的东西).因此,我们正在评估是否应该建立自己的自定义成员资格和角色提供商,或者是否有可以购买的商用组件.

如果您对第三方Asp.Net会员和角色提供商有任何经验(好的或坏的),请分享您的想法.

更新:我们已开始评估以下第三方组件:

Port Sight Secure Access:http: //www.portsight.com/Products.aspx? AliasPath = Products/Secure Access/Secure Access&CultureAlias = en-US

和Visual Guard:http: //www.visual-guard.com/

有人知道任何其他第三方组件或有这些经验吗?

asp.net roleprovider membership-provider

5
推荐指数
1
解决办法
7686
查看次数

User.IsInRole与AuthenticateRequest中的Roles.IsUserInRole

HttpContext.Current.User.IsInRole 在AuthenticateRequest中不可用; 但是,Roles.IsUserInRole可用.

是因为在AuthenticateRequest之后将新的GenericPrincipal分配给HttpContext.Current.User?有人可以解释一下吗?感谢您的帮助!

void Application_AuthenticateRequest(object sender, EventArgs e)
{
    if(HttpContext.Current.Request.IsAuthenticated)
    {
        // Return False
        bool result1 = HttpContext.Current.User.IsInRole("Administrators");

        // Return True
        bool result2 = Roles.IsUserInRole("Administrators");
    }
}
Run Code Online (Sandbox Code Playgroud)

membership asp.net-membership roleprovider membership-provider

5
推荐指数
1
解决办法
4898
查看次数

Symfony2 in_memory用户提供程序问题

我有一个Symfony2应用程序,可从in_memory用户提供程序加载用户。该security.yml如下:

security:
    encoders:
        Symfony\Component\Security\Core\User\User: plaintext

    role_hierarchy:
        ROLE_ADMIN:       ROLE_USER
        ROLE_SUPER_ADMIN: [ROLE_USER, ROLE_ADMIN, ROLE_ALLOWED_TO_SWITCH]

    providers:
        in_memory:
            users:
                admin: { password: mypassword, roles: [ 'ROLE_ADMIN' ] }

    firewalls:
        dev:
            pattern:  ^/(_(profiler|wdt)|css|images|js)/
            security: false

        login:
            pattern:  ^/demo/secured/login$
            security: false

        secured_area:
            pattern:    ^/
            anonymous: ~
            http_basic:
                realm: "MyApp Realm - Login"

    access_control:
        #- { path: ^/login, roles: IS_AUTHENTICATED_ANONYMOUSLY, requires_channel: https }
        #- { path: ^/_internal, roles: IS_AUTHENTICATED_ANONYMOUSLY, ip: 127.0.0.1 }
        - { path: ^/subscription/show, roles: ROLE_ADMIN }
        - { path: ^/send, …
Run Code Online (Sandbox Code Playgroud)

security authentication in-memory roleprovider symfony

5
推荐指数
1
解决办法
2698
查看次数

模拟控制器动作单元测试的默认角色提供程序

希望这不是一个愚蠢的问题.我一直在寻找两天来模拟我的行为上的system.web.security.roles的调用.

我希望我的单元测试是隔离的,不需要调用外部资源,例如角色得到存储的数据库.

我发现的所有答案都建议创建一个自定义角色提供者,但我更喜欢模仿假货的创建.

我得到的最接近的是这个解决方案 但我没有找到一种方法让ninject在测试之外运行项目时将默认角色Provider传递给构造函数.

我知道Mock类型为此提供了一个更简单的解决方案,但我使用的是犀牛模拟,现在改变太晚了.

unit-testing ninject mocking roleprovider asp.net-mvc-3

5
推荐指数
1
解决办法
1336
查看次数

Umbraco 7个自定义会员和角色提供者

我浏览了10个文档,我正在做正确的事情,但我确信这是我遗漏的一个小细节.

我想使用自己的登录机制登录我的网站.登录机制位于Identity服务器中以进行单点登录.

但是我想在umbraco中使用公共访问功能,所以我在本地数据库中添加角色.通过更改配置文件

<roleManager enabled="true" defaultProvider="UmbracoRoleProvider">
      <providers>
        <clear />
        <add name="UmbracoRoleProvider" type="rcsedWebServiceBLL.RCSEdRoleProvider" />
      </providers>
    </roleManager>
Run Code Online (Sandbox Code Playgroud)

并实施 RoleProvider

 class RCSEdRoleProvider : RoleProvider
    {
        private string _ApplicationName = "UmbracoRoleProvider";
        public override void AddUsersToRoles(string[] usernames, string[] roleNames)
        {
        throw new NotImplementedException();
    }

    public override string ApplicationName
    {
        get { return _ApplicationName; }
        set
        {
            if(string.IsNullOrEmpty(value))
                throw new ProviderException("ApplicationName Cacnnot be Empty");

            if(value.Length > 0x100)
                throw new ProviderException("provider application name too long");

            _ApplicationName = value;
        }
    }

    public override void CreateRole(string roleName)
    {
        throw …
Run Code Online (Sandbox Code Playgroud)

.net umbraco roleprovider membership-provider umbraco7

5
推荐指数
1
解决办法
4602
查看次数

访问web.config中的授权信息

我正在编写自定义角色提供程序,我需要以编程方式访问存储在web.config中的授权信息.网站的某些部分只能由某些角色访问.我想知道哪些角色可以访问某个页面和/或某个角色可以访问哪个页面.

我似乎无法想出这个.

.net authorization roleprovider

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

RoleProvider不能在服务器上使用自定义IIdentity和IPrincipal

我使用的是定制的IIdentity,并IPrincipal在我ASP.NET MVC通过应用EF 4.3作为expalined 这里(并按照接受的答案的解决方案).另外,我有一个习惯RoleProvider.在本地(使用IIS Express),它的工作原理.但现在,当我在真实主机上传应用程序时,似乎所有用户都在"admin"角色中!例如,我创建了一个不在角色中的用户"admin",但它可以访问所有受保护的页面(需要"admin"角色).例如Role.IsUserInRole总是回来true.你有什么想法吗?你能帮助我吗?我应该做什么设置IIS吗?

iprincipal httpmodule iidentity roleprovider asp.net-mvc-3

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

使用带有自定义角色提供程序的asp.net mvc 4登录失败时,错误消息不会出现?

我正在尝试实现自定义角色提供程序,我找到了一个教程并遵循它.这是链接:http: //techbrij.com/custom-roleprovider-authorization-asp-net-mvc

当我尝试使用不存在的用户帐户登录时,不会显示错误消息.这是我目前的代码.

这是登录的代码:

[HttpPost]
        [AllowAnonymous]
        [ValidateAntiForgeryToken]
        public ActionResult Login(LoginModel model, string returnUrl)
        {
            if (ModelState.IsValid)
            {
                using (SampleDBEntities objContext = new SampleDBEntities())
                {
                    var objUser = objContext.Users.FirstOrDefault(x => x.AppUserName == model.UserName && x.Password == model.Password);
                    if (objUser == null)
                    {
                        ModelState.AddModelError("LogOnError", "The user name or password provided is incorrect.");
                    }
                    else
                    {
                        FormsAuthentication.SetAuthCookie(model.UserName, model.RememberMe);

                        if (Url.IsLocalUrl(returnUrl) && returnUrl.Length > 1 && returnUrl.StartsWith("/")
                           && !returnUrl.StartsWith("//") && !returnUrl.StartsWith("/\\"))
                        {
                            ModelState.AddModelError("LogOnError", "The user name or password provided is incorrect.");
                            return …
Run Code Online (Sandbox Code Playgroud)

asp.net roleprovider asp.net-roles asp.net-mvc-4

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

在运行.NET 4的IIS 7上找不到默认角色提供程序

大家早上好,

我试图在我的Web应用程序中实现我的自定义成员资格和角色提供程序,我已在IIS 7的实例中的默认网站下实现.我的Web应用程序在.NET 4应用程序池下运行.

但是,在设置相应的web.config后,我收到以下错误:

Parser Error Message: Default Role Provider could not be found.
Run Code Online (Sandbox Code Playgroud)

我在相应的Web应用程序的web.config的system.web部分中包含了以下代码块:

<membership defaultProvider="CustomMembershipProvider" userIsOnlineTimeWindow="20">
 <providers>
  <clear/>
  <add name="CustomMembershipProvider" type="CustomProviders.CustomMembershipProvider,   
     CustomProviders, Version=3.0.0.0, Culture=neutral, 
     PublicKeyToken=3563615169617648" applicationName="/"/>
 </providers>
</membership>

<roleManager enabled="true" defaultProvider="CustomRoleProvider">
  <providers>
   <clear/>
   <add name="CustomRoleProvider" type="CustomProviders.CustomRoleProvider, 
     CustomProviders, Version=3.0.0.0, Culture=neutral, 
     PublicKeyToken=3563615169617648" applicationName="/"/>
  </providers>
</roleManager>
Run Code Online (Sandbox Code Playgroud)

现在我已经看到各种解释如何解决我之前提到的错误.他们中的大多数人似乎都建议我在我的提供者块中添加标签.有些人似乎建议我从machine.config中删除角色管理器.有些人似乎还建议不要删除或添加任何内容.最后一种方法似乎并不能说明我的Web应用程序是从IIS而不是本地计算机运行的.

最后,我尝试了这些方法,但收效甚微.有人可以向我解释我怎么能通过这个错误?提前致谢!

c# iis web-applications roleprovider membership-provider

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