顺流?逆流?中美关系走进明目张胆的捅刀子、下黑手时代

◎智谷趋势(ID:zgtrend) |  S博士(智谷趋势首席内容官)

7月7日晚,S博士分享了中美关系的最新进展以及其他的重要动态。

 

直播中,有听众留言说“太悲观了”。

 

9日,中国外长向中美智库媒体视频论坛致辞,说“中美关系正面临建交以来最严重的的挑战”。

 

官方公开这么讲,其实,内部可能早就做了更糟糕的准备。历史经验早已证明,变天的时候,政府机构常常是最后知道的那一个。

 

最近,美国甚至放风,要考虑禁止党员入境。

 

中美关系绝对是未来相当长一段时期内国际关系叙事的主轴。

 

不像疫情这只黑天鹅,它在国际关系的分析中,绝大多数时候,只能是化学反应中的催化剂,作用是加速或减缓反应进程,但本身不参与反应。

 

除非新冠病毒是人为制造并且故意传播的。

 

顺流?逆流?中美关系走进明目张胆的捅刀子、下黑手时代

现在,你还觉得中美脱钩不会发生吗?

 

我们说脱钩,一直强调它是一个过程。并不是说,一道命令下来,就能瞬间斩断一切。

 

美国处理华为的半导体零部件供应、中国商业大飞机C919使用的CFM国际的发动机的做法,就充分反映了这一点。

 

美国是下了决心要搞死华为的,因为5G是下一代工业的基底技术之一。美国自从1910年起,就没有在基底技术上落后过。美国不能允许自己在这方面失去先机。

 

特朗普说得很清楚,“这是美国绝对不能输的战争”。但美国太拖拉了,技术上一时半会赶不上,就只能下政治黑手了。

 

但即便如此,美国依然没法立即断供。比如通过临时出口许可继续批准美国供应商向华为供货。

 

为什么还要留出一些口子呢?

 

一方面,确实证明了华为有独到之处。至少超过了美国政策制定者的想象。原来以为只要限制使用美国技术达到25%的企业,就能搞死华为。结果一年过去了,也没能搞死。所以,今年干脆降到了10%。

 

另一方面也证明美国的法治程度。想耍流氓,也得一步一步来,没办法完全命令的了企业,企业可以想尽办法规避。

 

通用的Leap-1C发动机也是这样,通用的经营最近实在不怎么样,发动机是通用比较赚钱的一块,反正中国也仿制不了,所以讨论了一番以后,还是暂时放行了。

 

如果未来C919真得对波音构成威胁,美国会不会继续耍流氓,我觉得可能性很大。

 

中美关系之间的渗透、牵绊太深了。美国想脱钩,但同时还想把对美国的影响尽可能减到最少,这需要时间。不是一件想当然的事。

 

但我不喜欢国内不少专家聊贸易战、聊脱钩的逻辑,张嘴就是美国遭受的损失比中国大。

 

和平发展的时候,这么考虑问题,OK。

 

但是对抗的时代,政治优先考虑的不是谁的损失大,而是我损失比你大无所谓,关键是我比你更能承受后果。

 

或者,放到更长的对抗时间轴里,看谁的损失更大。

 

事实上,中国方面从2年零3个月前的不相信“脱钩”,到现在开始强调要有“底线思维”,已经开始正视这个过程。只不过呢,媒体上不渲染就是了。也许,想着我们能凭借外交劝美国鹰牌放下屠刀立地成佛呢?

 

S博士这两年对动态的判断有对有错,但大体不差。

 

简单回顾一下:

 

  • 中美贸易战铁定开打(2018年3月)

  • 中兴之后,华为也躲不掉,只不过华为会有一个缓冲期

  • 贸易战之后是科技战、金融战

  • 中国会主动缓和、提升对日关系

  • 中美脱钩,最快也需要大约10年

  • 现在还不是“新冷战”,但要有比打冷战更高的智慧

  • 特朗普连任的概率超过90%

  • 香港的悲剧:被中美两个巨大的磨盘碾压(2019年7月6日)

  • 投资印度要特别小心

 

这里错的可能是关于特朗普连任的预测,不过当时疫情还没有发生,没人想到美国会死这么多人。

 

疫情加速了中美关系的恶化,包括脱钩。

 

  • 它给了美国鹰派极力甩锅的新理由;

  • 它强化了选举中的中国因素;

  • 它吸引了更多人把目光放在中国身上。

 

在大选年,这就是最糟糕的消息。

 

皮尤的最新数据已经证明了这一点,不喜欢中国的美国人达到一个峰值——77%。超过了1989年,超过了2018年贸易战。

 

其实,现在已经有美国学者在讨论“中国是如何失去美国的”这个论题——美国曾经对中国那么好,那么满怀希望,中国是如何错过的。意思是中美关系恶化看来是没法掉头了。

 

顺流?逆流?中美关系走进明目张胆的捅刀子、下黑手时代

中美撕裂,能糟到哪儿去?

 

这两年,有个词慢慢热了起来,叫“底线思维”。

 

中文很优美,但我们使用它的方式很糟糕。“底线思维”这个词,已经提了8年多,在各种语境中,但就是没人告诉我们“线”在哪儿?

 

最近,我们的“底线”开始清晰了,有了比较明确的描述。

 

最近,有媒体披露了中联部原副部长周力提到的六个准备:

 

  • 做好中美关系恶化加剧、斗争全面升级的准备;

  • 做好应对外部需求萎缩、产业链和供应链断裂的准备;

  • 做好新冠病毒疫情常态化、病毒与人类长期共存的准备;

  • 做好摆脱美元霸权、逐步实现人民币与美元脱钩的准备;

  • 做好全球性粮食危机爆发的准备;

  • 做好国际反恐势力回潮的准备。

 

这六个准备,基本说明了中国官方对内部和外部环境出现的可能最糟糕情况的预判。

 

我看了一下这六个方面,恐怕也就后两个相对而言不那么让人担心。

 

