情報セキュリティ

基本情報技術者試験I社の業務アプリは、データベースへ接続するためのIDとパスワードを、プログラムのソースコード中に文字列としてその…

情報セキュリティ情報セキュリティ難易度:normal
I社の業務アプリは、データベースへ接続するためのIDとパスワードを、プログラムのソースコード中に文字列としてそのまま記述している。このソースコードはバージョン管理システムで全開発者が閲覧できる。認証情報の保管方法として、最も適切な改善策はどれか。
認証情報はコード中に残したまま、推測されにくいよう変数名だけを目立たないものに変える。
認証情報を別の設定ファイルへ平文で切り出し、コードからはそれを読み込んで使う。
認証情報はコード外の秘密情報管理の仕組みに預け、実行時に限って取り出して使う。
認証情報はコメントアウトしてコードに残し、使うときだけ有効化する運用にする。
正解
ウ.認証情報はコード外の秘密情報管理の仕組みに預け、実行時に限って取り出して使う。

認証情報をソースコードに直書きすると、バージョン管理システムを閲覧できる全開発者や、リポジトリが流出した際の第三者に露出してしまう。コードと分離した秘密情報管理(シークレットマネージャや環境変数による注入)に保管し、実行時にだけ取得して使う方式にすれば、コードや履歴に秘密が残らず、アクセス権限の制御も行える。

?選択肢ごとの解説

ア ×変数名を変えても認証情報の文字列自体はコード中に残り閲覧可能なため、漏えいリスクは実質的に変わらず改善にならない。
イ ×別ファイルへ移しても平文でバージョン管理に含まれれば、結局同じく全開発者や流出時に読まれてしまい、根本的な分離になっていない。
ウ ○認証情報をソースコードに直書きすると、バージョン管理システムを閲覧できる全開発者や、リポジトリが流出した際の第三者に露出してしまう。コードと分離した秘密情報管理(シークレットマネージャや環境変数による注入)に保管し、実行時にだけ取得して使う方式にすれば、コードや履歴に秘密が残らず、アクセス権限の制御も行える。
エ ×コメントアウトしてもコード(および履歴)に文字列が残るため、閲覧やリポジトリ流出による漏えいを防げない。
この問題の「深掘り・誤答の完全解説・覚え方」は、登録すると読めます。

基本情報技術者試験は全4,036問。公開しているのはその一部で、登録すると残りも一問ごとにAI解説つきで解けます。SRS暗記カード・全真模試・弱点診断まで。

登録は1分・クレジットカード不要。無料のまま練習・暗記カード・模試まで使えます。

作成・校閲:ukamiru編集部 · 基本情報技術者試験 過去問 · fe-b-sec-0069

【基本情報技術者試験】I社の業務アプリは、データベースへ接続するためのIDとパスワ…|正解「認証情報はコード外の秘密情報…」|ukamiru 過去問