作者 Jonathan Allen ,译者 邵思华 发布于 2014年8月28日

Katana是微软对OWIN(基于.NET的开放Web接口)标准自行开发的一套实现方案,它是一种相对于IIS及System.Web命名空间的轻量级实现,这也是由于IIS及System.Web命名空间包含了某些无用的特性,或是某些设计不太理想。随着版本3的发布,Kanata目前已经完整地支持了.NET 4.5中新加入的异步编程模型。

微软同时决定在Katana中放弃对.NET 4.0的支持,这一点并不令人惊奇。尽管ASP.NET从十年前就已经开始支持异步编程模型,但.NET 2.0中引入的IAsyncResult模型使用起来非常繁琐,大多数开发者甚至都不知道它的存在。Node.js趁虚而入,它将自己称为高级异步web开发平台,而微软则希望通过在.NET 4.5中引入的async/await模型重新夺回这一称号。

此外,微软也希望让开发者们能够在2016年初这一时间前放弃旧的版本,以此大大减少对这些版本的巨大维护量。为了促进这一目标的实现,微软明确宣布,新的API在.NET 4.0版本上将不可用。

在新的功能特性方面,新版本主要关注于“企业级认证功能以及基于声明的标识(claims-based identity)”。参与了Katana 3项目的Vittorio Bertocci特别提到了以下三种协议:

  • WS-Federation
  • OpenId Connect (通过表单提交方式提供id_token以及id_token+code方式)
  • 可在Web API中使用的OAuth2票据令牌认证

Vittorio还写道:

这个版本的发布还解决了由于Twitter和Google API发生变动所引起的问题。如果你在应用中使用了Google认证,并且打算升级到Katana版本3,请确保你已读过这篇帖子

Katana可以作为NuGet包获得。根据Katana网站描述显示,取决于你所需的不同特性,共有总数超过20的包可以选择下载:(这一点和传统的ASP.NET形成了鲜明的对比,后者的方式是将几乎所有特性都堆积在一个庞大的程序集中。)

  • Microsoft.Owin – 提供了一组辅助类型,以及为简化创建OWIN组件而建的各种抽象类型。
  • Microsoft.Owin.Diagnostics – 提供了各种中间件组件,以辅助开发基于OWIN的应用程序。
  • Microsoft.Owin.FileSystems – 这个包里提供了文件系统相关的抽象与实现。
  • Microsoft.Owin.Testing – 提供了对OWIN组件进行单元测试的一些辅助类。
  • Microsoft.Owin.SelfHost – 包含了为在自行指定的进程中托管基于OWIN的应用程序所必需的一些组件。
  • Microsoft.Owin.Hosting – 提供了托管与运行基于OWIN的应用程序所需的默认基础框架类型。
  • OwinHost – 提供了一个单独的可执行程序(OwinHost.exe),通过它可以托管一个基于OWIN的应用程序的运行。
  • Microsoft.Owin.Cors – 这个包里包含了一些能够在OWIN中间件中进行跨域资源共享(CORS)的组件。
  • Microsoft.Owin.StaticFiles – 这个包里包含了一些OWIN中间件,能够处理来自于文件系统资源的请求,包括文件与目录。
  • Microsoft.Owin.Security – 包含了一些各种不同的认证中间件组件所共享的 通用类型。
  • Microsoft.Owin.Security.ActiveDirectory – 一组允许应用程序使用微软技术进行认证的中间件。
  • Microsoft.Owin.Security.Cookies – 允许应用程序使用基于cookie进行认证的中间件,类似于ASP.NET中的表单认证方式。
  • Microsoft.Owin.Security.Facebook – 允许应用程序支持Facebook所使用的OAuth 2.0认证工作流的一些中间件。
  • Microsoft.Owin.Security.Google – 包含了一组支持Google的OpenId及OAuth 2.0认证工作流的中间件。
  • Microsoft.Owin.Security.Jwt – 一组允许应用程序保护及验证JSON Web令牌的中间件。
  • Microsoft.Owin.Security.MicrosoftAccount – 一组允许应用程序支持微软帐号认证工作流的中间件。
  • Microsoft.Owin.Security.OAuth – 允许应用程序支持任何标准OAuth 2.0认证工作流的中间件。
  • Microsoft.Owin.Security.OpenIdConnect – 允许应用程序使用OpenIdConnect方式进行认证的中间件。
  • Microsoft.Owin.Security.Twitter – 允许应用程序支持Twitter的OAuth 2.0认证工作流的中间件。
  • Microsoft.Owin.Security.WsFederation – 允许应用程序使用WsFederation进行认证的中间件。
  • Microsoft.Owin.Host.HttpListener – 基于.Net Framework中的HttpListener类创建的OWIN服务器,也是目前用于自托管的默认服务器。
  • Microsoft.Owin.Host.SystemWeb – 也是OWIN服务器实现,但它允许基于OWIN的应用程序运行在IIS中,并能够使用ASP.NET的请求管道。