粮食,尽管今年天气异常,可能影响到小麦、水稻最终的产量,不过就中国粮食生产和库存而言,基本上没什么问题。

 

恐怖主义,这个世界控制最好的也就是中国了。

 

其他的四个,真的是一个都不让人省心。

 

产业链、供应链,至少关系到2亿人的饭碗;疫情常态化,只要疫苗出不来,那简直就是日常生活、经济生活完全被打乱,不知道多少行业要经历大洗牌;摆脱美元霸权,哪有那么容易?至于中美关系,提到了全面斗争,大略是1990年代那个样子吧。

 

不过,这真的是最糟的情况吗?

 

美国的米尔斯海默教授,提到了中美爆发热战的可能性。

 

老头是搞学术的,国际政治进攻性现实主义理论的代表人物,被美国鹰牌看作是对华强硬的理论教父。他一直在讲,希望中国的崛起能成为例外,证明他错了。

 

还有更狠的呢!

 

美国最鹰牌的一群人,近来炮制了一个“太平洋威慑倡议”的军事计划。

 

这个倡议是仿效针对俄罗斯的“欧洲威慑倡议”,它于2014年俄罗斯夺取克里米亚后提出。

 

它很像是冷战时期通过军备竞赛,威慑对手,最终压垮对手的缩小版。

 

以美国众议院军事委员会自身共和党人麦克·索恩伯里这样的人,正在极力鼓吹要对中国诉诸类似的行动。最让人忧心的是,这帮人对武装冲突津津乐道。

 

如果只是中美关系的恶化,其实也没有什么好太担心的。因为,类似中国与美国这样的国家,国家行为其实还是有底线的。

 

2005年经济学诺奖得主托马斯·谢林(Thomas Schelling)1960年出版过一本《冲突的战略》The Strategy of Conflict。

 

他的主要观点是:威慑意味着准备好一切手段,但永远不要使用这些手段。谢林说过一句名言:对峙的双方当然都可以举枪,但一旦谁先开枪,谁就输了。

 

由此我们就不难理解最近发生的一切热点新闻。

 

两个亚洲大国明明拥有核武器、航空母舰、洲际导弹、先进战斗机,为什么在边境冲突却只动用棍棒和石头。

 

反过来,美国鹰派现在做出一切姿态,也是在逼中国开第一枪。美国会在一系列问题上不断挑衅,比如香港、新疆、台湾,慢慢接近中国人核心利益。

 

因为,目前美国的实力还远远优于中国。所以,中国怎么能不战而屈人之兵,需要高超的技艺。

 

我们最担心的是一条新铁幕的出现。它从华为事件开始、随着香港问题而渐渐清晰,现在的问题是它会最终形成吗?

 

顺流?逆流?中美关系走进明目张胆的捅刀子、下黑手时代

一条新铁幕正在形成

 

基辛格曾经有一个警告,“中美两国均不可能主导对方,双方必须承认并适应这事实,若任何一方想在冲突中大获全胜,只会导致永久性的冲突,引发灾难后果。”

 

这句话有一个前提,就是中美双方在发展中不要犯可能致命的错误。比如中国的十年浩劫,美国的越南战争。

 

当然,基辛格这话并没有回避小规模冲突的可能性。

 

那么,如何保证在博弈过程中,占了便宜的一方能见好就收,而吃了亏的一方不要总想着报复呢?

 

答案就是建立足够的威慑。当中美双方的实力差距不再有代差的时候,那么确保威慑,就变成了四处拉盟友。

 

华为事件一开始,我们就曾说过,5年后的世界可能会分成两部分:用华为的和不用华为的。

 

当然同样的因为疫情、香港的事态,当初的这个5年,看样子也要被大大压缩了。

 

如果新的铁幕是按照这样一条线分布的,那么美国处于攻势,中国明显是处于守势。而且,中国的空间一直在被压缩中。

 

双方争夺的一些中间地带,中国在不断地失去。中国最近失去的有英国和印度。

 

因为中印边境冲突,印度把华为从印度5G建设中剔除了出去。

 

你们觉得从经济的角度这是理性的选择吗?印度的3G、4G,华为的产品占了大头,印度本身就缺钱,原本可能只需要改造一番就行了,现在可能必须推翻重来。

 

另外华为在印度有研发中心,雇佣了8000印度人。里外一算账,经济上肯定是划不来的。但是如果只讲政治,我们就得吞下苦果。

 

英国最近也明确表态要在6个月内停止在5G建设中使用华为的设备,同时加快拆除已经安装好的华为设备。

 

传统西方国家纷纷拒绝华为,但美国在很多第三世界国家的劝说却没收到什么效果。这足以证明一带一路的正确。

 

联合国人权历史会围绕港版国安法的交锋也证明了这一点。

 

支持中国的不到80个,反对的27个。支持者大多来自亚非拉,反对的基本上是发达国家。

 

我觉得,这个世界很可能会重回当初“两个体系、三个世界”的时代。当然,和美苏对峙的时候相比,未来的两个体系不会像过去的“两个制度”那么壁垒森严,但如果前文所说的那6个底线都变成了现实,那也八九不离十了。

 

随口说一下印度吧。

 

印度这个国家,它自己最喜欢的称谓有这么几个:不结盟运动的领袖,世界最大的民主国家(从人口数量而言),增长最快的发展中国家。

 

如果它自己要下场,对手弱小的时候,印度的表现就是不折不扣的大国沙文主义。但如果对手强大,印度就会立马转身抱住美国、俄罗斯的大腿。

 

所以,中印除非能搁置边界争端,否则印度最喜欢的就是火中取栗。

 

从三个世界来看,当年毛泽东提出三个世界理论时说过,二三世界都是中国应该团结的对象。意思就是要主动跳出主义、政治认同之争,不管是发达国家还是发展中国家,尽可能让朋友多一点。

 

这个在今天还是有借鉴意义的。这就是刺破铁幕的最好手段。

 

