Jenkins のアクセス制御は、セキュリティ ドメイン (認証) と承認戦略に分かれています。 その中で、セキュリティ ドメインは、Jenkins 独自のユーザー データベース、LDAP、およびサーブレット コンテナー エージェントの 3 つの形式を取ることができます。 Jenkins固有のユーザーデータは、<JENKINS_HOME> /users/に保存されます。 各ユーザーの関連情報はconfig.xmlファイルに保存されます: <JENKINS_HOME>/users/ <user>/config.xml config.xmlファイルのpasswordHashノードでは、ユーザー名の暗号化された暗号文ハッシュ値を確認できます。 では、暗号化にはどのような暗号化方式が使用されるのでしょうか?暗号文を復号化して平文を取得することはできますか? GitHubでソースコードを表示し、キーワード#jbcryptを検索してHudsonPrivateSecurityRealm.javaファイルを見つけます。 HudsonPrivateSecurityRealm.java の詳細なパスは次のとおりです: jenkins/core/src/main/java/hudson/security/HudsonPrivateSecurityRealm.java ソースコードを分析すると、次のことがわかります。 1. 暗号文の形式は、salt: encPassです。#jbcryptは、saltがデータヘッダーとして使用されることを示します。 2. 平文はjbcryptアルゴリズムによって暗号文encPassに変換される jbcrypt について: jbcrypt は、bcrypt 暗号化ツールの Java 実装です。 API は非常にシンプルです。DEMO は次のとおりです。HudsonPrivateSecurityRealm.java では、暗号化と検証に次の API が使用されていることがわかります。
同じ平文をjbcryptで暗号化すると、ソルトが通常異なるため、暗号化された暗号文は一般的に異なることが検証されています。 bcrypt について: 1. bcrypt は不可逆な暗号化アルゴリズムであり、暗号文を復号化しても平文を取得することは不可能です。 2. bcrypt と他の対称または非対称暗号化方式の違いは、直接復号化して平文を取得することも、暗号文を 2 回暗号化して暗号文を比較することもないことです。代わりに、平文と保存された暗号文を一緒に計算して、別の暗号文を取得します。2 つの暗号文が同じであれば、検証は成功です。 要約すると、Jenkins 独自のユーザー データベースは jbcrypt を使用して暗号化されます。jbcrypt 暗号化は元に戻すことができず、同じプレーンテキストの暗号化結果は通常異なります。 この記事は http://my.oschina.net/donhui/blog/379925 から引用しました。 |
<<: 他の人たちが赤い封筒を掴んでいる間、プログラマーたちは赤い封筒のアルゴリズムを研究している
>>: WeChat JS-SDK-使用許可署名アルゴリズム
ユーザーがドローンを操作する方法を規制する法律が来週の木曜日(1月7日)に施行される。この法律はノル...
【51CTO.com 速訳】機械学習アルゴリズム入門機械学習アルゴリズムの分野では、分類には通常次の...
人工知能 (AI) とモノのインターネット (IoT) はどちらも、私たちの周りの世界で注目を集め始...
[[419510]]最近、ロシア人プログラマーが元雇用主を相手取り訴訟を起こし、職務の復職と精神的...
2020年の世界産業用ロボット産業の現状と競争環境の分析:アジア太平洋地域が世界最大の市場に1. 世...
[楊静卓のブログより引用]序文白黒写真の時代は過ぎ去りましたが、今、昔の写真を見ると、昔に戻ったよう...
最近、ZTEの南京浜江インテリジェント製造基地が設立されたのを見たとき、私はまったく喜びを感じません...
フィクションでも映画でも、人工知能は何十年にもわたって魅力的なテーマであり続けています。フィリップ・...
最近、Microsoft は、Microsoft AI プラットフォームを使用してインテリジェントな...
IoT カメラは、小売環境をより効率的かつ顧客に優しく、そして何よりもセキュリティと安全性を高めるこ...
一瞬のうちに、ロボットは魔法を使うことを覚えたのでしょうか?まず、テーブルの上の水のスプーンを手に取...