ベース64エンコード
暗号化を提供しないため、十分なデータ保護を保証できないため、シークレットを保護するために本番環境での Base64 エンコードはお勧めしません。
パスワードをプレーン テキストで保存したくないものの、パスワードをエンコードするために特定の要件を満たす必要がないユーザーにはこのタイプのエンコーディングがおすすめです。
パスワードをエンコードする
この方法では、機密データを簡単に難読化する方法である Base64 エンコーディングを使用します。
ステップ 1. パスワードをエンコードする
データベース パスワードをエンコードする際は、以下のテーブルに記載されているように、いくつかのオプションの引数を指定できます。
引数 | 説明 |
---|---|
| 暗号の正規クラス名。初期設定を使用するには空のままにします: |
| これらのオプションの引数を表示するヘルプ メッセージを出力します。 |
| パスワードに対して暗号化(既定)または |
| 暗号化したいプレーンテキストのパスワード。このパラメーターを省略すると、コンソールからパスワードの入力を求められます。 |
| 最低限の情報をログに出力します。 |
データベース パスワードをエンコードするには、以下の手順に従います。
データベース パスワードをエンコードするには、次の手順に従います。
<Jira-installation-directory>/bin
に移動します。次のコマンドを実行してパスワードをエンコードします。上に示すオプションの引数も使用できます。
java -cp "./*" com.atlassian.secrets.cli.db.DbCipherTool
このコマンドを実行すると、次のような出力が表示されます。
2023-10-10 03:58:01,548 main INFO [com.atlassian.secrets.DefaultSecretStoreProvider] Initiating secret store class: com.atlassian.secrets.store.base64.Base64SecretStore 2023-10-10 03:58:01,568 main DEBUG [secrets.store.base64.Base64SecretStore] Initiate Base64Cipher 2023-10-10 03:58:01,583 main DEBUG [secrets.store.base64.Base64SecretStore] Encrypting data... 2023-10-10 03:58:01,585 main DEBUG [secrets.store.base64.Base64SecretStore] Encryption done. Success! For Jira, set the following properties in dbconfig.xml: <atlassian-password-cipher-provider>com.atlassian.secrets.store.base64.Base64SecretStore</atlassian-password-cipher-provider> <password>c2VjcmV0</password> For Bitbucket, set the following properties in bitbucket.properties: jdbc.password.decrypter.classname=com.atlassian.secrets.store.base64.Base64SecretStore jdbc.password=c2VjcmV0 For Bamboo, set the following properties in bamboo.cfg.xml: <property name="jdbc.password.decrypter.classname">com.atlassian.secrets.store.base64.Base64SecretStore</property> <property name="hibernate.connection.password">c2VjcmV0</property> For Confluence, set the following properties in confluence.cfg.xml: <property name="jdbc.password.decrypter.classname">com.atlassian.secrets.store.base64.Base64SecretStore</property> <property name="hibernate.connection.password">c2VjcmV0</property>
ステップ 2. エンコードしたパスワードを dbconfig.xml に追加する
エンコードされたパスワードを追加する方法。
<home-directory>/dbconfig.xml
ファイルをバックアップします。バックアップをインスタンスの外部の安全な場所に移動します。dbconfig.xml
ファイルで、次の内容を含むように<atlassian-password-cipher-provider>
プロパティを追加または変更します。com.atlassian.secrets.store.base64.Base64SecretStore
dbconfig.xml
ファイルで、<password>
プロパティを追加または変更して、Base64 エンコードの値を含めます。c2VjcmV0
更新が完了したら、
dbconfig.xml
に次の内容が含まれていることを確認します。<atlassian-password-cipher-provider>com.atlassian.secrets.store.base64.Base64SecretStore</atlassian-password-cipher-provider> <password>c2VjcmV0</password>
Jira を再起動します。
パスワードをデコードする
パスワードをデコードする方法。
-m decrypt
パラメーターでコマンドを拡張します。java -cp "./*" com.atlassian.secrets.cli.db.DbCipherTool -m decrypt
パスワードを求められたら、
dbconfig.xml
ファイルから暗号化されたパスワードを指定します。2023-10-10 04:57:22,330 main INFO [com.atlassian.secrets.DefaultSecretStoreProvider] Initiating secret store class: com.atlassian.secrets.store.base64.Base64SecretStore 2023-10-10 04:57:22,345 main DEBUG [secrets.store.base64.Base64SecretStore] Initiate Base64Cipher 2023-10-10 04:57:22,360 main DEBUG [secrets.store.base64.Base64SecretStore] Decrypting data... 2023-10-10 04:57:22,364 main DEBUG [secrets.store.base64.Base64SecretStore] Decryption done. Success! Decrypted password using cipher provider: com.atlassian.secrets.store.base64.Base64SecretStore decrypted password: secret