现在回过头来看,我们当初说特朗普当选给了中国3-7年的战略缓冲期,还是有道理的。第一年,特朗普更多是在讲述他美国优先的理念,进行舆论准备,真正大动作都是从他第二年开始的。

 

虽然,很多中国人不爽特朗普,但是假设不是他,而是在你无意识的时候,换了一个政治老手,以迅雷不及掩耳之势发起全方位的袭击,那才是悲剧呢。

 

目前来看,特朗普和美国鹰牌之间还是有分歧的,他更看重经济,甚至得罪了很多传统盟友,从而给了中国难得调整期。

 

比如,到2020年,我们至少有了“六个底线”。早两年,我们连底线在哪都说不清。

 

每一次大变动,影响最大的永远是中产这个阶层。

 

铁幕、疫情,形成比较突出的一对矛盾。

 

社会治理能力差的,挺中国;社会治理能力好的,弹中国。

 

中国的机会可能越来越向发展中、不发达国家倾斜,但是这个机会和风险同样大;至于发达国家,社会氛围的恶化也是一定的,但其成熟体系依然具有吸引力。

 

这也会增加中产进行投资、资产配置时的选择困难。

 

不过,政治的歇斯底里总是不会持续太久的,睿智的人总是能在历史的车轮滚滚中把握机会。

 

原创不易,感谢有你!

 

转自:https://mp.weixin.qq.com/s/xqmz_ydy_eN8FYktPSLS3Q

牛市怎么逃顶?

    近期行情在高位震荡,可能有一部分人已经后悔为什么不早点止盈落袋。虽然我也认为对当现在的行情不必过于担心,但适当将利润止盈也未尝不可。

    今天分享方法简单从技术角度谈一些止盈的策略,可以从作为知识储备了解一下。

 

◎作者丨力哥

◎来源丨力哥理财(ID:lglicai)

上周一连写6篇股市话题,也不是我故意凑热点,而是市场本身亢奋了,问我的人太多。本来都准备了好几篇楼市干货,都压着没发……牛市怎么逃顶?
但你仔细看我写的这些文章——核心逻辑还是“估值”。
就算上车分享牛市蛋糕,也找个安全垫厚一点的下手,别站危墙下面,性价比太低。
医药、科技、白酒,现在估值都已涨破天际线,也就是无论看PE还是PB,都超100%分位点,估值没有任何参考价值,市场完全是靠情绪、故事、信心等非理性因素支撑继续涨。
你现在买中证500,是冒1的潜在风险,赚3的潜在回报;
但如果买医药科技,是冒8的潜在风险,赚5的潜在回报。
对,牛市发疯的时候,乍一看好像是科技涨得更欢乐,500跑太慢,但哪天疯牛突然崩了,或者这根本不是24K真·牛市,而是吹弹可破的“牛皮市”,没吹几天就破了,到时高空自由落体才知道疼。
风险这东西,没发生时,很多人当它不存在,真发生了,再补救已来不及。
和许多人觉得自己年轻力壮,身体倍棒,不太可能出意外,60岁前不用买保险一样,完全侥幸心理。
但看到别的板块涨,你手里的票不涨,或别人赚的多,你赚的少,难免有追涨热点题材的冲动,怎么破?
如果实在忍不住参与博傻游戏,力哥只能勉为其难再教你一套逃顶的方法。
用技术分析中最简单的均线理论。
均线是移动平均线MA的简称,意思是把过去一段时间每天股票涨跌的K线图连起来,形成一条平滑的曲线。
牛市怎么逃顶?
图中K线下面各种颜色的线就是均线
均线是趋势投资或者说研究一个问题发展趋势非常直观的指标。
比如把每天美国新冠病毒新增感染人数连成一条曲线,就能明显看出美国的疫情的发展趋势是在好转还是恶化。
牛市怎么逃顶?
图中蓝线为美国3到6月新冠病毒新增感染人数7日均线图
这些都是讲给小白听的,很多股市老手都有根据技术分析炒股的习惯,但力哥是理财师,我的职业操守不允许我拼命给大家pick技术分析。
一是技术分析不一定准,它把股市完全看成一个零和博弈的赌场(实际负和博弈),再牛的技术分析大神也只能把下注赢率从49%提高到54%、56%,了不起了。
尤其要注意,存量博弈市场,资金和玩家基本恒定,阻力位、压力位、金叉、死叉、阴包阳、阳包阴、跳空缺口这些概念才会有点参考价值。
比如“阻力位”就是前期股市高点,套牢盘密集区,很多人解套后就有卖出冲动,后续接盘资金跟不上,就容易把大盘砸下来,所以叫阻力位。
可见,技术分析理论的前提,还是认为股市大部分参与者都战胜不了人性弱点(这也是恒古不变的事实)。
牛市怎么逃顶?
支撑位和阻力位
但牛市是情绪主导的增量市场,每天都有海量新鲜韭菜在赚钱效应驱使下疯狂入场,再用过去的静态模型看问题,很容易在市场超买过热时第一时间跳车,结果市场继续涨,不断上车下车,反复啪啪打脸。
二是价值投资要求追跌杀涨,看到大跌贪婪买入,看到大涨恐慌卖出,喜跌不喜涨,很反人性;趋势投资虽然追涨杀跌,但追涨符合人性,杀跌同样很难。
人性对亏损超敏感,小白套牢后的唯一愿望(怨念)就是“回本”,觉得只要不卖就不是真亏,自我麻痹,很难接受“浮亏”变“实亏”。
哪怕自己定下的技术指标明确告诉你斩仓离场,也还是心存侥幸,觉得没准还有第二波,或者非要等到“线下阳线抛”。
遇到15年股灾那种崩起来连续几天3%、4%、5%的爆锤,反弹却只有一天2%、3%,真熬到反弹又觉得自己之前亏惨了,期待反弹再持续两天,然后又一顿爆锤,更舍不得止损……
所以力哥反复说,投资就是投人性,无法成为战胜人性弱点的强者,不管学哪门哪派,都是韭菜命。
但正因为很难克服,所以才叫人性,这也注定了大部分玩家注定韭菜命。
所以下面力哥说的,还是只有反人性的强者才能真正get,弱者亏了别来怪我哈~牛市怎么逃顶?
判断何时跳车走人,很简单,你买的那个指数基金所跟踪的指数,跌破N日均线,就做相应减仓处理。
比如说,跌破MA10(10日移动平均线),收割盈利部分;跌破MA20,卖掉半仓,跌破MA30,清仓。
或者再加上连续10个交易日不创新高,清仓;
或者再加上,指数不创新高的情况下,成交量却持续放量,说明高位换筹很凶狠,后面的韭菜很可能接不上了,清仓。
胆子更大的,跌破MA60+20日不创新高再清仓也可以。
胆子更小的,有人跌破MA10就跑了。
但就算是大牛市,也会有大级别的调整,99-01,06-07和14-15这三轮公认的大牛市,中途调整跌破60日均线或连续20个交易日不创新高的情况都出现过N次。
如果你真下车了,就踏空后面行情了。
那能不能下车后看趋势翻转再重新补票上车呢?
技术流就是这么玩的,但杀跌止损和追高上车之间的那段收益,吃不到了。
“狼来了”2、3次后,不少技术流就三观崩了,觉得技术分析都特么骗人的,老害我大牛市少赚好多钱。等牛市真崩了,反而不再信技术指标,坚决不下车,然后……
所以要么就一门心思做价值投资,跟着估值走,估值高的不贪不碰,估值低的涨高就走人,基本不会吃瘪。
要么一门心思做趋势投机,5G、芯片、半导体、新能源车、生物医药、白酒全都可以继续上车,一旦定下的技术指标破位,就得立马下车,卖错了也要卖。
对了,还有种把估值指标和技术指标结合在一起的止盈策略。
先设定一个比较低的PE/PB分位点止盈标准,比如70%,破了70%,看趋势依然向好,也不急着下车,等60日均线破了再走。
或者先设定一个比较高的PE/PB分位点止盈标准,比如90%,破了90%,也不立即下车,等破了10日均线再走。
相对严苛的估值指标配合相对宽松的均线指标,或者相对宽松的估值指标配合相对严苛的均线指标。
总之,股市里最难的是知行合一,制定了投资计划,就要坚定执行,该买就买,该卖就卖。
怕就怕真到该卖的时候,还是被市场狂热情绪感染,贪婪蒙蔽理性,别说赚了,不亏都难。
 

