Wednesday, February 9, 2022

V2EX - 技术

V2EX - 技术


elk-auth-casdoor: 基于 casdoor 的 ELK 开源登录认证解决方案

Posted: 09 Feb 2022 04:39 AM PST

前言

ELK 的一大缺点就是这东西最初是没有登录机制的,只要拿到了 url 地址,kibana 看板谁都可以访问一下。后来 ELK 自带了一套 xpack 进行登录认证,可是除了账户名密码登录这种最原始的方法,剩下的高级功能,比如 oauth, oidc, ldap ,统统都是收费的.....总不能给每个人都专门搞一个 kibana 账户名密码吧......

所以呢,这里有一个基于 casdoor 的 elk 鉴权解决方案,不要钱,开源的,还有人维护呢~。Casdoor 是一个基于 OAuth 2.0 / OIDC 的 UI 优先集中认证 / 单点登录 (SSO) 平台,而 casdoor/elk-auth-casdoor 这套解决方案,则是一个反向代理,他可以拦截所有未经登录的前往 elk 的 http 访问流量,并且引导未登录用户进行登录,而且这个反向代理对已登录用户是完全透明的。

仓库地址 https://github.com/casdoor/elk-auth-casdoor

QQ 群:645200447

如果您有更多相关的特殊需求可以加群,我们会有专人对接~ (可以联系 ComradeProgrammer )

casdoor 是什么

Casdoor 是一个基于 OAuth 2.0 / OIDC 的 UI 优先集中认证 / 单点登录 (SSO) 平台,简单点说,就是 Casdoor 可以帮你解决 用户管理 的难题,你无需开发用户登录注册等与用户鉴权相关的一系列功能,只需几个步骤,简单配置,与你的主应用配合,便可完全托管你的用户模块,简单省心,功能强大。

仓库地址: https://github.com/casbin/casdoor

演示地址: https://door.casbin.com/

官网文档: https://casdoor.org/

QQ 群:645200447

Casdoor 还支持 ldap ,saml 等诸多功能.....

Casdoor 目前作为 Casbin 社区项目统一使用的鉴权平台,项目已开源,希望得到大家的一些建议和 Star~,我们会及时跟进反馈并改正问题哒

Casdoor 又有哪些特性?

  • 支持普通的账户密码注册登录,也支持各种常见的第三方认证,例如 GitHub 、Facebook 、Google 、Wechat 、QQ 、LinkedIn 等等,截止目前共 9 个平台,并在不断听取用户建议对更多的平台提供支持。
  • 管理方便。Casdoor 内部将模块分为了 5 大类,Organization 、User 、Application 、Token 和 Provider 。可以同时接入多个组织,组织下有不同应用,用户可以通过应用或组织分类,单独管理任何组织、应用或用户的 Token 令牌,轻松管理复杂系统,目前已部署在 Casbin 社区各种系统当作鉴权平台。
  • 自定义程度高。Casdoor 可以随意修改登录方式,例如是否允许密码或第三方登录,自定义应用的注册项数量,是否启用两步验证,以及是否允许各个 Provider 登录、注册等等,高度可插拔。
  • 具备 Swagger API 文档。清晰的 API 介绍,无需阅读源代码即可直接方便调用各个 API 接口,提供定制化功能。
  • 前后端分离架构,部署简单。作为统一认证平台,除了性能,稳定性,新特性之外,易用性也是考量的重要标准,Casdoor 后端使用 Golang 语言开发,前端使用 React.js 框架,使用者只需启动后端服务,并将前端工程文件打包,即可直接使用,操作简单,上手难度低。 ...

2022 年适合女生使用的拍照综合安卓机有哪些推荐?

Posted: 09 Feb 2022 04:36 AM PST

单以拍照能力作为选择的第一考量,2022 年适合女生使用的拍照综合安卓机有哪些推荐?

写的开源软件被剽窃了,竟然还发到 app store

Posted: 09 Feb 2022 04:21 AM PST

去年写了一个 redis 客户端,地址: https://github.com/cmushroom/redis-pro 今天去 app store 上搜了一下竟然被别人上架了: https://apps.apple.com/cn/app/redis-pro/id1576996455?mt=12 太意外了

继续推进我的游戏,搞了一些室内布局 demo 展示

Posted: 09 Feb 2022 04:20 AM PST

依然是低多边形风格的家具,写了第二个逛街的小 demo (像搭积木一样,没啥技术含量),家具买的 unitypackage ,自己制作的 glb

Demo 地址: https://o.jamfer.com/2.html