转微软最新的Web服务器Katana发布了版本3的更多相关文章

  1. 微软最新的Web服务器Katana发布了版本3

    Katana 项目入门 Howard Dierking 当 ASP.NET 首次在 2002 年发布时,时代有所不同. 那时,Internet 仍处于起步阶段,大约有 5.69 亿用户,每个用户平均每 ...

  2. 基于OWin的Web服务器Katana发布版本3

    当 ASP.NET 首次在 2002 年发布时,时代有所不同. 那时,Internet 仍处于起步阶段,大约有 5.69 亿用户,每个用户平均每天访问 Internet 的时间为 46 分钟,大约有 ...

  3. Nginx 外的另一选择,轻量级开源 Web 服务器 Tengine 发布新版本

    新版发布 近日,轻量级开源 Web 服务器 Tengine 发布了2.3.0版本,新增如下特性: ngx_http_proxy_connect_module,该模块让 Tengine 可以用于正向代理 ...

  4. Linux上部署web服务器并发布web项目-转

    Linux上部署web服务器并发布web项目   近在学习如何在linux上搭建web服务器来发布web项目,由于本人是linux新手,所以中间入了不少坑,搞了好久才搞出点成果.以下是具体的详细步骤以 ...

  5. Linux上部署web服务器并发布web项目

    近在学习如何在linux上搭建web服务器来发布web项目,由于本人是linux新手,所以中间入了不少坑,搞了好久才搞出点成果.以下是具体的详细步骤以及我对此做的一些总结和个人的一些见解,希望对跟我一 ...

  6. 在win8(win8.1)电脑上安装IIS,配置web服务器,发布网站

    1.IIS安装: 打开控制面板——程序和功能——启用或关闭Windows功能——找到(Windows功能下)下的(Internet Infornation Services)把Web 管理工具和万维网 ...

  7. html web服务器

    web服务器可以发布网站,从而使得网站可以被全世界访问: 在自己服务器上托管自己的网站的要求: 硬件搭建:强大的服务器硬件,保证24小时高速连接, 软件搭建:服务器授权比客户端授权更贵: 人工费:环境 ...

  8. Windows Server 2008 R2 web服务器发布在线系统时遇到的问题

    1  HTTP 错误 404.2 - Not Found,由于 Web  服务器上的“ISAPI 和 CGI 限制”列表设置,无法提供您请求的页面(如下图) 打开 Internet 信息服务(IIS) ...

  9. [转载]IBM公司发布了最新的power7服务器p750 p770 p780

    [转载]IBM公司发布了最新的power7服务器p750 p770 p780 (2015-06-11 12:54:17) 转载▼ http://blog.sina.com.cn/s/blog_6f52 ...

随机推荐

  1. Fiddler代理手机抓包

    Fiddler代理手机抓包 0. 安装Fiddler 1. 安装HTTPS证书并允许远程连接 Tools - Options 点击OK后重启Fiddler. 确保手机与当前电脑在同一局域网. 然后在手 ...

  2. Spring MVC异常处理代码完整实例

    Spring MVC异常处理流程: 提供构造方法传值: 配置异常处理器的bean

  3. 数据建模工具------EZMNL

    表结构设计器(EZDML) 表结构设计器EZDML1.5新版本发布,比以前介绍的1.2版本改进了很多,因此重新写了个介绍. 表结构设计,即所谓的数据建模,目前大家常用的同类著名工具有PowerDesi ...

  4. GRE

    第一个技术是GRE,全称Generic Routing Encapsulation,它是一种IP-over-IP的隧道技术.它将IP包封装在GRE包里,外面加上IP头,在隧道的一端封装数据包,并在通路 ...

  5. 基于工作组消息队列高可用&msmq-wcf故障

    场景: msmq 1# server故障手工切换到2# server,msmq-wcf service宿主服务重启后,无法成功读取消息,状似service不工作.无法监听到数据传输. 解决过程: 反复 ...

  6. number与string的转换

    // number -> string // toString() /* var num = 10; var res = num.toString(); alert(typeof (num)); ...

  7. 解决此报错:Cannot create Woodstox XMLInputFactory: java.lang.NoClassDefFoundError: com/ctc/wstx/stax/WstxInput

    最近在研究webservice服务的技术,可是写完webservice例子后,项目正常启动,但是在输入url地址后报如下的错误: Cannot create Woodstox XMLInputFact ...

  8. Invalid escape sequence at line 1 column 29 path $[0].name

    编译报错:Invalid escape sequence at line 1 column 29 path $[0].name 解决:grade.properties 文件下 org.gradle.j ...

  9. MySQL Binlog--事务日志和BINLOG落盘参数对磁盘IO的影响

    参数说明 innodb_flush_log_at_trx_commit和sync_binlog 两个参数是控制MySQL 磁盘写入策略以及数据安全性的关键参数,不同参数设置对磁盘IO影响不同. 参数i ...

  10. 【Bug】MQ消息与事务提交

    项目联调期间,遇到个bug,涉及MQ消息传递和事务提交时间问题,简单记录下. 背景 审核服务(审核创建项目),点击审核通过,后台代码会在提交事务前发送MQ消息(该消息由项目管理服务消费),发送成功后, ...