转自:https://mp.weixin.qq.com/s/fZcrWR-XFaCh9Cyn9yeGHA

10张流程图+部署图,讲透单点登录原理与简单实现!

作者:凌承一

原文:www.cnblogs.com/ywlaker/p/6113927.html

 

 

一、单系统登录机制

 

1、http无状态协议

 

web应用采用browser/server架构,http作为通信协议。http是无状态协议,浏览器的每一次请求,服务器会独立处理,不与之前或之后的请求产生关联,这个过程用下图说明,三次请求/响应对之间没有任何联系

 

10张流程图+部署图,讲透单点登录原理与简单实现!

 

但这也同时意味着,任何用户都能通过浏览器访问服务器资源,如果想保护服务器的某些资源,必须限制浏览器请求;要限制浏览器请求,必须鉴别浏览器请求,响应合法请求,忽略非法请求;要鉴别浏览器请求,必须清楚浏览器请求状态。既然http协议无状态,那就让服务器和浏览器共同维护一个状态吧!这就是会话机制

 

2、会话机制

 

浏览器第一次请求服务器,服务器创建一个会话,并将会话的id作为响应的一部分发送给浏览器,浏览器存储会话id,并在后续第二次和第三次请求中带上会话id,服务器取得请求中的会话id就知道是不是同一个用户了,这个过程用下图说明,后续请求与第一次请求产生了关联

 

10张流程图+部署图,讲透单点登录原理与简单实现!

 

服务器在内存中保存会话对象,浏览器怎么保存会话id呢?你可能会想到两种方式

 

  1. 请求参数

  2. cookie

 

将会话id作为每一个请求的参数,服务器接收请求自然能解析参数获得会话id,并借此判断是否来自同一会话,很明显,这种方式不靠谱。那就浏览器自己来维护这个会话id吧,每次发送http请求时浏览器自动发送会话id,cookie机制正好用来做这件事。

 

cookie是浏览器用来存储少量数据的一种机制,数据以”key/value“形式存储,浏览器发送http请求时自动附带cookie信息

 

tomcat会话机制当然也实现了cookie,访问tomcat服务器时,浏览器中可以看到一个名为“JSESSIONID”的cookie,这就是tomcat会话机制维护的会话id,使用了cookie的请求响应过程如下图

 

10张流程图+部署图,讲透单点登录原理与简单实现!

 

3、登录状态

 

有了会话机制,登录状态就好明白了,我们假设浏览器第一次请求服务器需要输入用户名与密码验证身份,服务器拿到用户名密码去数据库比对,正确的话说明当前持有这个会话的用户是合法用户,应该将这个会话标记为“已授权”或者“已登录”等等之类的状态,既然是会话的状态,自然要保存在会话对象中,tomcat在会话对象中设置登录状态如下

 

HttpSession session = request.getSession();
session.setAttribute("isLogin", true);

 

用户再次访问时,tomcat在会话对象中查看登录状态

 

HttpSession session = request.getSession();
session.getAttribute("isLogin");

 

实现了登录状态的浏览器请求服务器模型如下图描述

 

10张流程图+部署图,讲透单点登录原理与简单实现!

 

每次请求受保护资源时都会检查会话对象中的登录状态,只有 isLogin=true 的会话才能访问,登录机制因此而实现。

 

二、多系统的复杂性

 

