BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

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

| 作者 Jonathan Allen 关注 529 他的粉丝 ,译者 邵思华 关注 3 他的粉丝 发布于 2014年8月29日. 估计阅读时间: 7 分钟 | GMTC大前端的下一站,PWA、Web框架、Node等最新最热的大前端话题邀你一起共同探讨。

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的请求管道。

查看英文原文:Microsoft’s new Web Server, Katana, Hits Version 3

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

不知道国内有没有实施过OWIN的商业项目案例? by jin zic

不知道国内有没有实施过OWIN的商业项目案例?

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

1 讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT