レコードフィールドクラス
Keeperシークレットマネージャー Go SDKで参照できる各フィールド型クラスの説明
Keeperシークレットマネージャー Go SDKでは、レコードフィールドは型付きのGoの構造体として表現されます。各フィールド型は基底型 KeeperRecordField を埋め込みます。
レコードフィールドへのアクセス
レコードフィールドには GetFieldsByType 関数を使用します。
GetFieldsByType の使い方
GetFieldsByType(fieldType string) []map[string]interface{}
指定した型に一致する標準フィールドをすべて、生のマップのスライスとして返します。自動デシリアライズは行われません。マップのキーと型アサーションで値にアクセスするか、型付き構造体へアンマーシャルします (例2: 電話・住所などの複合フィールド)。
// レコードからログインフィールドを取得
if loginFields := record.GetFieldsByType("login"); len(loginFields) > 0 {
loginField := loginFields[0]
// loginField は map[string]interface{} — キーで値にアクセス
if values, ok := loginField["value"].([]interface{}); ok && len(values) > 0 {
loginValue := values[0].(string)
fmt.Printf("Login: %s\n", loginValue)
}
}GetFieldValueByType の使い方 (シンプルに扱う場合)
import ksm "github.com/keeper-security/secrets-manager-go/core"
// ログイン値を直接取得
login := record.GetFieldValueByType("login")
fmt.Printf("Login: %s\n", login)
// パスワード値を取得
password := record.GetFieldValueByType("password")
fmt.Printf("Password: %s\n", password)フィールド型クラス参照
KeeperRecordField
すべてのレコードフィールドは KeeperRecordField を埋め込み、Label と Type のフィールドを持ちます。
フィールド値
Label
string
いいえ
""
Type
string
はい
""
Login
フィールド値
Label
string
いいえ
""
Required
bool
いいえ
false
PrivacyScreen
bool
いいえ
false
Value
[]string
はい
PasswordComplexity
フィールド値
Length
int
いいえ
0
パスワード全体の文字数
Caps
int
いいえ
0
大文字の最小文字数
Lowercase
int
いいえ
0
小文字の最小文字数
Digits
int
いいえ
0
数字の最小文字数
Special
int
いいえ
0
記号の最小文字数
Password.Complexity はポインタ型 (*PasswordComplexity) です。未設定のデフォルトは nil (複雑さポリシーなし) です。フィールドを設定する前に必ず割り当てます。
Password
フィールド値
名前
型
必須
デフォルト
Label
string
いいえ
""
Required
bool
いいえ
false
PrivacyScreen
bool
いいえ
false
EnforceGeneration
bool
いいえ
false
Value
[]string
はい
Url
フィールド値
Label
string
いいえ
""
Required
bool
いいえ
false
PrivacyScreen
bool
いいえ
false
Value
[]string
はい
FileRef
フィールド値
Label
string
いいえ
""
Required
bool
いいえ
false
Value
[]string
はい
OneTimeCode
フィールド値
Label
string
いいえ
""
Required
bool
いいえ
false
PrivacyScreen
bool
いいえ
false
Value
[]string
はい
OneTimePassword
JSONのフィールド型文字列は "otp" です (OneTimeCode の "oneTimeCode" とは別です)。
フィールド値
Label
string
いいえ
""
Required
bool
いいえ
false
PrivacyScreen
bool
いいえ
false
Value
[]string
はい
Name
フィールド値
First
string
いいえ
""
Middle
string
いいえ
""
Last
string
いいえ
""
Names
フィールド値
Label
string
いいえ
""
Required
bool
いいえ
false
PrivacyScreen
bool
いいえ
false
Value
[]Name
はい
BirthDate
フィールド値
Label
string
いいえ
""
Required
bool
いいえ
false
PrivacyScreen
bool
いいえ
false
Value
[]int64
はい
日付形式: 日付値は Unixエポックからのミリ秒 として格納されます。Go の time.Time との相互変換は以下のとおりです。
Date
フィールド値
Label
string
いいえ
""
Required
bool
いいえ
false
PrivacyScreen
bool
いいえ
false
Value
[]int64
はい
日付形式: 日付値は Unixエポックからのミリ秒 として格納されます。
BirthDate 見出し直下の注記にあるコード例を用いてください。
ExpirationDate
フィールド値
Label
string
いいえ
""
Required
bool
いいえ
false
PrivacyScreen
bool
いいえ
false
Value
[]int64
はい
日付形式: 日付値は Unixエポックからのミリ秒 として格納されます。
BirthDate 見出し直下の注記にあるコード例を用いてください。
Text
フィールド値
Label
string
いいえ
""
Required
bool
いいえ
false
PrivacyScreen
bool
いいえ
false
Value
[]string
はい
SecurityQuestion
フィールド値
Question
string
いいえ
""
Answer
string
いいえ
""
SecurityQuestions
フィールド値
名前
型
必須
デフォルト
Label
string
いいえ
""
Required
bool
いいえ
false
PrivacyScreen
bool
いいえ
false
Value
[]SecurityQuestion
はい
Multiline
フィールド値
Label
string
いいえ
""
Required
bool
いいえ
false
PrivacyScreen
bool
いいえ
false
Value
[]string
はい
フィールド値
Label
string
いいえ
""
Required
bool
いいえ
false
PrivacyScreen
bool
いいえ
false
Value
[]string
はい
CardRef
フィールド値
Label
string
いいえ
""
Required
bool
いいえ
false
PrivacyScreen
bool
いいえ
false
Value
[]string
はい
AddressRef
フィールド値
Label
string
いいえ
""
Required
bool
いいえ
false
PrivacyScreen
bool
いいえ
false
Value
[]string
はい
PinCode
フィールド値
Label
string
いいえ
""
Required
bool
いいえ
false
PrivacyScreen
bool
いいえ
false
Value
[]string
はい
Phone
フィールド値
Region
string
いいえ
""
Number
string
いいえ
""
Ext
string
いいえ
""
Type
string
いいえ
""
Phones
フィールド値
Label
string
いいえ
""
Required
bool
いいえ
false
PrivacyScreen
bool
いいえ
false
Value
[]Phone
はい
Secret
フィールド値
Label
string
いいえ
""
Required
bool
いいえ
false
PrivacyScreen
bool
いいえ
false
Value
[]string
はい
SecureNote
フィールド値
Label
string
いいえ
""
Required
bool
いいえ
false
PrivacyScreen
bool
いいえ
false
Value
[]string
はい
AccountNumber
フィールド値
Label
string
いいえ
""
Required
bool
いいえ
false
PrivacyScreen
bool
いいえ
false
Value
[]string
はい
PaymentCard
フィールド値
CardNumber
string
いいえ
""
CardExpirationDate
string
いいえ
""
CardSecurityCode
string
いいえ
""
PaymentCards
フィールド値
Label
string
いいえ
""
Required
bool
いいえ
false
PrivacyScreen
bool
いいえ
false
Value
[]PaymentCard
はい
BankAccount
フィールド値
AccountType
string
いいえ
""
RoutingNumber
string
いいえ
""
AccountNumber
string
いいえ
""
OtherType
string
いいえ
""
BankAccounts
フィールド値
Label
string
いいえ
""
Required
bool
いいえ
false
PrivacyScreen
bool
いいえ
false
Value
[]BankAccount
はい
KeyPair
PublicKey
string
いいえ
""
PrivateKey
string
いいえ
""
KeyPairs
フィールド値
Label
string
いいえ
""
Required
bool
いいえ
false
PrivacyScreen
bool
いいえ
false
Value
[]KeyPair
はい
Host
フィールド値
Hostname
string
いいえ
""
Port
string
いいえ
""
Hosts
フィールド値
Label
string
いいえ
""
Required
bool
いいえ
false
PrivacyScreen
bool
いいえ
false
Value
[]Host
はい
Address
フィールド値
Street1
string
いいえ
""
Street2
string
いいえ
""
City
string
いいえ
""
State
string
いいえ
""
Country
string
いいえ
""
Zip
string
いいえ
""
Addresses
フィールド値
Label
string
いいえ
""
Required
bool
いいえ
false
PrivacyScreen
bool
いいえ
false
Value
[]Address
はい
LicenseNumber
フィールド値
Label
string
いいえ
""
Required
bool
いいえ
false
PrivacyScreen
bool
いいえ
false
Value
[]string
はい
RecordRef
フィールド値
Label
string
いいえ
""
Required
bool
いいえ
false
Value
[]string
はい
Checkbox
フィールド値
Label
string
いいえ
""
Required
bool
いいえ
false
Value
[]bool
はい
Dropdown
フィールド値
Label
string
いいえ
""