WASD 控制角色移动,鼠标左键调整视角,鼠标滚轮调整视野远近

目前的工作还是先做好室内室外的风格展示。未来的想法是想做一个线上多人的游戏,大家可以在游戏里置地,获得各式各样的家具,装饰自己的房子。再配合各种对战小游戏,增加趣味性。

上一次的 demo: https://o.jamfer.com/1.html

LaraveL 学习

Posted: 09 Feb 2022 04:12 AM PST

1. 公司使用 yii 框架的,没法子接触到 laravel
2. 感觉 laravel 有点难,上手。
3. 求老哥们来个路子

我的谷歌搜索结果为什么居中显示了?

Posted: 09 Feb 2022 03:45 AM PST

检查发现多了一个 div

<div id="rhs" class="TQc1id hSOk2e rhstc4"></div> 

手上有个特别好用的即时通讯系统,支持集群

Posted: 09 Feb 2022 03:45 AM PST

想知道做什么能用起来,我知道这个有点儿反人类,人家都是先有需求,我这先有系统。

有没有适合微型创业的需求,能用上我这个即时通讯系统

个人项目怎么改掉老是想把代码写的规整的毛病,严重拖慢我写代码的速度

Posted: 09 Feb 2022 03:43 AM PST

是不是换个面向过程的语言会好点啊,不介意可读性,代码多垃圾。只想多搞几个东西。

2022 年有没有简单方便 root 的安卓手机推荐

Posted: 09 Feb 2022 03:26 AM PST

2022 了,有没有什么简单方便能 root 的安卓手机。 如果能有一些相关的 wiki 就再好不过了。

祝各位老铁新年快乐,财源广进,永无 bug ~

hype-v、esxi、pve 三大虚拟机系统对比,哪个性能最好?哪个占用最低?

Posted: 09 Feb 2022 02:46 AM PST

本人只用过 esxi 和 pve

hype-v 听说很容易上手,不知道性能如何

或者来个等级排序 最好 > 其次 > 其次

mysql 集群问题

Posted: 09 Feb 2022 02:00 AM PST

请问大佬们 mysql 集群都用的什么方案

针对新 OS 升级,若有必要,备份后是先升级再双清还是先双清再升级?

Posted: 09 Feb 2022 01:35 AM PST

用了十年 Android 了,还没搞清这问题……

主力机三星 Galaxy Note 10 Plus 即将迎来 Android 12 ,准备近期先备份好一切,
若升级后不能改善目前主要的耗电问题,打算试下双清或者恢复出厂设置。(耗电问题是今年 1 月份更新了安全补丁后出现的,更新后耗电明显,相比去年 12 月份)

在盖乐世社区看到有人准备备份后先格式化再更新……
Google 了一下也有先备份,再升级然后双清或恢复出厂设置的。

个人更倾向先升级再双清吧,然后双清和恢复出厂设置推荐哪个呢?
期待各位的回复,先谢过。

[澳洲][远程] Java backend developer (3 月合同,有续约机会)

Posted: 09 Feb 2022 01:35 AM PST

要求:

  • 精通 SpringBoot, RSocket, Bamboo CI/CD, TFS source control
  • 熟悉.Net 更好,但是不是必须
  • 熟悉 MS SQL backend database
  • 熟悉 Restful / SOAP
  • 能使用 JIRA 进行需求和任务管理

欢迎踊跃自荐和推荐,wx:jjhoufck

买了个 xss,身边只有一台 macbook,不想买显示器,有别的解决办法吗

Posted: 09 Feb 2022 12:08 AM PST

MacBook 不能作为外接显示器使用,又不想搞一台显示器,有啥便携性的解决方案能玩 xss 吗?

一台 4 核 24G 内存的 arm 架构服务器可以用来做什么

Posted: 08 Feb 2022 09:32 PM PST

楼主是留学生,出国后(目前在英)成功用本地办的 Visa 卡白嫖到了 Oracle Cloud 的服务器,其中包含每月免费限额的 4 核心 24G 内存的 arm 服务器一台,目前吃灰中,想好好利用一番,可以做些什么。

比如 是否可以运行 Android ,做一台云手机。

大家帮忙出谋划策一下

WebAssembly 能够调用另外一个 WebAssembly 么?

Posted: 08 Feb 2022 09:22 PM PST

现在好像有一些运算,可以用 c++编写,然后编译成 web assembly ,再用 javascript 去调用这个 web assembly 里面的方法 /API

现在有个问题,用 c++编写功能,这个功能可能有 dependency 。需要把这个 dependency 也改写成 web assembly 。 但是 wasm ( Web Assembly ),能够直接调用另外一个 wasm 么?

