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
[permalink][rdoc]new(filename = nil) -> OpenSSL::Config
OpenSSL::Config オブジェクトを生成します。
filename で指定したファイルから設定データを読みこみます。
filename を省略した場合は空のオブジェクトが生成されます。
parse(str) -> OpenSSL::Config
[permalink][rdoc]文字列から OpenSSL::Config オブジェクトを生成します。
self[sec] -> {String => String}
[permalink][rdoc]section(sec) -> {String => String}
指定したセクションの設定情報をハッシュで返します。
ハッシュのキーが設定情報のキー、ハッシュの値が対応する情報となります。
section は obsolete です。[] を使ってください。
self[sec] = hashtbl
[permalink][rdoc]指定したセクションの設定情報を上書きします。
sec で変更するセクションを指定し、hashtbl は {キー文字列 => データ文字列} というハッシュで変更する情報を渡します。
hashtbl に含まれていないキーに対応する情報は変更されません。
add_value(section, name, value) -> String
[permalink][rdoc]section で指定したセクションにある name というキーの情報を value に変更します。
指定した section が存在しない場合には新たにそのセクションがオブジェクト内に作られます。指定した name が存在しない場合も同様に新たな領域がそのオブジェクト内に作られます。指定した name が存在した場合には情報が上書きされます。
value を返します。
each {|section, key, value| ... } -> self
[permalink][rdoc]オブジェクトに含まれる全ての設定情報を順にブロックに渡し呼び出します。
渡される値は、セクションを表す文字列、キーを表す文字列、キーに割り当てられた値の文字列、の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
[permalink][rdoc]オブジェクトが持っている設定情報を返します。
キーに対応する設定情報がない場合は nil を返します。
sections -> [String]
[permalink][rdoc]オブジェクトに含まれる全てのセクション名の配列を返します。
to_s -> String
[permalink][rdoc]オブジェクトに含まれる設定情報を OpenSSL の設定ファイルの形式で出力します。
value(name) -> String | nil
[permalink][rdoc]value(section, name) -> String | nil
このメソッドは obsolete です。
オブジェクトが持っている設定情報を返します。
引数が一つの場合はグローバルセクションの情報を返し、 2つの場合は section で指定したセクションの情報を返します。
DEFAULT_CONFIG_FILE -> String
[permalink][rdoc]デフォルトの設定ファイル名を返します。