class OpenSSL::Config
クラスの継承リスト: OpenSSL::Config < Enumerable < Object < Kernel
要約
OpenSSL の設定ファイルを表すクラスです。
OpenSSL の設定ファイルは、キーと文字列を対応付けた単純な構造をしています。 また、キーはセクションによってグループ分けされています。 どのセクションにも属さないグローバルなキーを作ることもできます。
デフォルトの設定ファイルを読み込む例
require 'openssl' conf = OpenSSL::Config.load(OpenSSL::Config::DEFAULT_CONFIG_FILE) p conf.sections # => ["req_distinguished_name", "req_attributes", "proxy_cert_ext", "policy_anything", "CA_default", ...] p conf.get_value("", "HOME") # => "." p conf.get_value("CA_default", "default_days") # => "365"
特異メソッド
load(filename = nil) -> OpenSSL::Config
new(filename = nil) -> OpenSSL::Config
-
OpenSSL::Config オブジェクトを生成します。
filename で指定したファイルから設定データを読みこみます。
filename を省略した場合は空のオブジェクトが生成されます。
- [PARAM] filename:
- ファイル名文字列
- [EXCEPTION] OpenSSL::ConfigError:
- 設定ファイルの文法が正しくない場合に発生します
parse(str) -> OpenSSL::Config
-
文字列から OpenSSL::Config オブジェクトを生成します。
- [PARAM] str:
- 設定ファイルデータ
インスタンスメソッド
self[sec] -> {String => String}
section(sec) -> {String => String}
-
指定したセクションの設定情報をハッシュで返します。
ハッシュのキーが設定情報のキー、ハッシュの値が対応する情報となります。
section は obsolete です。[] を使ってください。
- [PARAM] sec:
- セクションを表す文字列
self[sec] = hashtbl
-
指定したセクションの設定情報を上書きします。
sec で変更するセクションを指定し、hashtbl は {キー文字列 => データ文字列} というハッシュで変更する情報を渡します。
hashtbl に含まれていないキーに対応する情報は変更されません。
- [PARAM] sec:
- セクションを表す文字列
- [PARAM] hashtbl:
- 設定する情報のハッシュ
add_value(section, name, value) -> String
-
section で指定したセクションにある name というキーの 情報を value に変更します。
指定した section が存在しない場合には新たにそのセクションが オブジェクト内に作られます。 指定した name が存在しない場合も同様に新たな領域が そのオブジェクト内に作られます。指定した name が存在した場合には 情報が上書きされます。
value を返します。
- [PARAM] section:
- セクションを表す文字列
- [PARAM] name:
- キーを表す文字列
- [PARAM] value:
- 変更後の値の文字列
- [EXCEPTION] OpenSSL::ConfigError:
- 設定に失敗した場合に発生します
each {|section, key, value| ... } -> self
-
オブジェクトに含まれる全ての設定情報を順にブロックに渡し 呼び出します。
渡される値は、セクションを表す文字列、キーを表す文字列、キーに 割り当てられた値の文字列、の3つです。
require 'openssl' conf = OpenSSL::Config.load(OpenSSL::Config::DEFAULT_CONFIG_FILE) conf.each{|section, key, value| p [section, key, value]} # => ["req_distinguished_name", "countryName", "Country Name (2 letter code)"] # => ["req_distinguished_name", "countryName_default", "AU"] # => ["req_distinguished_name", "countryName_min", "2"] # => :
get_value(section, name) -> String | nil
-
オブジェクトが持っている設定情報を返します。
キーに対応する設定情報がない場合は nil を返します。
- [PARAM] section:
- セクションを表す文字列。"" を渡すことでグローバルな設定情報を読むことができます。
- [PARAM] name:
- キーを表す文字列
sections -> [String]
-
オブジェクトに含まれる全てのセクション名の配列を返します。
to_s -> String
-
オブジェクトに含まれる設定情報を OpenSSL の設定ファイルの形式で 出力します。
value(name) -> String | nil
value(section, name) -> String | nil
-
このメソッドは obsolete です。
オブジェクトが持っている設定情報を返します。
引数が一つの場合はグローバルセクションの情報を返し、 2つの場合は section で指定したセクションの情報を返します。
- [PARAM] section:
- セクションを表す文字列
- [PARAM] name:
- キーを表す文字列
定数
DEFAULT_CONFIG_FILE -> String
-
デフォルトの設定ファイル名を返します。