就好像在 windows 下面,我的程序调用了 windows.dll 下的一个 API ,这个 API 又调用了 system.dll 下面的 API 。

否则,如果我要用 c++开发功能,我得把所有的代码,都移动到这一个项目 /文件里面来,统一编译成 wasm ,这样就太麻烦了。也不利于代码重用......

有没有相关的文档介绍这样的用法?还是说,现在 web assembly 就不支持这样的用法?

代码格式化工具 Black 发布首个稳定版

Posted: 08 Feb 2022 09:01 PM PST

https://github.com/psf/black/releases/tag/22.1.0

10 天前发布的,终于不 beta 了。我应该是从 19.x 开始用的,配合 isort 再也没操心过格式化问题。

OneDev 6.3 - 暗黑模式

Posted: 08 Feb 2022 08:27 PM PST

自建 Git 服务的一个选择,自带看板和 CI/CD: https://github.com/theonedev/onedev

这个版本主要提供了暗黑模式:

https://github.com/theonedev/onedev/wiki/6.3/dark-mode.png

https://github.com/theonedev/onedev/wiki/6.3/issue-boards.png

ubuntu 下搜狗输入法中文模式下的反单引号

Posted: 08 Feb 2022 07:53 PM PST

ubuntu 20.04 下使用最新的搜狗输入法,在中文模式下,`变成了·,如何取消这个设置呢?在写 markdown 时非常麻烦,写 code block 时,每次都需要切换回英文模式。而中点号我根本不需要。搜狗输入法是基于 fcitx 的,可以通过 fcitx 来去掉搜狗的这个设置吗?

开源的私有云+混合云,多云管理平台,欢迎使用+Star

Posted: 08 Feb 2022 07:15 PM PST

项目地址: https://github.com/yunionio/cloudpods (Golang)

k8s 底座

内置私有云,裸金属管理

VMware OpenStack

支持管理天翼云、华为云、腾讯云、阿里云、Azure 、亚马逊云、谷歌云等多个云平台

管理的资源: 计算,网络,数据库,IAM, 监控,存储,容器....

欢迎大家在 GitHub +star ,多多探讨交流。

k3s server 怎么杀

Posted: 08 Feb 2022 04:40 PM PST

没有安装成服务

直接 k3s server & 启动的

后台起了一堆进程

有没有办法一条命令杀掉的?

独立游戏靠广告能赚钱吗?分享一下这几天的广告收入

Posted: 08 Feb 2022 02:22 PM PST

二月初上线了一个独立游戏《游戏码农:那些打工的日子》,一个文字类模拟养成的游戏,今天是 9 号了,给大家分享一下 8 天的广告收入情况。收于是独立开发者,很难有成本去申请版号,所以也做不了内购,只能靠广告赚点钱。

下图是 Android 的收入

下图是 iOS 的收入

Android 主要的流量来自于 好游快爆 和 TapTap 。从上面的图可以看到,Android 平台的收入占了大头。总得来说,通过做游戏,是可以赚到钱的,但是要和月入一狗的薪水打平,还是有点难度的,需要积累。

游戏链接

TapTap: https://www.taptap.com/app/230651

AppStore: https://apps.apple.com/cn/app/id1607035933

这个配置文件的工具类有没有存在的必要?

Posted: 08 Feb 2022 03:14 AM PST

`public class PropertiesUtils extends Properties {

private static final long serialVersionUID = 1L; private static final String DEFAULT_PROPERTIES; static { 	DEFAULT_PROPERTIES = "config/application.properties"; }  @SuppressWarnings("unused") private PropertiesUtils() {  }  public PropertiesUtils(@Nullable ClassLoader classLoader, String... configPath) { 	String file = configPath.length == 0 ? DEFAULT_PROPERTIES : configPath[0]; 	Optional<InputStream> inStream = Optional.of(Optional.ofNullable(classLoader).orElseGet(() -> { 		ClassLoader[] classLoaders = new ClassLoader[] { Thread.currentThread().getContextClassLoader(), 				ClassLoader.getSystemClassLoader(), PropertiesUtils.class.getClassLoader() }; 		return Arrays.stream(classLoaders).filter(cl -> cl.getResourceAsStream(file) != null).findFirst().get(); 	}).getResourceAsStream(file)); 	if (inStream.isPresent()) 		try { 			super.load(inStream.get()); 		} catch (IOException e) { 			// TODO Auto-generated catch block 			e.printStackTrace(); 		}  } 

}`

No comments:

Post a Comment