web系统早已从久远的单系统发展成为如今由多系统组成的应用群,面对如此众多的系统,用户难道要一个一个登录、然后一个一个注销吗?就像下图描述的这样

 

10张流程图+部署图,讲透单点登录原理与简单实现!

 

web系统由单系统发展成多系统组成的应用群,复杂性应该由系统内部承担,而不是用户。无论web系统内部多么复杂,对用户而言,都是一个统一的整体,也就是说,用户访问web系统的整个应用群与访问单个系统一样,登录/注销只要一次就够了

 

10张流程图+部署图,讲透单点登录原理与简单实现!

 

虽然单系统的登录解决方案很完美,但对于多系统应用群已经不再适用了,为什么呢?

 

单系统登录解决方案的核心是cookie,cookie携带会话id在浏览器与服务器之间维护会话状态。但cookie是有限制的,这个限制就是cookie的域(通常对应网站的域名),浏览器发送http请求时会自动携带与该域匹配的cookie,而不是所有cookie

 

10张流程图+部署图,讲透单点登录原理与简单实现!

 

既然这样,为什么不将web应用群中所有子系统的域名统一在一个顶级域名下,例如“*.baidu.com”,然后将它们的cookie域设置为“baidu.com”,这种做法理论上是可以的,甚至早期很多多系统登录就采用这种同域名共享cookie的方式。

 

然而,可行并不代表好,共享cookie的方式存在众多局限。首先,应用群域名得统一;其次,应用群各系统使用的技术(至少是web服务器)要相同,不然cookie的key值(tomcat为JSESSIONID)不同,无法维持会话,共享cookie的方式是无法实现跨语言技术平台登录的,比如java、php、.net系统之间;第三,cookie本身不安全。

 

因此,我们需要一种全新的登录方式来实现多系统应用群的登录,这就是单点登录

 

三、单点登录

 

什么是单点登录?单点登录全称Single Sign On(以下简称SSO),是指在多系统应用群中登录一个系统,便可在其他所有系统中得到授权而无需再次登录,包括单点登录与单点注销两部分

 

1、登录

 

相比于单系统登录,sso需要一个独立的认证中心,只有认证中心能接受用户的用户名密码等安全信息,其他系统不提供登录入口,只接受认证中心的间接授权。

 

间接授权通过令牌实现,sso认证中心验证用户的用户名密码没问题,创建授权令牌,在接下来的跳转过程中,授权令牌作为参数发送给各个子系统,子系统拿到令牌,即得到了授权,可以借此创建局部会话,局部会话登录方式与单系统的登录方式相同。这个过程,也就是单点登录的原理,用下图说明

 

10张流程图+部署图,讲透单点登录原理与简单实现!

 

下面对上图简要描述

 

  1. 用户访问系统1的受保护资源,系统1发现用户未登录,跳转至sso认证中心,并将自己的地址作为参数

  2. sso认证中心发现用户未登录,将用户引导至登录页面

  3. 用户输入用户名密码提交登录申请

  4. sso认证中心校验用户信息,创建用户与sso认证中心之间的会话,称为全局会话,同时创建授权令牌

  5. sso认证中心带着令牌跳转会最初的请求地址(系统1)

  6. 系统1拿到令牌,去sso认证中心校验令牌是否有效

  7. sso认证中心校验令牌,返回有效,注册系统1

  8. 系统1使用该令牌创建与用户的会话,称为局部会话,返回受保护资源

  9. 用户访问系统2的受保护资源

  10. 系统2发现用户未登录,跳转至sso认证中心,并将自己的地址作为参数

  11. sso认证中心发现用户已登录,跳转回系统2的地址,并附上令牌

  12. 系统2拿到令牌,去sso认证中心校验令牌是否有效

  13. sso认证中心校验令牌,返回有效,注册系统2

  14. 系统2使用该令牌创建与用户的局部会话,返回受保护资源

 

用户登录成功之后,会与sso认证中心及各个子系统建立会话,用户与sso认证中心建立的会话称为全局会话,用户与各个子系统建立的会话称为局部会话,局部会话建立之后,用户访问子系统受保护资源将不再通过sso认证中心,全局会话与局部会话有如下约束关系

 

  1. 局部会话存在,全局会话一定存在

  2. 全局会话存在,局部会话不一定存在

  3. 全局会话销毁,局部会话必须销毁

 

你可以通过博客园、百度、csdn、淘宝等网站的登录过程加深对单点登录的理解,注意观察登录过程中的跳转url与参数

 

2、注销

 

单点登录自然也要单点注销,在一个子系统中注销,所有子系统的会话都将被销毁,用下面的图来说明

 

10张流程图+部署图,讲透单点登录原理与简单实现!

 

so认证中心一直监听全局会话的状态,一旦全局会话销毁,监听器将通知所有注册系统执行注销操作

 

下面对上图简要说明

 

  1. 用户向系统1发起注销请求

  2. 系统1根据用户与系统1建立的会话id拿到令牌,向sso认证中心发起注销请求

  3. sso认证中心校验令牌有效,销毁全局会话,同时取出所有用此令牌注册的系统地址

  4. sso认证中心向所有注册系统发起注销请求

  5. 各注册系统接收sso认证中心的注销请求,销毁局部会话

  6. sso认证中心引导用户至登录页面

 

四、部署图

 

单点登录涉及sso认证中心与众子系统,子系统与sso认证中心需要通信以交换令牌、校验令牌及发起注销请求,因而子系统必须集成sso的客户端,sso认证中心则是sso服务端,整个单点登录过程实质是sso客户端与服务端通信的过程,用下图描述

 

10张流程图+部署图,讲透单点登录原理与简单实现!

 

sso认证中心与sso客户端通信方式有多种,这里以简单好用的httpClient为例,web service、rpc、restful api都可以

 

五、实现

 

只是简要介绍下基于java的实现过程,不提供完整源码,明白了原理,我相信你们可以自己实现。sso采用客户端/服务端架构,我们先看sso-client与sso-server要实现的功能(下面:sso认证中心=sso-server)

 

