zoukankan      html  css  js  c++  java
  • 安全性

    •完全适用ASP.NET的认证机制
    –可以使用FormsAuthentication
    •WebService方法可以操作Cookie
    –Impersonation
    –PrincipalPermission


    aspx
        <form id="form1" runat="server">
            
    <asp:ScriptManager runat="server" ID="ScriptManager1" ScriptMode="Debug">
                
    <Services>
                    
    <asp:ServiceReference Path="Services/SecurityService.asmx" InlineScript="true" />
                
    </Services>
            
    </asp:ScriptManager>    
            
            
    <input type="button" value="Call" onclick="call()" />
        
            
    <script language="javascript" type="text/javascript">
                function call()
                {
                    SecurityService.HelloWorld(onSucceeded);
                }
                
                function onSucceeded(result)
                {
                    alert(result);
                }
            
    </script>    
        
    </form>

    cs
        protected void Page_Load(object sender, EventArgs e)
        {
            FormsAuthentication.SetAuthCookie(
    "Jeffrey Zhao"false);
        }
    如果不加上这一句,WebService就会跑出异常“Please log in first

    SecurityService.asmx
    <%@ WebService Language="C#" Class="SecurityService" %>

    using System;
    using System.Web;
    using System.Web.Services;
    using System.Web.Services.Protocols;
    using System.Web.Script.Services;

    [WebService(Namespace 
    = "http://tempuri.org/")]
    [WebServiceBinding(ConformsTo 
    = WsiProfiles.BasicProfile1_1)]
    [ScriptService]
    public class SecurityService : System.Web.Services.WebService
    {
        [WebMethod]
        
    public string HelloWorld()
        {
            
    if (!HttpContext.Current.User.Identity.IsAuthenticated)
            {
                
    throw new ApplicationException("Please log in first.");
            }
            
            
    return "Hello, " + HttpContext.Current.User.Identity.Name;
        }
        
    }
  • 相关阅读:
    组件ListWidget 继承StatefulWidget后动态传入List数据,组件并不会重新渲染。
    Spring Security 采用httpBasic模式认证
    基于Vue2.0实现OpenLayers MarkerCluster海量聚合点标记
    Spring Security 采用formLogin模式认证
    配置页面兼容360浏览器
    如何进行企业工作流选型
    IT项目管理的六种错误思维
    时间管理10项技巧
    一个项目涉及到的50个Sql语句(下)
    SQL Server2000存储过程调试
  • 原文地址:https://www.cnblogs.com/timy/p/1178274.html
Copyright © 2011-2022 走看看