整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:

ASP.NET资源大全

PI

来源:快舔包我很肥

框架

  • NancyFx:轻量、用于构建 HTTP 基础服务的非正式(low-ceremony)框架,基于.Net 及 Mono 平台。
  • ASP.NET WebAPI:快捷创建 HTTP 服务的框架,可以广泛用于多种不同的客户端,包括浏览器和移动设备。
  • ServiceStack:架构缜密、速度飞快、令人愉悦的 web 服务。
  • Nelibur:Nelibur 是一个使用纯 WCF 构建的基于消息的 web 服务框架。Nelibur 可以便捷地创建高性能、基于消息的 web 服务,使得你全面拥有 WCF 的强大能力。


WebAPI Contrib:帮助你提高 ASP.NET Web API 能力的开源项目集合。

应用框架(Application Frameworks)

  • ASP.NET Boilerplate:现代 ASP.NET MVC web 应用程序的入门,包含最佳实践和最流行的工具。
  • Orleans:Orleans 框架提供了直接构建分布式、大规模计算应用的方法,无需学习和使用复杂的并行或扩展模型。
  • CoreFX:corefx 仓库包含了 .NET 核心功能库的实现(被称为“CoreFX”)。包含了 System.Collections、System.IO、System.Xml 以及诸多其它组件。目前构建并运行于 Windows 平台。你可以关注这个仓库,了解在未来的几个月内即将增加的对 Linux 和 Mac 的支持。
  • CSLA .NET:业务层开发框架 http://www.cslanet.com。
  • Mono:Mono 是 ECMA CLI、C# 以及 .NET 的开源实现。
  • Mono-Addins:Mono.Addins 是一个通用框架,用于创建可扩展的应用程序,以及这些应用程序的扩展插件。
  • Spring.Net:Spring.NET 是一个开源的应用程序框架,可以便捷地创建企业级 .NET 项目。


应用模板(Application Templates)

  • MVC.Template:ASP.NET MVC 5 入门项目模板。
  • ProjectScaffold:F# 基金会推荐的 .NET 解决方案的原型——包括文件系统的搭建、用于管理依赖的 Paket 以及用于自动化构建、测试的 FAKE。默认情况下,构建流程也会对文档进行编译,并生成 NuGet 程序包。
  • Side-Waffle :包含大量有用的 Web 和桌面开发模板。Side-Waffle
  • Template10 :带有设计模式的 Windows 10 模板。Template10