sso-client

 

  1. 拦截子系统未登录用户请求,跳转至sso认证中心

  2. 接收并存储sso认证中心发送的令牌

  3. 与sso-server通信,校验令牌的有效性

  4. 建立局部会话

  5. 拦截用户注销请求,向sso认证中心发送注销请求

  6. 接收sso认证中心发出的注销请求,销毁局部会话

 

sso-server

 

  1. 验证用户的登录信息

  2. 创建全局会话

  3. 创建授权令牌

  4. 与sso-client通信发送令牌

  5. 校验sso-client令牌有效性

  6. 系统注册

  7. 接收sso-client注销请求,注销所有会话

 

接下来,我们按照原理来一步步实现sso吧!

 

1、sso-client拦截未登录请求

 

java拦截请求的方式有servlet、filter、listener三种方式,我们采用filter。在sso-client中新建LoginFilter.java类并实现Filter接口,在doFilter()方法中加入对未登录用户的拦截

 

public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
   HttpServletRequest req = (HttpServletRequest) request;
   HttpServletResponse res = (HttpServletResponse) response;
   HttpSession session = req.getSession();
   
   if (session.getAttribute("isLogin")) {
       chain.doFilter(request, response);
       return;
   }
   //跳转至sso认证中心
   res.sendRedirect("sso-server-url-with-system-url");
}

 

2、sso-server拦截未登录请求

 

拦截从sso-client跳转至sso认证中心的未登录请求,跳转至登录页面,这个过程与sso-client完全一样

 

3、sso-server验证用户登录信息

 

用户在登录页面输入用户名密码,请求登录,sso认证中心校验用户信息,校验成功,将会话状态标记为“已登录”

 

@RequestMapping("/login")
public String login(String username, String password, HttpServletRequest req) {
   this.checkLoginInfo(username, password);
   req.getSession().setAttribute("isLogin", true);
   return "success";
}

 

4、sso-server创建授权令牌

 

授权令牌是一串随机字符,以什么样的方式生成都没有关系,只要不重复、不易伪造即可,下面是一个例子

 

String token = UUID.randomUUID().toString();

 

5、sso-client取得令牌并校验

 

sso认证中心登录后,跳转回子系统并附上令牌,子系统(sso-client)取得令牌,然后去sso认证中心校验,在LoginFilter.java的doFilter()中添加几行

 

// 请求附带token参数
String token = req.getParameter("token");
if (token != null) {
   // 去sso认证中心校验token
   boolean verifyResult = this.verify("sso-server-verify-url", token);
   if (!verifyResult) {
       res.sendRedirect("sso-server-url");
       return;
   }
   chain.doFilter(request, response);
}

 

verify()方法使用httpClient实现,这里仅简略介绍,httpClient详细使用方法请参考官方文档

 

HttpPost httpPost = new HttpPost("sso-server-verify-url-with-token");
HttpResponse httpResponse = httpClient.execute(httpPost);

 

6、sso-server接收并处理校验令牌请求

 

用户在sso认证中心登录成功后,sso-server创建授权令牌并存储该令牌,所以,sso-server对令牌的校验就是去查找这个令牌是否存在以及是否过期,令牌校验成功后sso-server将发送校验请求的系统注册到sso认证中心(就是存储起来的意思)

 

令牌与注册系统地址通常存储在key-value数据库(如redis)中,redis可以为key设置有效时间也就是令牌的有效期。redis运行在内存中,速度非常快,正好sso-server不需要持久化任何数据。

 

令牌与注册系统地址可以用下图描述的结构存储在redis中,可能你会问,为什么要存储这些系统的地址?

 

如果不存储,注销的时候就麻烦了,用户向sso认证中心提交注销请求,sso认证中心注销全局会话,但不知道哪些系统用此全局会话建立了自己的局部会话,也不知道要向哪些子系统发送注销请求注销局部会话

 

10张流程图+部署图,讲透单点登录原理与简单实现!

 

7、sso-client校验令牌成功创建局部会话

 

令牌校验成功后,sso-client将当前局部会话标记为“已登录”,修改LoginFilter.java,添加几行

 

if (verifyResult) {
   session.setAttribute("isLogin", true);
}

 

sso-client还需将当前会话id与令牌绑定,表示这个会话的登录状态与令牌相关,此关系可以用java的hashmap保存,保存的数据用来处理sso认证中心发来的注销请求

 

8、注销过程

 

用户向子系统发送带有“logout”参数的请求(注销请求),sso-client拦截器拦截该请求,向sso认证中心发起注销请求

 

String logout = req.getParameter("logout");
if (logout != null) {
   this.ssoServer.logout(token);
}

 

sso认证中心也用同样的方式识别出sso-client的请求是注销请求(带有“logout”参数),sso认证中心注销全局会话

 

@RequestMapping("/logout")
public String logout(HttpServletRequest req) {
   HttpSession session = req.getSession();
   if (session != null) {
       session.invalidate();//触发LogoutListener
   }
   return "redirect:/";
}

 

sso认证中心有一个全局会话的监听器,一旦全局会话注销,将通知所有注册系统注销

 

public class LogoutListener implements HttpSessionListener {
   @Override
   public void sessionCreated(HttpSessionEvent event)
{}
   @Override
   public void sessionDestroyed(HttpSessionEvent event)
{
       //通过httpClient向所有注册系统发送注销请求
   }
}

 

·END·

转自:https://mp.weixin.qq.com/s/WV6dhQ34wWUAeiTaipisIA

信创产业分析

二 行业与公司分析

 

半导体经过反复爆炒后,短期恐怕要沉寂一段时间了。老安前面多次提到的信创产业,和半导体同样具备国产替代逻辑。

 

中期来看,信创的确定性更强。原因在于行业的下游市场掌握在我们自己手中。目前,信创先行的2+8安全可控体系由我们自己掌控,在国家大力支持下,资金有充足保障,有利于整个行业推进。

