1 // Copyright 2022-2025 The sacloud/iaas-api-go Authors
2 //
3 // Licensed under the Apache License, Version 2.0 (the "License");
4 // you may not use this file except in compliance with the License.
5 // You may obtain a copy of the License at
6 //
7 // http://www.apache.org/licenses/LICENSE-2.0
8 //
9 // Unless required by applicable law or agreed to in writing, software
10 // distributed under the License is distributed on an "AS IS" BASIS,
11 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 // See the License for the specific language governing permissions and
13 // limitations under the License.
14 15 package naked
16 17 import (
18 "time"
19 20 "github.com/sacloud/iaas-api-go/types"
21 )
22 23 // SSHKey 公開鍵
24 type SSHKey struct {
25 ID types.ID `json:",omitempty" yaml:"id,omitempty" structs:",omitempty"`
26 Name string `json:",omitempty" yaml:"name,omitempty" structs:",omitempty"`
27 Description string `yaml:"description"`
28 CreatedAt *time.Time `json:",omitempty" yaml:"created_at,omitempty" structs:",omitempty"`
29 PublicKey string `json:",omitempty" yaml:"public_key,omitempty" structs:",omitempty"` // 公開鍵
30 PrivateKey string `json:",omitempty" yaml:"public_key,omitempty" structs:",omitempty"` // 秘密鍵、API側での鍵生成時のみセットされる
31 Fingerprint string `json:",omitempty" yaml:"fingerprint,omitempty" structs:",omitempty"` // フィンガープリント
32 33 GenerateFormat string `json:",omitempty" yaml:"generate_format,omitempty" structs:",omitempty"` // 鍵生成時のみ利用(openssh固定)
34 PassPhrase string `json:",omitempty" yaml:"pass_phrase,omitempty" structs:",omitempty"` // 鍵生成時のみ利用
35 }
36