人工智能(Artificial Intelligence)

  • AIMLBot(Program#):使用 C# 编写的一个小型、快速、兼容标准、易于定制的聊天机器人,基于 AIML (人工智能标记语言 Artificial Intelligence Markup Language)。
  • SIML:智能综合智能标记语言(Synthetic Intelligence Markup Language),下一代聊天机器人及数字助手语言。


程序集处理(Assembly Manipulation)

  • dnSpy:dnSpy 是一个 .NET 程序集编辑器、反编译器和调试器,来自 ILSpy 分支。
  • Fody:织入(weaving).net 程序集的可扩展工具。
  • Mono.Cecil:Cecil 类库用于生成和检查 ECMA CIL 程序和库。


资源(Assets)

  • Cassette:管理 .NET web 应用程序资源(脚本、css 和 模板)Cassette
  • NodeAssets:.net 资源管理器,通过 SignalR 实时更新 css,也可以使用 NodeJS 编译器。
  • Bundler:编译和最小化 Less、Sass、Stylus、Css、JS、CoffeeScript、LiveScript 文件。MVC集成了 MVC 和 ServiceStack。
  • ClientDependency:压缩CSS与JS,提供WebForm与MVC版本。
  • SquishIt:让你轻松合并一些 css 和 javascript。


认证和授权(Authentication and Authorization)

  • ASP.NET Identity:用于 ASP.NET 应用程序的新身份系统。
  • DotNetOpenAuth:OpenID、OAuth 和 InfoCard 协议的一个 C# 实现。


  • Logibit Hawk:一个 F# Hawk 认证库。


  • IdentityModel:.NET 4.5 和 MVC4、Web API 身份和访问控制的辅助库。
  • IdentityServer:可扩展的 OAuth2 和 OpenID 连接提供程序框架。
  • OAuth:超轻量级 OAuth 1.0a 签名生成库,C# 编写。


自动构建(Build Automation)

  • Psake:基于 .NET 的自动化构建工具,使用 PowerShell 编写。
  • FAKE:F# Make,一个跨平台自动构建系统。
  • Invoke-Build:PowerShell 自动构建和测试工具,灵感来自 Psake。
  • MSBuild:微软构建引擎(MSBuild)是 .NET 和 Visual Studio 的构建平台。
  • Cake:Cake(C# Make)使用 C# DSL 的跨平台自动构建系统。


缓存(Caching)

  • CacheCow:ASP.NET Web API HTTP 客户端和服务器端缓存实现。
  • Akavache:一个异步、持久化的键值存储。
  • CacheManager:是用C#为.NET写的缓存管理抽象层,支持多种缓存工具,可以实现层次化的缓存。


CLI

  • Command Line Parser:Command Line Parser 类库为 CLR 应用程序提供了一套简洁的 API,用于处理命令行参数及相关任务。
  • Fluent Command Line Parser:一个简单、强类型的 .NET C# 命令行解析库,交互方式流畅易用。
  • Power Args:PowerArgs 将命令行参数转换为 .NET 对象,便于程序使用。它还提供了大量可选的扩展,例如参数校验、自动生成使用帮助、tab 补全等等。
  • UnionArgParser:针对 F# 应用程序的声明式 CLI 参数和 XML 配置解析器。


CLR

  • CoreCLR:coreclr repo 包含了完整的 .NET 核心运行时实现(称为“CoreCLR”)。它包括 RyuJIT、.NET GC、非托管代码交互(native interop)等诸多组件。它目前构建和运行于 Windows 平台。你可以关注这个仓库,了解未来的几个月内即将增加的对 Linux 和 Mac 的支持。


CMS

  • Composite C1:一个 web 内容管理系统,着重在用户体验及适应性。
  • mojoPortal:MojoPortal 是一个可扩展、跨数据库、移动友好的 web 内容管理系统(CMS)和 web 应用程序框架,使用 C# ASP.NET 编写。
  • N2CMS:开源、轻量、代码优先的 CMS,可以无缝地集成到任何 MVC 项目中。
  • Orchard:免费、开源、专注社区的项目,目标是在 ASP.NET 平台上提供应用程序和可重用组件。
  • Piranha CMS:Piranha 是一个有趣、快速、轻量级的 .NET 框架,用于开发基于 cms 附带其它功能的 web 应用程序。它基于 ASP.NET MVC 和 Web 页面创建,完全兼容 Visual Studio 和 WebMatrix。
  • Umbraco:Umbraco 是一个免费开源的内容管理系统,基于 ASP.NET 平台构建。


代码分析和度量(Code Analysis and Metrics)

  • CodeMaid:Visual studio 扩展,用于清理、挖掘和简化 C#、C++、F#、VB、PHP、JSON、XAML、XML、ASP、HTML、CSS、LESS、SCSS、JavaScript 和 TypeScript 代码。
  • StyleCop:StyleCop 使用一组风格和一致性规则,对 C# 源代码进行分析和强制性检查。
  • Gendarme:可扩展的、基于规则的工具,用于在 .NET 应用程序和类库中查找问题。
  • Metrics-Net:捕获 CLR 和应用程序级别的度量值。所以你知道它的功能。


编译器(Compiler)

  • Bridge.NET:将 C# 编译成 JavaScript 的开源编译器 http://bridge.net/。
  • ClojureCLR:从 Clojure 到 CLR 的转换,是 Clojure 项目的一部分。
  • F#:F# 编译器、核心库和工具——更安全、更快、代码更好的函数式编程语言。
  • FunScript:F# 到 JavaScript 的编译器,可以通过 TypeScript 类型提供程序使用 JQuery 等 JavaScript 库。
  • JSIL:CIL 到 Javascript 的编译器 http://jsil.org/。
  • Mono-basic:Visual Basic 编译器和运行时。
  • Nemerle:Nemerle 是一个 .NET 平台高级静态类型编程语言。它提供函数式、面向对象式和命令式编程语言的特性。它拥有一个简单的类似 C# 的语法和强大的元编程(meta-programming)系统。
  • Netjs:.NET 到 TypeScript 和 JavaScript 编译器。兼容可移植类库。你甚至可以使用 EXE 文件。
  • Roslyn:.NET 编译平台(“Roslyn”)提供开源的 C# 和 Visual Basic 编译器,包含丰富的代码分析 API。它可以使用和 Visual Studio 一样的 API 来构建代码分析工具。
  • VisualFSharp:Visual F# 编译器和工具。


压缩(Compression)

  • SharpCompress:SharpCompress 是一个用于 .NET、Mono、Silverlight、WP7 的压缩类库,可以解压rar、7zip、zip、tar、bzip2 和 gzip,提供单向读取和随机文件访问 API。支持对 zip/tar/bzip2/gzip 进行写入的实现。
  • DotNetZip.Semverd:一个开源项目,提供对 ZIP 文件处理的 .NET 类库和相关工具。 (分支自 已经不再维护的DotNetZip)DotNetZip.Semverd
  • SharpZipLib:一个 Zip、GZip、Tar 和 BZip2 的类库,完全由 C# 编写,面向 .NET 平台。


持续集成(Continuous Integration)

  • TeamCity:可以直接使用的,可扩展、面向开发人员友好的构建服务器——开箱即用。
  • CruiseControl.NET:一个自动化持续集成服务器,使用 .NET Framework 实现。
  • MyGet:为NuGet、NPM、Bower 和 VSIX 提供持续集成、部署、宿主程序包仓库的服务。
  • AppVeyor:.NET 持续构建和部署服务。


加密(Cryptography)

  • BouncyCastle:和 .Net 的 System.Security.Cryptography 一起,在 CLR 上提供加密算法的实现。
  • HashLib:HashLib 包含了几乎所有你见过的哈希算法,它几乎支持所有东西并且非常容易使用。
  • libsodium-net:libsodium for .NET——一个安全加密库。
  • StreamCryptor:使用 libsodium 和 protobuf 对流进行加密和解密。


数据库(Database)

  • BrightstarDb:BrightstarDB 是一个原生的 .NET RDF 三元组数据库(triple store)。
  • Event Store:开源的功能性数据库,支持使用 JavaScript 进行复杂事件处理。 https://geteventstore.com
  • LiteDB:一个 .NET 的 NoSQL 单文件文档数据库。
  • RavenDB:支持 linq 的 .NET 文档数据库。


数据库驱动(Database Drivers)

  • MySQL Connector:完全托管的 MySQL ADO.NET 数据库提供程序、连接器。
  • Npgsql:Postgresql 的 .Net 数据提供程序。
  • MongoDB:MongoDB 官方 C# 驱动。
  • ServiceStack Redis:.NET 领先的 C# Redis 客户端。
  • StackExchange Redis:来自 StackExchange 的通用 redis 客户端。
  • Cassandra:DataStax 开发的 Apache Cassandra .NET 驱动程序。
  • Couchbase:couchbase 官方 .NET 客户端库,基于 Enyim memcached 客户端。
  • Firebird.NET:由C# 编写的 .NET 数据提供程序,提供对 Firebird API 的高性能原生实现。


反编译(Decompilation)

  • ILSpy:ILSpy 是一个开源的 .NET 程序集查看器和反编译器。
  • JustDecompile Engine:JustDecompile 反编译引擎。
  • de4dot:是一款强大的.NET程序集反混淆和脱壳工具(开源GPLv3)。


部署(Deployment)

  • Unfold:基于 Powershell 的 .net web 应用程序部署解决方案。


DirectX

  • SlimDX:为 .NET 应用程序提供的 DirectX 封装。
  • SharpDX:SharpDX 是一个开源项目,为 .Net 及所有 Windows 平台提供完整的 DirectX API,可以开发高性能的游戏、2D/3D图形渲染以及实时音频应用程序。


分布式计算(Distributed Computing)

  • Project Orleans:Orleans 框架提供了直接构建分布式、大规模计算应用的方法,无需学习和使用复杂的并行或扩展模型。由微软研究院开发。
  • Akka.net:Akka.NET 是流行的 Java/Scala 框架 Akka 的 .NET 版本。它由社区提供,与 Typesafe(原始的 Java、Scala 版本的开发商)无关。


文档(Documentation)

  • Sandcastle:Sandcastle 帮助文件生成器和 NDoc 类似。
  • SharpDox:一个 c# 文档工具。
  • Swashbuckle:向 WebApi 项目无缝地添加 swagger 文档(译者注:swagger 是一套用于生成、描述、展现 RESTful 风格 web 服务文档的框架和规范)。
  • NSwag:通过Swagger规范生成.NET、TypeScript的Web API客户端。
  • F# Formatting:F# 和 C# 项目的文档工具,文档生成自 F# 脚本文件、Markdown 文档、内嵌 XML 或 Markdown评论。


电子商务和支付(E-Commerce and Payments)

  • Paypal Merchant SDK:Paypal Merchant官方.NET SDK。
  • NopCommerce:nopCommerce。开源的电子商务购物车(ASP.NET MVC)。


  • ServiceStack.Stripe:针对 stripe.com REST API 的强类型 .NET 客户端。


  • SmartStoreNET:免费 ASP.NET MVC 电子商务购物车解决方案。


  • Stripe.Net:Stripe.net 是针对 http://stripe.com 完整服务的 .net api。


  • BeYourMarket:BeYourMarket 是一个点对点的市场框架。


  • Virto Commerce:Virto Commerce 是第二个版本,也是唯一的开源许可下的企业级别电子商务产品。Virto Commerce 基于 .NET 4.5,使用了 MVC、IoC、EF、Azure、Angular JS 等其他先进技术。它可以在微软的云平台(Azure)、亚马逊云服务(AWS)和企业内部部署。


环境管理(Environment Management)

  • DNVM:.NET SDK 管理器,一组命令行工具,用于更新和配置需要使用的运行时环境(DNX)。


ETL

  • Reactive ETL:Reactive ETL 使用 .NET 反应性扩展框架(reactive extensions) 重写了 Rhino ETL。


游戏(Game)

  • MonoGame:一个用来创建跨平台游戏的强大框架。
  • CocosSharp:CocosSharp 是 Cocos2D 和 Cocos3D API 的 C# 实现版本,可以在所有支持 MonoGame 的平台上运行。
  • Duality:Duality 是一个 2D 游戏开发框架。专注于功能的模块化,自带一个可视化编辑器。
  • Paradox:Paradox 游戏引擎。


地理信息系统(Gis)

  • NetTopologySuite:一个 在 .NET 平台上实现快速、可靠的 GIS 系统解决方案。
  • SharpMap:一个易于使用的地图库,可以用于 web 和桌面应用程序。


Git工具(Git Tools)

  • Bonobo Git Server:Bonobo Git Server for Windows 是一个 web 应用程序,可以安装在你自己的 IIS 上,用于管理和连接你的 git 仓库。
  • GitExtensions:GitExtensions 包含资源管理器扩展、Visual Studio 2008/2010/2012/2013 插件和一个独立的 Git 仓库工具。
  • GitLink:让用户可以单步调试托管在 GitHub 或 BitBucket 上的代码。
  • GitVersion:根据你的 Git 仓库的状态生成一个语义化版本号(Semantic Version Number)。
  • LibGit2Sharp:LibGit2Sharp 带来了 libgit2 所有的功能和速度,是一个本地 Git 实现,可以运行在 .Net 和 Mono 平台。
  • NGit:NGit 是 JGit 移植到 C# 的版本。
  • posh-git:Git 的 PowerShell 环境。


图形(Graphics)

  • Oxyplot:OxyPlot 是一个 .NET 跨平台绘图库。
  • OpenTK:Open Toolkit 是一个封装了 OpenGL、OpenCL 和 OpenAL 的 高级底层 C# 开发库。
  • NGraphics:NGraphics 是一个 .NET 跨平台矢量图形渲染库。


GUI

  • MahApps.Metro:用于创建 Metro 风格 WPF 应用的工具箱。
  • Callisto:用于 Windows 8 XAML 应用的控件工具箱。包含若干 UI 控件,让你更容易地创建符合 Windows UI 风格规范的Windows 商店应用。
  • ObjectListView:ObjectListView 使用 C# 封装了 .NET 的 ListView 控件。它使得 ListView 更加易用,并且加入了一些新特性。
  • DockPanelSuite:灵感来自 Visual Studio 的停靠窗口(docking)类库,用于 .NET WinForm 应用。
  • AvalonEdit:在 SharpDevelop 中使用,基于 WPF 的文本编辑器组件。
  • XWT:跨平台 UI 工具箱,用于创建 .NET 和 Mono 桌面应用程序。
  • Gtk#:Gtk# 是 Gtk+ GUI 工具箱的 Mono/.NET 版本,绝大多数 Mono 中的 GUI 应用都基于它构建。
  • MaterialDesignInXamlToolkit:用于创建 Material Design 风格 WPF 应用的工具箱。
  • Eto.Forms:跨平台的 GUI 框架,用于 .NET 和 Mono 下的桌面和移动应用程序。
  • Dragablz:可拖拽、可分离(tearable,译者注:即拖拽标签页成为独立窗口)的 WPF 标签页控件(类似 Chrome)。支持布局和主题,包含兼容 MahApps 和 Material Design 的主题。
  • Fluent.Ribbon:Fluent Ribbon Control Suite 是一个在 WPF 中实现 Office 和 Windows 8 风格的 Ribbon 库。


HTML 和 CSS(HTML and CSS)

  • AngleSharp:支持构建完整的 HTML5 DOM 和 CSS3 模型。
  • CsQuery:jQuery 风格的HTML5 解析器,可与 DOM 交互。
  • dotless:ruby Less CSS 库的 .NET 移植版本。
  • ExCSS:C# 的 CSS3 解析器开发库。
  • FluentBootstrap:让ASP.NET MVC 和 WebPages 更容易使用 Boostrap CSS 框架。
  • HtmlAgilityPack:一个灵活的 HTML 解析器,可以对 DOM 进行读写,支持 XPATH 和 XSLT。
  • Jumony:类似HtmlAgilityPack框架,性能有改善。


HTTP

  • Http.fs:[F#] 中的一个函数式 HTTP 客户端。
  • RestSharp:.NET 下简单的 REST 和 HTTP API 协议客户端。
  • EasyHttp:C# Http开发库。
  • Refit:Xamarin 和 .NET 下自动生成强类型的 REST 库。
  • RestEase:类型安全且易于使用的 REST API 客户端库,简单可定制。大部分灵感来自 Refit。


IDE

  • SharpDevelop:用于 .NET 编程语言的免费 IDE。
  • MonoDevelop:MonoDevelop 是一个跨平台的 IDE,主要面向 Mono/.NET 开发者。
  • Visual Studio Express:用于 .NET 开发的免费、轻量版本的 Visual Studio。
  • Visual Studio Community:功能完整的免费 IDE。
  • Waf DotNetPad:简单快速的代码编辑器,让开发 C# 或 Visual Basic 充满乐趣。
  • Visual Studio Code:非常棒的编辑器,来自微软,基于 GitHub Atom。


  • Rider:跨平台.Net IDE。


图像处理(Image Processing)

  • ImageResizer:在图片 URL 后面增加命令,在几毫秒内获取修改后的版本,支持实时的对图片进行缩放、编辑。
  • ImageProcessor:开源 .NET 库,用于实时处理图片。
  • DynamicImage:高性能开源图片处理库,用于 ASP.NET。
  • MetadataExtractor:从图片中提取 Exif、IPTC、XMP、ICC 等其它元数据信息。
  • Emgu CV:OpenCV 的 .NET 跨平台封装。


安装工具(Install Tools)

  • Wix Toolset:强大的工具集,用于创建你自己的 Windows 安装程序。
  • Squirrel:Squirrel 即是一套工具也是一个类库,可以无安全管理 Windows 桌面程序的安装和更新。


国际化(Internationalization)

  • i18n:ASP.NET MVC 智能国际化工具。


互操作(Interoperability)

  • CefSharp:Chromium Embedded Framework 的 .NET 支持(WPF 和 WinForm)。
  • CppSharp:在 C# 中平滑使用 C++ API 的工具。
  • Sharpen:Sharpen 是 db4o 编写的 Eclipse 插件,可以让你把 Java 项目转换为 C#。
  • CXXI:C++ 互操作框架。


IoC

  • Castle Windsor:Castle Windsor 是一个用于 .NET 和 Silverlight 的成熟的 控制反转(IoC) 容器。
  • Unity:轻量级、可扩展的依赖注入容器,支持构造函数、属性和方法调用注入。
  • Autofac:令人着迷的 .NET IoC 容器。
  • Ninject:.net 依赖注入的忍者。
  • StructureMap:.Net 最早的 IoC/ID 容器。
  • Spring.Net:Spring.NET 是一个开源应用程序框架,可以便捷地创建企业级 .NET 应用。
  • LightInject:一个超轻量级 IoC 容器。
  • TinyIoC:单文件、简单、跨平台的 IoC 容器。


日志(Logging)

  • Essential Diagnostics:为内置System.Diagnostics 命名空间扩展功能,提供更灵活的日志功能。
  • NLog:先进的 .NET 和 Silverlight 日志工具。
  • ELMAH:ELMAH 官方网站。
  • Elmah MVC:MVC 版 Elmah。
  • Logary:Logary 是一个 mono 和 .Net 平台下高性能、多目标的日志、度量、追踪和健康检查库。支持多目标,为微服务构建。
  • Log4Net:Apache log4net 工具库能够帮助程序员向多种不同的目标输出日志语句。
  • Serilog:一个 NoSQL 时代下简单直接的日志库。将多个优秀的传统结构化分析日志功能合并到一个易于使用的程序集中。
  • StackExchange.Exceptional:Stack Exchange 网络使用的错误处理程序。
  • Semantic Logging Application Block (SLAB):为内置
  • System.Diagnostics.Tracing 命名空间(EventSource类)扩展功能,支持将日志记录到多个容器中,包括 Azure 表存储、数据库、文件(JSON、XML、文本文件)。通过 ETW 支持进程内和进程外的日志记录,支持 Rx 进行实时的事件过滤和聚合。
  • Exceptionless:一个免费开源分布式系统的日志收集框架,它可以应用在基于 ASP.NET,ASP.NET Core,Web Api,Web Forms,WPF,Console,MVC 等技术栈的应用程序中,并且提供了Rest接口可以应用在 Javascript,Node.js 中。


机器学习和数据科学(Machine Learning and Data Science)

  • Accord.NET:机器学习框架,包含了音频和图像处理的库(计算机视觉、计算机听觉、信号处理和统计)。
  • Accord.NET Extensions:高级图像处理和计算机视觉算法扩展。
  • AForge.NET:为计算机视觉和人工智能领域的开发者和研究人员提供的框架(包括图像处理、神经网络、遗传算法、机器学习、机器人科学)。
  • Deedle:处理探索性数据的数据帧和时序库,支持 C# 和 F#。
  • FsLab:数据科学和机器学习库的集合,支持 F# 和 .NET。
  • numl:包含最流行的监督学习和无监督学习算法,尽量减少创建预测模型时的冲突。
  • R Provider:将 R 语言包和函数封装为类型安全的类型提供程序供 F# 调用。
  • F# Data:F# 类型提供程序,访问 XML、JSON、CSV 和 HTML 文件(基于样例文档),以及 WorldBank 数据。


Markdown 处理(Markdown Processors)

  • MarkdownSharp:C# 实现的开源 Markdown 处理器,在 Stack Overflow 中使用。
  • F# Formatting:用于生成 F# 和 C# 项目文档的工具。该工具库的核心组件中包含了可扩展的 Markdown 解析器。
  • CommonMark.NET:CommonMark 规范的 C# 实现,用于将 Markdown 文档转换为 HTML。为最佳性能和可移植性进行了优化。


邮件(Mail)

  • FluentEmail:System.Net.Mail 的一个流式(Fluent)封装,支持 razor 模板引擎。
  • MailKit:完整的跨平台的邮件协议栈,包括 IMAP、POP3、SMTP,支持验证等特性。基于 MimeKit 构建。
  • MimeKit:跨平台 .NET MIME 创建和解析库,支持 S/MIME、PGP、TNEF 和 Unix mbox spools。
  • PreMailer.Net:一个 C# 开发库,将你的样式表嵌入到内置的 style 属性中,最大限度支持邮件客户端。


数学(Mathematics)

  • MathNet:Math.NET 是一个开源项目,旨在创建和维护涵盖基础数学在内的工具集,面向高级和日常需要使用此类功能的 .Net 开发人员。


多媒体(Media)

  • TagLib#:TagLib#(即 taglib-sharp)是一个读写媒体文件元数据的库,支持视频、音频和照片格式。


度量(Metrics)

  • C# StatsD Client:Etsy StatsD 服务器的 C# 客户端。
  • App Metrics:开源跨平台 .NET 报表度量开发库。


微框架(Micro Framework)

  • .NET Micro Framework Interpreter:Microsoft® .NET Micro Framework(NETMF)是一个在 Visual Studio 中提供为小型设备上编写嵌入式应用的框架。


杂项(Misc)

  • .NET Fiddle:在浏览器中编写、编译并运行 C# 代码。相当于 C# 版本的 JSFiddle。
  • AzureCrawler:从 Angular、Ember、Durandal 或任何 JavaScript 应用中获取 HTML 快照。
  • BitSharp:C# 比特币节点。
  • CSScript:CS-Script 是一个基于 CLR 的脚本系统,使用 C# 作为编程语言。CS-Script 目前针对微软的 CLR 实现(.NET 2.0/3.0/3.5/4.0/4.5)并完整支持 Mono。附带很多附加特性,比如脚本宿主。


  • CsvHelper:帮助读写 CSV 文件的开发库。


  • FluentValidation:一个小型的 .NET 校验库,使用流式接口和 lambda 表达式构建校验规则。
  • Humanizer:Humanizer 能够在 .NET 平台上满足所有针对字符串、枚举、日期、时间、时间范围、数字等类型数据的操作和显示要求。
  • LINQPad:一个 C#/VB/F# 的便签本,能够立即执行任何表达式、语句块或程序,带有富文本显示等有用的特性。同样可以让你使用 LINQ 进行交互性数据库查询。 [$](译者注:也有免费许可,但是功能受限)。
  • Polly:快捷便利的异常处理策略,例如 重试、始终重试、等待并重试或断路(Circuit Break)等行为。 (.NET 3.5、4.0、4.5、PCL、Xamarin)
  • Rant:Rant 程序文本生成 DSL(领域特定语言)。


  • ScriptCS:使用文本编辑器、nuget 和强大的 Roslyn 来编写 C# 应用!
  • EntityFramework-Plus:Entity Framework 扩展,提供工具类、Bulk 操作、批处理/批量更新、查询缓存/过滤器/Future、审计等功能。


MVVM

  • Caliburn.Micro:小型但功能强大的框架,可以用来给所有 XAML 平台创建应用。它对 MV* 模式的强大支持可以让你快速构建你的解决方案,与此同时不必牺牲代码质量和可测试能力。
  • MVVM Light Toolkit:该工具箱主要是用来加速创建和开发 MVVM 应用,适用于 WPF、Silverlight、Windows Store(RT)和 Windows Phone 平台。
  • Catel:Catel 是一个应用开发平台,主要着眼在 MVVM(WPF、Silverlight、Windows Phone 及 WinRT)以及 MVC(ASP.NET MVC)。Catel 的核心部分包含 IoC 容器、模型、校验、备忘录模式(memento)、消息中介(message mediator)、参数检查等。
  • UpdateControls:Update Controls 不需要你实现 INotifyPropertyChanged 接口或声明一个 DependencyProperty。可以将控件直接关联到 CLR 属性,这使得它完美贴合 MVVM 模式。
  • ReactiveUI:一个 .NET 下的 MVVM 框架,集成了反应性扩展框架(Rx),允许开发者使用 WPF、Windows Store Apps、WP8 或 Xamarin 创建优雅的、可测试的应用。
  • Okra App Framework:一个以 app 为中心的 Windows 8.1 MVVM 框架,融合依赖注入,包含一套完整的 Visual Studio MVVM 模板。
  • WPF Application Framework (WAF):一个轻量级的框架,能够帮助你创建结构优雅的 WPF 应用。支持你使用分层架构和 MVVM 模式。
  • MVVMCross:跨平台mvvm 移动开发框架,针对 WP7 和 WP8 的 WPF/Silverlight、Android 的 Mono、iOS 的 MonoTouch 以及 WPA8.1/Windows 8.1 商店应用的 Windows Universal 项目。它使用可移植类库(PCL)来支持可维护的跨平台 C# 原生应用。
  • Stylet:最小化 MVVM 框架(参考 Caliburn Micro),包含了良好的文档、高覆盖率的测试以及自带的 IoC 容器。
  • Gemini:类似 Visual Studio Shell 的 IDE 框架。基于 WPF、AvalonDock 和 Caliburn Micro 构建。


Office

  • ClosedXML:ClosedXML 能够让开发人员更便捷地创建 Excel 2007、2010 文件。
  • NPOI:该项目是 .NET 版本的 POI 项目,原始的 Java 版本位于http://poi.apache.org/ 。
  • EPPlus:EPPlus 是一个 .net 类库,用于读写 Open Office Xml 格式的 Excel 2007、2010 文件(xlsx)。
  • Open XML SDK:Open XML SDK 是一个开源库,用于处理 Open XML 文档(包括 DOCX、XLSX 和 PPTX)。


ORM

  • Entity Framework:对象关系映射器(ORM)框架,让 .NET 开发人员使用领域特定的对象来处理关系型数据。
  • BL Toolkit:.NET 平台的业务逻辑工具箱。
  • Dapper:一个超小型、快捷轻便的 ORM 框架。
  • Dapper Extensions:小型类库,对 Dapper 的功能进行补充,为你的简单传统 CLR 对象提供基础的 CRUD(Get、Insert、Update、Delete) 操作。
  • NHibernate:NHibernate 对象关系映射器(移植自 Java 平台的 Hibernate)。
  • Fluent NHibernate:便捷、无需使用 XML、编译安全、自动化、基于约定命名的 NHibernate 映射库。
  • FluentMigrator:.net 下的便捷的迁移框架。
  • ServiceStack.OrmLite:轻量、简单、快速、基于命名约定的 POCO ORM。


  • Massive:小型、令人愉悦的数据访问工具,始终关爱你直到永远。


  • LINQ to DB:最快的 LINQ 数据库访问库,简单、轻量、快速、类型安全,在你的对象(POCO)和数据库之间搭建桥梁。


包管理(Package Management)

  • NuGet:.NET 包管理器。
  • MyGet:为 NuGet、NPM、Bower 和 VSIX 提供程序包仓库宿主,同样提供 CI 服务。
  • Paket:.NET 的一个包依赖管理器,支持 NuGet 包和 GitHub 仓库。


PDF

  • ITextSharp:iText 是一个PDF库,用于创建、修改、检查和维护 Portable Document Format(PDF)格式的文档 [$] 开源软件免费


Profiler

  • MiniProfiler:一个简单但有效的小型 profiler,用于 ASP.NET 网站。
  • Glimpse:开源 web 诊断平台。


推送通知(Push Notifications)

  • PushSharp:服务器端的推送通知类库,支持 iOS、OSX、Android、Chrome、Windows Phone、Windows 8、Backberry 和 Amazon 设备。


队列(Queue)

  • NServiceBus:.NET 平台下最流行的服务总线。
  • RabbitMQ.NET:AMQP 客户端的 C# 实现,通过 WCF 绑定到已有的 AMQP 服务。
  • NetMQ:NetMQ 是 ZeroMQ 纯 C# 移植版本。
  • MassTransit:MassTransit 是一个精简服务总线(lean service bus)的实现,使用 .NET Framework 来构建松耦合应用程序。
  • Rebus:Rebus 是一个 .NET 平台的精简服务总线和 NServiceBus、MassTransit类似,只不过更加精简。
  • EasyNetQ:易于使用的 RabbitMQ .NET API。
  • Warewolf ESB:易于使用的服务总线和微服务平台,可以在一个可视化 IDE 中便捷的创建应用和服务。
  • CAP:用于处理分布式事务的 .Net 标准开发库。支持 EventBus,轻量级、高效且易于使用。


响应式编程(Reactive Programming)

  • Rx.NET:Reactive Extensions (Rx)库使用观察者序列(observable sequences)和 LINQ 风格的查询操作,来进行异步和基于事件的程序开发。
  • Dynamic Data:用于集合的响应式编程框架。


计划调度(Scheduling)

  • QuartzNet:Quartz 是 .NET 平台的企业级调度器。
  • Hangfire:在 ASP.NET 应用中,超简单地实现自主引导(fire-and-forget)、延迟和周期重复任务。高级版需要收费。
  • Hangfire.Redis.StackExchange:Hangfire的redis扩展库,基于StackExchange.Redis的开源实现。
  • Azure WebJobs:Azure WebJobs 是Azure中App Services一个附属服务,为Azure中运行的Web App提供后台运行环境(支持多种语言编写Job),有.NET的SDK开源,并且可以直接添加扩展也开源。


SDK 和 API 客户端(SDK and API Clients)

  • AWS SDK:AWS SDK for .NET 让 .NET 开发者可以便捷地操作 Amazon Web Services。
  • Azure PowerShell:一组 PowerShell 命令行,让开发者和管理员开发、部署和管理 Microsoft Azure 应用。
  • Octokit.NET:.NET 平台下的 GitHub API 客户端库。
  • DropNet:Dropbox API 客户端开发库。


搜索(Search)

  • Elasticsearch .NET:Elasticsearch.Net & NEST。
  • PlainElastic.Net:ElasticSearch 的一个简单的 .Net 客户端。
  • SolrNet:.Net 平台下的 Solr 客户端。
  • Lucene.net:Lucene.Net 是 Lucene 搜索引擎库的移植,使用 C# 编写,面向 .NET 环境的用户。


序列化(Serialization)

  • Protobuf.NET:Protocol buffers 是 Google 使用的二进制序列化格式,在 Google 数据通讯中大量使用。
  • Json.NET:.NET 平台下流行的、高性能 JSON 框架。
  • ServiceStack.Text:在 servicestack.net 中使用的 JSON、JSV、CSV 文本序列化器。
  • Msgpack-Cli:MessagePack 的 CLI 实现。
  • Jil:.NET 平台下快速的 JSON 序列化器,基于 Sigil (在 StackOverflow 中使用)。
  • ProtoBuf:根据 .proto 规范,为 protocol buffer 序列化内容生成 C# 代码。
  • F# Data:F# 类型提供程序,访问 XML、JSON、CSV 和 HTML 文件(基于样例文档),以及访问 WorldBank 数据。
  • Bond:跨平台框架,用于处理系统化(schematized)数据。支持跨平台的序列化、反序列化,以及强大的通用机制来高效处理数据。


状态机(State machines)

  • Stateless:直接使用 .NET 代码创建一个状态机和轻量的基于状态机的工作流。
  • Automatonymous:.Net 平台的状态机库,允许你编写流式API风格的状态机。

静态网站生成(Static Site Generators)

  • Pretzel:.NET 平台下的网站生成工具(包含后续的一些功能)。
  • Sandra.Snow:.NET 平台的静态网站生成工具,借鉴 Jekyll。
  • Wyam:简单易用、高度模块化、拥有强大配置能力的静态网站生成工具。


风格指南(Style Guide)

  • C# Style Guide:StackOverflow 上的C#风格指南 Q & A。
  • C# Coding Conventions:MSDN 官方的 C# 代码约定。


模板引擎(Template Engine)

  • RazorEngine:基于微软 Razor 解析器引擎的开源模板引擎。
  • Nustache:无逻辑模板的开源库。
  • DotLiquid:Ruby Liquid 模板语言的 C# 移植版本。


测试(Testing)

  • AutoFixture:AutoFixture 是一个用于 .NET 的开源框架,用于简化单元测试中的设置(Arrange)阶段。
  • FakeItEasy:.NET 平台的一个简单的 mocking 库。
  • Fluent Assertions:一组 .NET 扩展方法,可以让你更自然地指定 TDD 或 BDD 风格测试的期望值。
  • Fuchu:F# 的单元测试库,通过 tests-as-values 机制让你更容易创建领域特定语言(DSL)。
  • Machine.Specifications:Machine.Specifications (MSpec)是一个上下文、规范框架,忽略了语言本身的干扰,简化了测试。
  • Moq:.NET 平台下最流行和友好的 mocking 框架。
  • NBuilder:快速创建测试对象。
  • NSubstitute:一个友好的 .NET mocking 框架。
  • NUnit
  • Rhino Mocks:.NET 平台的动态 Mocking 框架。
  • Shouldly:Shouldly 是一个断言(assertion)框架,主要功能是在断言失败时,给出简单明了并且友好的错误信息。
  • SpecFlow:将业务需求绑定到 .Net 代码。
  • xUnit:xUnit.net 是一个 .NET 平台下免费、开源、专注社区的单元测试框架。
  • BenchmarkDotNet:功能强大的基础测试 .NET 开发库。


交易(Trading)

  • Lean:Lean 引擎是一个开源的,完全由 C# 托管代码编写的交易算法引擎,用于桌面和云端。
  • StockSharp:交易和算法交易(algorithmic trading)的开源平台(用于股票市场、外汇市场、比特币和期权交易)。


Visual Studio 插件(Visual Studio Plugins)

  • Web Essentials:Web Essentials 为 Visual Stduio 扩展了大量的特性,提供了 web 开发人员盼望多年的功能。
  • VsVIM:Visual Studio 中的 VIM。
  • Nuget Package Manager:NuGet 是微软开发平台(包括 .NET)的包管理器。
  • SideWaffle:Visual Studio 2012、2013 中的一组项目模板集合,让 web 开发人员更加轻松。


  • Resharper:Visual Studio 开发人员生产力工具 。


  • Refactoring Essentials:开源 C# 和 VB.NET 重构扩展,包括代码最佳实践分析器。


  • CodeContracts:.NET CodeContracts 工具源代码。


  • Git Diff Margin:在 Visual Studio 滚动条区域实时显示当前文件在 Git 上的差异。


  • Productivity Power Tools:一组 Visual Studio 专业版(及更高版本)的扩展,用于提高开发人员的生产力。


Web 框架(Web Frameworks)

  • ASP.NET MVC:ASP.NET 是一个免费的 web 框架,用于创建优秀的 web 站点和应用程序。
  • FubuMVC:.NET 平台下前端控制器(front-controller)风格的 MVC 框架。


  • NancyFx:在 .Net 和 Mono 平台上创建 HTTP 服务的一个轻量级、非正式的框架。


  • IISNode:在 IIS 中宿主 NodeJS 应用程序。
  • Suave.IO:一个框架/库/web 服务器,当你看到你使用优美的 F# 编写的代码提前完成了你的项目时,它的存在会让你喜极而泣。(一个用 F# 编写 Web 应用的框架和服务器端)


Web 服务器(Web Servers)

  • EmbedIO:基于 Mono 编写的跨平台的 Web 服务器。
  • XSP:Mono 中的 ASP.NET 宿主服务器。该模块包含了 Apache 模块、FastCGI 模块,可以用于挂载到其它 web 服务器或是作为一个测试用的独立服务器存在(类似微软的 Cassini 项目)。
  • Jexus:强劲、坚固、免费、易用的Linux ASP.NET服务器。


WebSocket

  • SignalR:ASP.NET 库,开发者可以通过它在 web 应用程序中非常简单地实现实时功能。
  • Fleck:Fleck 是一个 C# 实现的 WebSocket 服务器。分支自 Nugget 项目。
  • Websocket-Sharp:WebSocket 协议的 C# 实现,包含客户端和服务器端。
  • XSockets:提供了一组工具,可以在微软 .NET 等平台上构建一个实时应用程序。
  • WebSocket4NET:.NET 2.0+、Xamarin、Mono、Silverlight、Windows Phone 以及 WinRT 下的 WebSocket 客户端。
  • SuperSocket:一个轻量级, 跨平台而且可扩展的 .Net/Mono Socket 服务器程序框架。


Windows 服务(Windows Services)

  • TopShelf:一个简单的服务宿主框架,使用 .NET 构建 Windows 服务。


通讯框架(Communication Frameworks)

  • DotNetty:一个快速开发高性能、高可靠性的非阻塞的事件驱动网络应用框架。
  • Helios:一套高性能的Socket通信中间件。


  • enode: 一个用来开发DDD、CQRS、EDA 以及事件驱动应用程序的框架。


其他列表(Other Lists)

  • .NET-libraries-that-make-your-life-easier:开源的 .NET 库,让你的生活更加轻松。
  • awesome-LINQ:一组精心挑选的超棒的 LINQ 类库、工具等。


看完本文有收获?请转发分享给更多人!!!欢迎大家点赞,留言讨论,喜欢这篇文章可以分享给更多人,关注我每天更新分享有关程序员、科技、编程之类的文章!!!爱你们,,么么哒,,让我们一起愉快的玩耍把!!!

家好,我是Echa。

单点登录(Single Sign On),简称为 SSO,是目前比较流行的企业业务整合的解决方案之一。SSO的定义是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统(例如淘宝、天猫、支付宝、阿里巴巴之间的关系)。简而言之,多个系统,统一登陆。

单点登录主要强调的是登录以后,各个系统间数据共享问题。

统一认证授权方式实现单点登录SSO

在日常生活中,很多人由于忘记某些网站的登录密码而烦恼,因为大多数用户都要记忆不少于10个用户名和相应密码。为了便于记忆,很多人都在不同的站点使用相同的用户名和密码,虽然这样可以减少负担,但是同时也降低了安全性,而且使用不同的站点同样要进行多次登录。同时,随着信息化飞速发展,大型企业和政府部门等都开始使用电子系统进行办公,而且整个办公系统由多个不同的子系统构成,这个时候有一个SSO 单点登录就显得尤为重要了。

阿里云ram单点登录架构图

用户只需要登录一次,就可以访问多个系统,不需要记忆多个口令密码。单点登录使用户可以快速访问网络,从而提高工作效率,同时也能帮助提高系统的安全性。

云sso实现多账号单点登录

使用单点登录SSO的好处具体如下:

  • 方便用户:用户使用应用系统时,能够一次登录,多次使用。用户不再需要每次输入用户名称和用户密码,也不需要牢记多套用户名称和用户密码。单点登录平台能够改善用户使用应用系统的体验。
  • 方便管理员:系统管理员只需要维护一套统一的用户账号,方便、简单。相比之下,系统管理员以前需要管理很多套的用户账号。每一个应用系统就有一套用户账号,不仅给管理上带来不方便,而且,也容易出现管理漏洞。
  • 简化应用系统开发: 开发新的应用系统时,可以直接使用单点登录平台的用户认证服务,简化开发流程。单点登录平台通过提供统一的认证平台,实现单点登录。因此,应用系统并不需要开发用户认证程序。

借此机会,今天小编给大家推荐13个开源免费单点登录SSO系统,希望对粉丝们有所帮助。祝粉丝们的每一个梦想都能放飞,每一个心愿都能实现,祝福大家万事如意!下面小编一一详细介绍这13个开源免费单点登录SSO系统,喜欢的小伙伴们点个赞和收藏。

全文大纲

  1. sa-token - 一个轻量级 Java 权限认证框架,让鉴权变得简单、优雅!
  2. authelia - 是一个免费、开源、可私有化部署的单点登录(SSO)项目
  3. BootstrapAdmin - 基于 RBAC 的 Net7 后台管理框架,权限管理,前后台分离,支持多站点单点登录,兼容所有主流浏览器
  4. JustAuth - 如你所见,它仅仅是一个第三方授权登录工具类库
  5. MaxKey - 单点登录认证系统
  6. jap - 一款开源的登录认证中间件,基于模块化设计,为所有需要登录认证的web应用提供一套标准的技术解决方案
  7. eiam - 数字身份管控平台
  8. CollectiveOAuth - 史上最全的整合第三方登录的开源库
  9. Netnr.Login - 第三方 OAuth2 授权登录管理
  10. keycloak - 是一个免费、开源身份认证和访问管理系统
  11. SD.IdentitySystem - 统一身份认证/权限管理/角色管理/菜单管理/SSO/License授权
  12. IdentityServer4 - 基于.NET 5+IdentityServer4+Vue+Sqlserver 的统一授权认证系统
  13. cas - 是一个开源的企业级单点登录系统

sa-token - 一个轻量级 Java 权限认证框架,让鉴权变得简单、优雅!

Github:https://github.com/dromara/sa-token



介绍

Sa-Token 是一个轻量级 Java 权限认证框架,让鉴权变得简单、优雅!主要解决:登录认证、权限认证、单点登录、OAuth2.0、分布式Session会话、微服务网关鉴权 等一系列权限相关问题。

功能模块

Sa-Token 目前主要五大功能模块:登录认证、权限认证、单点登录、OAuth2.0、微服务鉴权。

  • 登录认证 —— 单端登录、多端登录、同端互斥登录、七天内免登录
  • 权限认证 —— 权限认证、角色认证、会话二级认证
  • Session会话 —— 全端共享Session、单端独享Session、自定义Session
  • 踢人下线 —— 根据账号id踢人下线、根据Token值踢人下线
  • 账号封禁 —— 登录封禁、按照业务分类封禁、按照处罚阶梯封禁
  • 持久层扩展 —— 可集成Redis、Memcached等专业缓存中间件,重启数据不丢失
  • 分布式会话 —— 提供jwt集成、共享数据中心两种分布式会话方案
  • 微服务网关鉴权 —— 适配Gateway、ShenYu、Zuul等常见网关的路由拦截认证
  • 单点登录 —— 内置三种单点登录模式:无论是否跨域、是否共享Redis,都可以搞定
  • OAuth2.0认证 —— 轻松搭建 OAuth2.0 服务,支持openid模式
  • 二级认证 —— 在已登录的基础上再次认证,保证安全性
  • Basic认证 —— 一行代码接入 Http Basic 认证
  • 独立Redis —— 将权限缓存与业务缓存分离
  • 临时Token认证 —— 解决短时间的Token授权问题
  • 模拟他人账号 —— 实时操作任意用户状态数据
  • 临时身份切换 —— 将会话身份临时切换为其它账号
  • 前后台分离 —— APP、小程序等不支持Cookie的终端
  • 同端互斥登录 —— 像QQ一样手机电脑同时在线,但是两个手机上互斥登录
  • 多账号认证体系 —— 比如一个商城项目的user表和admin表分开鉴权
  • Token风格定制 —— 内置六种Token风格,还可:自定义Token生成策略、自定义Token前缀
  • 注解式鉴权 —— 优雅的将鉴权与业务代码分离
  • 路由拦截式鉴权 —— 根据路由拦截鉴权,可适配restful模式
  • 自动续签 —— 提供两种Token过期策略,灵活搭配使用,还可自动续签
  • 会话治理 —— 提供方便灵活的会话查询接口
  • 记住我模式 —— 适配[记住我]模式,重启浏览器免验证
  • 密码加密 —— 提供密码加密模块,可快速MD5、SHA1、SHA256、AES、RSA加密
  • 全局侦听器 —— 在用户登陆、注销、被踢下线等关键性操作时进行一些AOP操作
  • 开箱即用 —— 提供SpringMVC、WebFlux等常见web框架starter集成包,真正的开箱即用

Sa-Token 功能结构图

authelia - 是一个免费、开源、可私有化部署的单点登录(SSO)项目

Github:https://github.com/authelia/authelia



介绍

Authelia是一个免费、开源、可私有化部署的单点登录(SSO)项目。它具有时尚的登录窗口,支持一次性密码设置、通知推送等功能。

Authelia可以独立安装,或者使用Docker、Kubernetes容器部署。

Authelia 架构图


Authelia 架构图

Authelia 登录案例截图


BootstrapAdmin - 基于 RBAC 的 Net7 后台管理框架,权限管理,前后台分离,支持多站点单点登录,兼容所有主流浏览器

Github:https://github.com/ArgoZhang/BootstrapAdmin


介绍

一直需要一款后台管理系统,但是网上很多开源项目都是 Java 开发的,本人是 NET 平台的对 Java 一窍不通,C#版本的本来就少而且还没有合适的。于是决定自己开发一套后台管理系统。由于前台采用 Bootstrap 布局样式,所以就叫做 BootstrapAdmin

本系统可以用于所有的 Web 应用程序,目前版本已经升级到 NET CORE 具备跨平台能力。数据库方面同时支持多种数据库,详细列表见后面数据库的详细列表,切换数据源仅需更改配置文件无需重启应用程序,配置简单灵活。

UI 前端使用流行的 Bootstrap 框架布局对移动设备的兼容性非常好,自适应目前市场几乎所有终端设备。本系统还具备单一后台支持多前台的特色,提供 单点登录(SSO) 的能力。

使用 NET Core + Bootstrap + PetaPoco + HTML 5 + jQuery 构建的后台管理平台

基于 RBAC 的 Net7 后台管理框架,权限管理,前后台分离,支持多站点单点登录,兼容所有主流浏览器,内置微信、支付宝、QQ等多种登录方式,内置多种样式,可切换至 Blazor 多 Tabs 模式,权限控制细化到网页内任意元素(按钮、表格、文本框等等)

主要功能

  • 通过配置与前台网站集成
  • 构建前台系统分层级菜单
  • 提供单一后台支持多前台应用配置
  • 提供单点登录
  • 集成系统认证授权模块
  • 提供角色,部门,用户,菜单,前台应用程序授权
    角色对用户授权
    角色对菜单授权
    角色对部门授权
    角色对应用程序授权(多个前台应用共用一个后台权限管理系统)
    部门对用户授权
  • 提供字典表用于前台网站个性化配置
  • 完全响应式布局(支持电脑、平板、手机等所有主流设备)
  • 内置多数据源支持,配置简单立即生效无需重启
  • 内置数据内存缓存机制,页面快速响应
  • 内置数据 操作日志 与用户 登录日志
    跟踪记录用户
    登录主机地点 浏览器 操作系统 信息

优势

  • 前台系统不用编写登录、授权、认证模块;只负责编写业务模块即可
  • 后台系统无需任何二次开发,直接发布即可使用
  • 前台与后台系统分离,分别为不同的系统(域名可独立)
  • 可扩展为多租户应用

系统截图







JustAuth - 如你所见,它仅仅是一个第三方授权登录的工具类库

Github:https://github.com/justauth/JustAuth

介绍

小而全而美的第三方登录开源组件。目前已支持Github、Gitee、微博、钉钉、百度、Coding、腾讯云开发者平台、OSChina、支付宝、QQ、微信、淘宝、Google、Facebook、抖音、领英、小米、微软、、Teambition、StackOverflow、Pinterest、人人、华为、企业微信、酷家乐、Gitlab、美团、饿了么、推特、飞书、京东、阿里云、喜马拉雅、Amazon、Slack和 Line 等第三方平台的授权登录。

OAuth 2 流程

OAuth 2 流程

JustAuth 集成第三方登录

JustAuth


MaxKey - 单点登录认证系统

Github:https://github.com/dromara/MaxKey

介绍

MaxKey单点登录认证系统是业界领先的IAM-IDaas身份管理和认证产品,支持OAuth2.x、OpenID Connect、SAML2.0、JWT、CAS、SCIM等SSO标准协议,基于RBAC统一权限控制,实现用户生命周期管理,开源、安全、自主可控。

产品特性

  • 标准协议

序号

协议

支持

1.1

OAuth 2.x/OpenID Connect

1.2

SAML 2.0

1.3

JWT

1.4

CAS

1.5

SCIM 2.0

1.6

FormBased

1.7

TokenBased(Post/Cookie)

1.8

ExtendApi

1.9

EXT

  • 登录支持

序号

登录方式

支持

2.1

动态验证码

字母/数字/算术

2.2

双因素认证

短信/时间令牌/邮件

2.3

短信认证

腾讯云短信/阿里云短信/网易云信

2.4

时间令牌

Google/Microsoft Authenticator/FreeOTP/支持TOTP或者HOTP

2.5

域认证

Kerberos/SPNEGO/AD域

2.6

LDAP

OpenLDAP/ActiveDirectory/标准LDAP服务器

2.7

社交账号

微信/QQ/微博/钉钉/Google/Facebook/其他

2.8

扫码登录

企业微信/钉钉/飞书扫码登录

  • 提供标准的认证接口以便于其他应用集成SSO,安全的移动接入,安全的API、第三方认证和互联网认证的整合。
  • 简化微软Active Directory域控、标准LDAP服务器机构和账号管理,密码自助服务重置密码。
  • IDaas多租户功能,支持集团下多企业独立管理或企业下不同部门数据隔离的,降低运维成本。
  • 认证中心具有平台无关性、环境多样性,支持Web、手机、移动设备等, 如Apple iOS,Andriod等,将认证能力从B/S到移动应用全面覆盖。
  • 配置化的密码策略、访问策略;支持Ip2region或GeoLite2地理库精准IP定位 ,强大安全审计,对用户全生命周期审计、访问行为记录追溯审计、安全合规审计、安全风险预警。
  • 基于Java EE平台,微服务架构,采用Spring、MySQL、Tomcat、Redis、MQ等开源技术,扩展性强。
  • 开源、安全、自主可控。

系统截图

jap - 一款开源的登录认证中间件,基于模块化设计,为所有需要登录认证的web应用提供一套标准的技术解决方案

Github:https://github.com/fujieid/jap

介绍

JustAuthPlus(以下简称"JAP")是一款开源的登录认证中间件,基于模块化设计,为所有需要登录认证的 WEB 应用提供一套标准的技术解决方案,开发者可以基于 JAP 适配绝大多数的 WEB 系统(自有系统、联邦协议),就像集成 JustAuth 一样,简单方便。

特性

  • 易用性:JAP 的 API 沿袭 JustAuth 的简单性,做到了开箱即用的程度。JAP 高度抽象各种登录场景,提供了多套简单实用的 API,极大程度的降低了开发者的学习成本和使用成本
  • 全面性:JAP 全量适配 JustAuth 支持的第三方平台,实现第三方登录。同时也支持所有基于标准OAuth2.0 协议或者 OIDC 协议或者 SAML 协议的应用、系统,同时 JAP 还提供不同语言版本的项目 SDK,适配多种研发场景
  • 模块化:JAP 基于模块化设计开发,针对每一种登录场景,比如账号密码、OAuth、OIDC等,都单独提供了独有的模块化解决方案
  • 标准化:JAP 和业务完全解耦,将登录认证相关的逻辑抽象出一套标准的技术解决方案,针对每一种业务场景,比如用户登录、验证密码、创建并绑定第三方系统的账号等,都提供了一套标准的策略或者接口,开发者可以基于 JAP,灵活并方便的完成相关业务逻辑的开发和适配
  • 通用性:JAP 不仅可以用到第三方登录、OAuth授权、OIDC认证等业务场景,还能适配开发者现有的业务系统的普通账号密码的登录场景,基本将所有登录相关的业务场景都已经涵盖。针对 WEB 应用,JAP 将提供满足各种不同登录场景的解决方案(和开发语言无关)

功能介绍

应用场景

  • 标准规范:新项目立项,你们需要研发一套包含登录、认证的系统,并且需要一套标准的、灵活的、功能全面的登录认证功能。
  • 需求灵活:现有登录模块为自研,但是新一轮的技术规划中,你们想将登录认证模块重构,以更加灵活的架构适应后面的新需求,比如:集成 MFA 登录、集成 OAuth 登录、SAML登录等。
  • 力求省事:你们的项目太多(或者是开发语言较多,比如:Java、Python、Node 等),每个项目都需要登录认证模块,想解决这种重复劳动的问题,使研发人员有更多的时间和精力投入到业务开发中,提高研发产能和研发效率

eiam - 数字身份管控平台

Github:https://github.com/topiam/eiam

介绍

业界首个基于 SpringBoot3 开源IDaas/IAM平台,用于管理企业内员工账号、权限、身份认证、应用访问,帮助整合部署在本地或云端的内部办公系统、业务系统及三方 SaaS 系统的所有身份,实现一个账号打通所有应用的服务。支持OAuth2.x、OIDC、SAML2.0、JWT、CAS等SSO标准协议。

系统架构

核心特性

  • 提供统一组织信息管理,多维度建立对应关系,实现在一个平台对企业人员、组织架构、应用信息的高效统一管理。
  • 支持钉钉、飞书、企业微信等身份源集成能力,实现系统和企业OA平台数据联动,以用户为管理基点,结合入职、离职、调岗、兼职等人事事件,关联其相关应用权限变化而变化,保证应用访问权限的安全控制。
  • 支持多因素认证,行为验证码、社交认证,融合认证等机制,保证用户认证安全可靠。
  • 支持微信、微博、QQ等社交认证集成,使企业具有快速纳入互联网化认证能力。
  • 支持 SAML2OAuth2OIDCCAS,表单代填等认证协议及机制,实现单点登录功能,预配置大量 SaaS 应用及传统应用模板,开箱即用。
  • 完善的安全审计,详尽记录每一次用户行为,使每一步操作有据可循,实时记录企业信息安全状况,精准识别企业异常访问和潜在威胁的源头。
  • 提供标准RESTSCIM2.0接口轻松完成机构用户同步,实现企业对于账号生命周期的精细化管理。
  • 开源、安全、自主可控。


功能描述

功能模块

功能项

功能描述

账户管理

组织与用户

支持组织与用户维护。


用户组管理

支持用户组维护。


身份源管理

支持通过钉钉、飞书等途径同步用户和组织信息到系统。

认证管理

认证提供商

支持配置多种认证源,用户可通过不同方式登录门户。

应用管理

OIDC协议应用

支持通过OIDC协议进行应用SSO。


表单代填应用

支持表单代填方式进行应用SSO。


JWT协议应用

支持JWT协议进行应用SSO。

行为审计

用户行为

记录企业用户相关操作行为记录。


管理员行为

记录管理员相关操作记录。

安全设置

通用安全

支持通用安全配置,及安全防御策略。


密码策略

支持配置用户密码全局规则策略。


系统管理员

负责维护系统用户配置等。

系统设置

消息设置

支持配置维护邮件模版、邮件服务、短信服务。


IP地理库

支持配置IP地理库,实现精准IP定位。


存储配置

支持配置云存储服务,如阿里云、腾讯云、MinIO等。

系统监控

会话管理

支持查看系统登录会话,支持回话下线。

CollectiveOAuth - 史上最全的整合第三方登录的开源库

Gitee:https://gitee.com/rthinking/CollectiveOAuth

介绍

.Net平台(C#) 史上最全的整合第三方登录的开源库 => 环境支持 .NET Framework 4.5 ~ 4.6.2 和 .NetCore 3.1。目前已包含Github、Gitee、钉钉、百度、支付宝、微信、企业微信、腾讯云开发者平台(Coding)、OSChina、微博、QQ、Google、Facebook、抖音、领英、小米、微软、、Teambition、StackOverflow、Pinterest、人人、华为、酷家乐、Gitlab、美团、饿了么、等第三方平台的授权登录。以下平台正在接入中: 推特、淘宝

Netnr.Login - 第三方 OAuth2 授权登录管理

Gitee:https://gitee.com/netnr/Netnr.Login


介绍

第三方 OAuth2 授权登录,QQ、微信开放平台(Weixin)、微信公众平台(WeixinMP)、微博(Weibo)、淘宝(Taobao)、支付宝(Alipay)、钉钉(DingTalk)、飞书(Feishu)、码云(Gitee)、GitHub、微软(Microsoft )、StackOverflow、谷歌(Google)

keycloak - 是一个免费、开源身份认证和访问管理系统

Github:https://github.com/keycloak/keycloak


介绍

Keycloak是一个免费、开源身份认证和访问管理系统,支持高度可配置的单点登录(SSO)功能。

Keycloak内置支持连接到现有的LDAP或Active Directory服务器。也可以自己实现与关系数据库中的用户数据对接。

Keycloak支持许多目前比较流行认证标准协议,如:OpenID Connect,OAuth 2.0、SAML 2.0等。

SD.IdentitySystem - 统一身份认证/权限管理/角色管理/菜单管理/SSO/License授权

Gitee:https://gitee.com/lishilei0523/SD.IdentitySystem

介绍

ASP.NET/WCF/Windows/Angular/统一身份认证/权限管理/角色管理/菜单管理/SSO/License授权

目的

  • 作为一个使用SD.Framework框架开发的项目样板;
  • 探索基于ASP.NET Core MVC的前端架构;
  • 探索基于WPF MVVM的前端架构;
  • 探索Angular + NG-ZORRO前端架构;
  • 做一套统一身份认证系统;

系统截图

IdentityServer4 - 基于.NET 5+IdentityServer4+Vue+Sqlserver 的统一授权认证系统

Gitee :https://gitee.com/wangqianlong1993/IdentityServer4

介绍

在学习授权认证的过程中,发现了IdentityServer4框架。官方的例程大多是基于本地或者内存配置。没有一个完整的后台界面。github上有一些优秀的管理系统,大多都是基于MPA开发。于是基于.NET5和vue开发了这一套授权管理系统。

系统截图

cas - 是一个开源的企业级单点登录系统

Github:https://github.com/apereo/cas


介绍

Apereo CAS是一个开源的企业级单点登录系统,是CAS项目的一部分。

Apereo CAS开箱即用,并且提供多种协议支持,如:CAS(v1,v2和v3)、SAML(1.0和2.0)、OAuth(v2)、OpenID、OpenID Connect等。

Apereo CAS支持使用多种身份证方法,包括:JAAS、LDAP、RDBMS、Radius、JWT等。

Apereo CAS支持通过Due、YubiKey、RSA、Google Authenticator、U2F、WebAuten等进行身份验证。

架构图

最后

一行代码,可能会创造出下一个让人惊叹的产品;
一个创新,可能会开启一个全新的科技时代;
一份初心,可能会影响到无数人的生活;
无论是在大公司工作,还是在小团队奋斗;
无论是资深的程序员,还是刚刚入行的新手;
每个人的代码,都有力量改变世界。

创作不易,喜欢的老铁们加个关注,点个赞,打个赏,后面会不定期更新干货和技术相关的资讯,速速收藏,谢谢!你们的一个小小举动就是对小编的认可,更是创作的动力。

创作文章的初心是:沉淀、分享和利他。既想写给现在的你,也想贪心写给 10 年、20 年后的工程师们,现在的你站在浪潮之巅,面对魔幻的互联网世界,很容易把一条河流看成整片大海。未来的读者已经知道了这段技术的发展历史,但难免会忽略一些细节。如果未来的工程师们真的创造出了时间旅行机器,可以让你回到现在。那么小编的创作就是你和当年工程师们的接头暗号,你能感知到他们在这个时代的键盘上留下的余温。

#文章首发挑战赛#

eb开发中有一些常用工具,下面简单整理下:

Beyond Compare 用来文件对比,很好用。

动软代码生成器 代码生成工具,比较好用。

fiddler 既可以用来监视请求,还可以用来做代理服务器,很好用。配合修改hosts使用,更强大。

ILSpy .net反编译工具,当然还有很多其他工具,这个挺好用的。

flashfxp.exe ftp工具,用来连接服务器检查文件,挺好用的。

Q-Dir_Portable_x64 多窗口工具,同时查看多个文件夹,比较方便好用。

Radmin 连接服务器的工具,挺有用,但是个人感觉不怎么好用,主要不稳定。

PicPick 取色器,测量挺好用的辅助工具。

NotePad++ 编辑文本文件比较方便,这个有相当一部分更好用的工具。

谷歌开发者工具 快捷键F12,调试,页面修改等等很强大的工具,浏览器都有这个开发者工具的,google和火狐的比较好用。ie的有时候很强大!

ieTest 可以测试ie浏览器的兼容性,不过以后会用的越来越少了吧,ie6,ie7有很多兼容性问题。

Regex Match Tracer 正则表达式工具,本地使用方便。

google在线翻译 英语不好,只能使用这个工具了。

有道词典 本地离线翻译常使用该工具。

wcfStorm wcf测试工具,没用过,但是听说好用。

Web Developer 不怎么用,做手机网页开发,可能常用。

poster 火狐的一个发起请求(post请求,get请求等)的工具,个人平时都是用的网页版本,直接百度post工具在线使用的。比较有用,这个工具用来检查错误,做测试都很好用。

SQL Profiler 监视调试存储过程,监视sql性能,这个工具太强大,想要使用好要下功夫,不怎么会用。

json在线格式化工具 个人经常直接搜索后使用,可以格式化json。

Xenu死链接检查工具,个人不会用。

BrowserShots浏览器兼容性测试工具,个人也会用。

Pingdom Tools帮助开发者找出在不同的互联网连接的速度,并找出速度慢的瓶颈。 还不会用。

---------------------------------------------------------

visualStudio插件

AnkhSVN 一个svn插件个人感觉比较好用,直接在vs中提交修改的代码,直接进行change对比,比较方便。

CodeMaid 一个括号成对插件,顺手安装的,js代码长的时候,可以使用感觉比较好用。

Editor Guideline 可以在代码前产生一条闭合线,后台代码写的比较长,嵌套判断比较多时,感觉好用。

Highlight 是一个高亮显示插件,双击可以显示相同的单词,有人说低手才用,好吧,个人感觉还是很好用。

Javascript Parser 是一个检查js错误的插件,比较好用,但是如果是它不支持的语法,它也会报错,忽略即可,当然你可以把代码修改的更规范点。

jQuery Code Snippets jquery智能提示,看个人需求,有的人可能不喜欢。

NuGet程序包管理器 没怎么学会使用,不过用来下载dll插件还是很给力的。

------------------------------------------------------------------

命行工具

运行-》mstsc 调用远程桌面快捷键。

ping ip地址或者域名,获取域名IP地址,或者测试网络是否通畅,后一句不知道是否合理。

netsh 查看或更改本地网络配置情况,要配合其他命令使用,可以重置网络配置。

winver 弹出一个窗口显示版本信息(内存大小、系统版本、补丁版本、计算机名)

telnet ip 端口 远和登陆服务器,默认端口为23,领导说用来测试网络的,这个不熟悉。

services.msc 本地服务设置,经常需要使用这个命令操作服务。

perfmon.msc 计算机性能监测程序,高手会用这个东西。

eventvwr 事件查看器,可以用来排查程序错误,通过应用程序日志,可以看到程序出错原因。

F2 重命名

f4修改

Ctrl+F 查找

Ctrl+Tab 在选项卡上向前移动

Windows键+D 切换到桌面

windows键+E打开文件管理器

有人提供的工具:

再下来就是会使用百度,google,博客园这些工具了。

水平有限,个人简单整理,请大家指出功能强大,但是没被指出的工具,我修改下文章,方便大家查找使用。