此外,信创主要在国内厂商之间竞争,在中国电子、中国电科和华为等领导下,竞争不算激烈,预计相关上市公司能够获得较好的利润,充分受益于信创的发展。


因此,信创在业绩兑现上,可能比半导体更快看到效果,借此机会,也向各位读者大人汇报一下行业的最新进展。

 

信创是信息技术应用创新的简称。信创产业主要包括新一代信息技术下的云计算、软件(操作系统、中间件、数据库、各类应用软件)、硬件(芯片、GPU/CPU、主机、各类终端)、安全(网络安全)等领域,涵盖了从IT底层基础软硬件到上层应用软件的全产业链的安全可控、自主创新等重要课题。

 

整个行业的发展背景主要有两点,一个是国家的信息安全,过去中国 IT 底层标准、架构、产品、生态由外资企业主导,存在诸多安全问题。

 

第二个就是卡脖子的风险,美帝对我们的封锁越来越厉害,从硬件到软件,欺人太甚!逼着我们必须逐步建立基于自己的 IT 底层架构和标准,促使信创产业加速升级,自主创新与国产化成为大势所趋。

 

为此,国家提出“2+8”安全可控体系。其中2是指党政两大体系,而8是指金融、石油、电力、电信、交通、航空航天、医院、教育等八大主要行业。

 

2020-2022年是国家安全可控体系推广最重要的3年,中国IT产业从基础硬件-基础软件-行业应用软件有望迎来国产替代潮,必然也会带来很多投资机会。

 

市场空间:

 

基础IT有着几万亿市场,整个中国在基础IT领域才刚刚开始,信创行业对应着万亿级别的市场空间,据统计,我国自主可控的市场规模2020年为1.05万亿,2025年市场规模将增长到1.3万亿。

 

今年以来,以运营商、银行为代表的行业信创陆续启动,未来交通、能源、电力、医疗、教育、公共事业等行业信创都将全面推进。5月7日中国电信公布2020年服务器集中采购项目货物招标集中资格预审公告,其中H系列(华为鲲鹏920处理器或海光Hygon Dhyana处理器)11,185台,占比19.86%。

 

5月底6月初,以移动、电信为代表的运营商和国有大行如农行的公开招标中,信创占比提升。从行业角度来讲,电信、移动的集采中20%的份额给到基于国产芯片的服务器,这是超预期的。

 

大家可以想一下,像电信部门这种对性能要求很高的行业,都能给国产的产品这么大的比例,足以说明国产替代已经比较成熟了。

 

而党政部门肯定会比行业推的更快,落地更多,因为办公系统的性能要求其实是更低一些的。后面各个省推进的进度和体量都有可能超预期,整个党政体系,未来三五年,算上业务系统,大概有5、6千亿市场。

 

从进度来看,上半年虽然受到疫情的影响,但下半年各个省招标开始进入落地期,七八月份很多招标的量开始浮出水面,那么整个板块会有非常多的催化剂。这个时间节点大家要多留意。

竞争格局

 

信创市场容量大,竞争格局是关键。从竞争格局来看,今年有一些变化。比如芯片,去年龙芯的份额很高,但性能比飞腾(中国长城)落后。

 

今年由于华为受到美国政府的限制升级,加上海光(中科曙光)参与pc端比较少,未来主要用在行业部门服务器那边,所以今年飞腾的量估计会上来。

 

加上中国电子集团通过产业集群来带动芯片和操作系统业务推进,整个量会比市场预期提升很多,所以芯片这块,飞腾的量可能会多出来不少,毛估估比之前市场预期的份额多出50%-60%吧。

 

行业部门这边,海光和鲲鹏性能更加突出。华为受制裁,对鲲鹏发展影响很大,不过鲲鹏这两年备货充足,未来最差情况也可以采取ip授权模式,虽然对海思不利,但是产业链上的神州数码作为服务器合作伙伴,还是可能受益。

 

操作系统这边来看,UOS、麒麟操作系统成为国产化主流。目前诚迈科技持有统信软件 44.44%股权,统信软件作为 UOS 业务主体开展研发和销售业务。

就市占率而言,中国软件的中标麒麟操作系统市占率持续领先,估计中软在党政口份额会占到六七成左右,会高于市场预期。

 

未来由于中软在操作系统和服务器的领先性,估计在行业部门也能拿到一半左右的份额,这也是可能会超预期的。

 

整个信创里,份额现在最确定的就是办公软件,金山办公一家独大。金山是在跟微软的竞争中脱颖而出的,产品的好用性获得了广大用户,再加上现在在b端的推广,优势越来越明显。

 

目前金山在国内的用户数占比40%多,数量每年还在不断提升。在国产化的大风口下,未来确定性特别强,不管是产品本身,还是用户生态,比竞争对手遥遥领先,所以金山也是信创产业里面市值最大,走的最稳的公司,因为从长期来看其格局和份额最清楚。

 

中间件环节主要就看东方通。公司在党政部门方面有很强的渠道布局。目前党政部门的中间件是通过集成商代理或集成商招标来实现销售的。因此其他做中间件的公司在短期内很难追赶。

 

东方通在党政的份额有希望达40%-50%。在电信和金融领域,东方通过去几年也做了布局,目前收入在非党政行业占比大概是20%-30%左右,这个行业的缺点是价格竞争压力在加大。

 

数据库环节,做党政部门数据库的主要就三家,人大金仓,武汉达梦,神州通用。前两家都有上市母公司,人大金仓在太极股份下面,武汉达梦在中国软件下面。目前三家的产品本身没有很大差异,关键看公司在党政部门的渠道能力。

 

从这点来看,太极股份强一些,它在部委口的影响力比另外两家要强很多,另外太极去年加强了省市一级的布局,今年估计人大金仓在数据库这块有望拿到40%以上的份额。

 

值得一提的是,数据库在整个b端的市场是中间件的两倍,甚至比操作系统还要大些。数据库一年有200亿左右的市场,每年还有20%多的复合增速,那么五年以后就会是一个300多亿的市场,前面几家公司在行业里面占到20%-30%的市场份额,那么光是数据库的业务,未来都有比较大的成长空间。

 

信息安全也是信创的关键环节。从数据上看,行业一季度受疫情影响出现负增长,但集中度出现提升趋势。

 

当前市场对安全行业的担心来自政府削减财政支出,而行业以政府、企事业单位付费为主,今年是否会受到较大的预算影响?

 

实际上不会,信息安全在IT预算中占比很小,而且属于刚需,几乎不会受到影响,从4-5月订单就可验证。整个安全行业保持20%的复合增速,显示出国家对信息安全的重视程度是非常高的,不用担心经济对信息安全行业的发展影响。

 

而且行业还有一个潜在的催化因素,有机构认为,11月美国总统大选前,川普可能会加强力度推倒中国大陆网络防火墙,相应中方势必展开攻防战,信息安全相关公司比如深信服、启明星辰、安恒信息、中孚信息等值得关注。

 

从走势来看,信创板块在今年横了很久,表现在整个计算机板块里面不算突出。特别是在五六月份发生了一次很大的回调,市场对政府支出和行业的价格战都有担忧,但是现在来看,之前的很多担心都在被实际落地的情况给排除掉了,板块的确定性越来越强。

 

总的来说,信创产业已经诞生了市场上公认优秀的公司,比如金山办公,不管是从产品能力还是市场份额和竞争格局,基本上是大家公认的计算机板块里面没有瑕疵的公司。

 

过去几年,也诞生了中国软件这样的10倍股,说明这个行业还是有很多投资机会的。不过这个行业确实比较新,竞争格局还不明朗,在投资策略上,单独去押注一家公司风险比较大,这种情况更加适合用行业配置一揽子股票的思路,这样可以消除选股风险,获取行业beta的收益。

 

最近有读者反应,腾讯的规则改了,不是按时间先后推送,下方的点赞、在看都是读者活跃度指标,表示各位读者大人已阅,同意,平时要养成多点几下的习惯,不然可能收不到老安的文章。

GDP反弹,降息落空,楼市从严!释放了什么信号?

◎作者 | 凯风

◎来源 | 国民经略

 

2020年下半年,中国经济正在发生一些重大变化。

GDP反弹,降息落空,楼市从严!释放了什么信号?

GDP增速转正,实现反弹。

7月16日,国家统计局发布上半年经济数据:

2020年上半年,我国GDP为456614亿元,按可比价格计算,同比下降1.6%。

其中,一季度同比下降6.8%,二季度增长3.2%,经济增速转正。

GDP反弹,降息落空,楼市从严!释放了什么信号?

这一成绩虽然无法与过去相提并论,但置于疫情全球大流行的环境中,中国取得的增长显得相当突出。

根据IMF(国际货币基金组织)最新发布的预测,2020年全球增长率预计为–4.9%,欧美国家将大幅度下滑,而中国可能是为数不多保持正增长的国家。

GDP反弹,降息落空,楼市从严!释放了什么信号?

这与中国疫情迅速得到控制有关,也离不开以“六稳”和“六保”为主的托底政策。

经济复苏在路上,最难时刻已经过去。

GDP反弹,降息落空,楼市从严!释放了什么信号?

降息,大概率再度落空。

 

就在本周,央行开展了4000亿元中期借贷便利(MLF)操作,利率为2.95%,此前为2.95%,利率保持不变。

这一利率已经连续3个月保持不变,这意味着LPR降息大概率再一次落空。

 

MLF,俗称“麻辣粉”,是央行向市场投放流动性的主要工具之一。MLF利率,一般被视为实体利率(1年期LPR利率)和楼市利率(5年期LPR利率)的先行指标。

这一政策动向早有迹象。毕竟,经济从“危机模式”步入“复苏模式”,货币政策自然也从“救市模式”转化为“正常模式”,放水空间必然随之收缩。

这从近日央行等主管部门的表述就可见一斑:

 

下半年货币政策更加灵活适度,我们现在更加强调适度这两个字。

一个含义是总量上要适度,如果信贷投放节奏过快的话,快于经济复苏就会产生资金淤积,产生信贷资金没法有效使用的问题。

第二个是价格上要适度。一方面要引导融资成本进一步降低,同时也要认识到利率适当下行并不是利率越低越好,利率过低也是不利的,会产生套利问题,产生资金可能流向不应该流向领域的问题。

这段话表达的信号再清晰不过:一个是货币松绑不再是大水漫灌,而要“适度”;

另一个是利率不能一味下行,谨防套利和资金违规流入不该流入的领域。这里所谓的“不该流向的领域”,自然指的是楼市和股市。

作为佐证的是,前不久,银保监会出面表态,《股市、楼市都被“警告”了》。

GDP反弹,降息落空,楼市从严!释放了什么信号?

新一轮楼市调控已经卷土重来。

这两天,深圳楼市调控升级的靴子终于落地,带来的影响不容低估。

 

深圳版调控堪称史上最严,无论是“落户三年方能购房”,还是“满5年方能免征增值税”、“豪宅税新增750万门槛”,都打中了楼市投机的七寸。

GDP反弹,降息落空,楼市从严!释放了什么信号?

深圳新政,给正在蠢蠢欲动的地方楼市打了当头一棒,可谓是对“房住不炒”的再度重申,标志着“稳楼市”的红线所在。

 

楼市调控从严从紧,与央行降息搁浅一道,让个别出现过热苗头的楼市,遭遇了釜底抽薪式的冲击。

 

毕竟,限购、限贷和降息才是楼市的命脉所在,把握好这三个政策,就能控制楼市的走向。

 

所以,基于经济复苏的需要,实体经济可能还会继续降息,但楼市,恐怕很难再重演2009年和2015年的大水漫灌了。

◎本文作者 | 凯风