snapshot of https://github.com/grpc/grpc-go.git (master, 2026-09-15; blobs > 131072B omitted)
Some checks failed
codecov / upload (push) Failing after 13m59s
CodeQL / Analyze (push) Failing after 1s
govulncheck / govulncheck (.) (push) Failing after 1s
govulncheck / govulncheck (./cmd/protoc-gen-go-grpc) (push) Failing after 1s
govulncheck / govulncheck (./gcp/observability) (push) Failing after 1s
govulncheck / govulncheck (./security/advancedtls) (push) Failing after 1s
govulncheck / govulncheck (./stats/opencensus) (push) Failing after 1s
Testing / vet-proto (push) Failing after 1s
Testing / tests (arm, latest) (push) Waiting to run
Testing / extras (latest) (push) Failing after 1s
Testing / static checks (latest-1) (push) Failing after 1s
Testing / tests (-race, latest) (push) Failing after 1s
Testing / tests (i386, latest) (push) Failing after 1s
Testing / tests (latest) (push) Failing after 1s
Testing / tests (latest-1) (push) Failing after 1s
Lock Threads / lock (push) Failing after 1s
Stale bot / stale (push) Failing after 1s
Some checks failed
codecov / upload (push) Failing after 13m59s
CodeQL / Analyze (push) Failing after 1s
govulncheck / govulncheck (.) (push) Failing after 1s
govulncheck / govulncheck (./cmd/protoc-gen-go-grpc) (push) Failing after 1s
govulncheck / govulncheck (./gcp/observability) (push) Failing after 1s
govulncheck / govulncheck (./security/advancedtls) (push) Failing after 1s
govulncheck / govulncheck (./stats/opencensus) (push) Failing after 1s
Testing / vet-proto (push) Failing after 1s
Testing / tests (arm, latest) (push) Waiting to run
Testing / extras (latest) (push) Failing after 1s
Testing / static checks (latest-1) (push) Failing after 1s
Testing / tests (-race, latest) (push) Failing after 1s
Testing / tests (i386, latest) (push) Failing after 1s
Testing / tests (latest) (push) Failing after 1s
Testing / tests (latest-1) (push) Failing after 1s
Lock Threads / lock (push) Failing after 1s
Stale bot / stale (push) Failing after 1s
This commit is contained in:
3
testdata/README.md
vendored
Normal file
3
testdata/README.md
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
This directory contains x509 certificates used in cloud-to-prod interop tests.
|
||||
For tests within gRPC-Go repo, please use the files in testdata/x509
|
||||
directory.
|
||||
20
testdata/ca.pem
vendored
Normal file
20
testdata/ca.pem
vendored
Normal file
@@ -0,0 +1,20 @@
|
||||
-----BEGIN CERTIFICATE-----
|
||||
MIIDWjCCAkKgAwIBAgIUWrP0VvHcy+LP6UuYNtiL9gBhD5owDQYJKoZIhvcNAQEL
|
||||
BQAwVjELMAkGA1UEBhMCQVUxEzARBgNVBAgMClNvbWUtU3RhdGUxITAfBgNVBAoM
|
||||
GEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZDEPMA0GA1UEAwwGdGVzdGNhMB4XDTIw
|
||||
MDMxNzE4NTk1MVoXDTMwMDMxNTE4NTk1MVowVjELMAkGA1UEBhMCQVUxEzARBgNV
|
||||
BAgMClNvbWUtU3RhdGUxITAfBgNVBAoMGEludGVybmV0IFdpZGdpdHMgUHR5IEx0
|
||||
ZDEPMA0GA1UEAwwGdGVzdGNhMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
|
||||
AQEAsGL0oXflF0LzoM+Bh+qUU9yhqzw2w8OOX5mu/iNCyUOBrqaHi7mGHx73GD01
|
||||
diNzCzvlcQqdNIH6NQSL7DTpBjca66jYT9u73vZe2MDrr1nVbuLvfu9850cdxiUO
|
||||
Inv5xf8+sTHG0C+a+VAvMhsLiRjsq+lXKRJyk5zkbbsETybqpxoJ+K7CoSy3yc/k
|
||||
QIY3TipwEtwkKP4hzyo6KiGd/DPexie4nBUInN3bS1BUeNZ5zeaIC2eg3bkeeW7c
|
||||
qT55b+Yen6CxY0TEkzBK6AKt/WUialKMgT0wbTxRZO7kUCH3Sq6e/wXeFdJ+HvdV
|
||||
LPlAg5TnMaNpRdQih/8nRFpsdwIDAQABoyAwHjAMBgNVHRMEBTADAQH/MA4GA1Ud
|
||||
DwEB/wQEAwICBDANBgkqhkiG9w0BAQsFAAOCAQEAkTrKZjBrJXHps/HrjNCFPb5a
|
||||
THuGPCSsepe1wkKdSp1h4HGRpLoCgcLysCJ5hZhRpHkRihhef+rFHEe60UePQO3S
|
||||
CVTtdJB4CYWpcNyXOdqefrbJW5QNljxgi6Fhvs7JJkBqdXIkWXtFk2eRgOIP2Eo9
|
||||
/OHQHlYnwZFrk6sp4wPyR+A95S0toZBcyDVz7u+hOW0pGK3wviOe9lvRgj/H3Pwt
|
||||
bewb0l+MhRig0/DVHamyVxrDRbqInU1/GTNCwcZkXKYFWSf92U+kIcTth24Q1gcw
|
||||
eZiLl5FfrWokUNytFElXob0V0a5/kbhiLc3yWmvWqHTpqCALbVyF+rKJo2f5Kw==
|
||||
-----END CERTIFICATE-----
|
||||
12
testdata/grpc_testing_not_regenerated/README.md
vendored
Normal file
12
testdata/grpc_testing_not_regenerated/README.md
vendored
Normal file
@@ -0,0 +1,12 @@
|
||||
`testv3.go` was generated with an older version of codegen, to test reflection
|
||||
behavior with `grpc.SupportPackageIsVersion3`. DO NOT REGENERATE!
|
||||
|
||||
`testv3.go` was then manually edited to replace `"golang.org/x/net/context"`
|
||||
with `"context"`.
|
||||
|
||||
`dynamic.go` was generated with a newer protoc and manually edited to remove
|
||||
everything except the descriptor bytes var, which is renamed and exported.
|
||||
|
||||
`simple_message_v1.go` was generated using protoc-gen-go v1.3.5 which doesn't
|
||||
support the MesssageV2 API. As a result the generated code implements only the
|
||||
old MessageV1 API.
|
||||
35
testdata/grpc_testing_not_regenerated/dynamic.go
vendored
Normal file
35
testdata/grpc_testing_not_regenerated/dynamic.go
vendored
Normal file
@@ -0,0 +1,35 @@
|
||||
/*
|
||||
* Copyright 2022 gRPC authors.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*
|
||||
*/
|
||||
|
||||
package grpc_testing_not_regenerated
|
||||
|
||||
// FileDynamicProtoRawDesc is the descriptor for dynamic.proto, see README.md.
|
||||
var FileDynamicProtoRawDesc = []byte{
|
||||
0x0a, 0x0d, 0x64, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12,
|
||||
0x0c, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x67, 0x22, 0x0c, 0x0a,
|
||||
0x0a, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x52, 0x65, 0x73, 0x22, 0x0c, 0x0a, 0x0a, 0x44,
|
||||
0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x52, 0x65, 0x71, 0x32, 0x57, 0x0a, 0x0e, 0x44, 0x79, 0x6e,
|
||||
0x61, 0x6d, 0x69, 0x63, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x45, 0x0a, 0x0f, 0x44,
|
||||
0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x31, 0x12, 0x18,
|
||||
0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x67, 0x2e, 0x44, 0x79,
|
||||
0x6e, 0x61, 0x6d, 0x69, 0x63, 0x52, 0x65, 0x71, 0x1a, 0x18, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e,
|
||||
0x74, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x67, 0x2e, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x52,
|
||||
0x65, 0x73, 0x42, 0x2c, 0x5a, 0x2a, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x67, 0x6f, 0x6c,
|
||||
0x61, 0x6e, 0x67, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x67, 0x72, 0x70, 0x63, 0x2f, 0x72, 0x65, 0x66,
|
||||
0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x74, 0x65, 0x73, 0x74, 0x64, 0x61, 0x74, 0x61,
|
||||
0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
|
||||
}
|
||||
33
testdata/grpc_testing_not_regenerated/dynamic.proto
vendored
Normal file
33
testdata/grpc_testing_not_regenerated/dynamic.proto
vendored
Normal file
@@ -0,0 +1,33 @@
|
||||
/*
|
||||
* Copyright 2022 gRPC authors.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*
|
||||
*/
|
||||
|
||||
syntax = "proto3";
|
||||
|
||||
package grpc.testing;
|
||||
|
||||
option go_package = "google.golang.org/grpc/testdata/grpc_testing_not_regenerated";
|
||||
|
||||
message DynamicRes {}
|
||||
|
||||
message DynamicReq {}
|
||||
|
||||
// DynamicService is used to test reflection on dynamically constructed protocol
|
||||
// buffer messages.
|
||||
service DynamicService {
|
||||
// DynamicMessage1 is a test RPC for dynamically constructed protobufs.
|
||||
rpc DynamicMessage1(DynamicReq) returns (DynamicRes);
|
||||
}
|
||||
27
testdata/grpc_testing_not_regenerated/simple.proto
vendored
Normal file
27
testdata/grpc_testing_not_regenerated/simple.proto
vendored
Normal file
@@ -0,0 +1,27 @@
|
||||
/*
|
||||
* Copyright 2024 gRPC authors.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*
|
||||
*/
|
||||
|
||||
syntax = "proto3";
|
||||
|
||||
package grpc.testdata.grpc_testing_not_regenerated;
|
||||
|
||||
option go_package = "google.golang.org/grpc/testdata/grpc_testing_not_regenerated";
|
||||
|
||||
// SimpleMessage is used to hold string data.
|
||||
message SimpleMessage {
|
||||
string data = 1;
|
||||
}
|
||||
83
testdata/grpc_testing_not_regenerated/simple_message_v1.go
vendored
Normal file
83
testdata/grpc_testing_not_regenerated/simple_message_v1.go
vendored
Normal file
@@ -0,0 +1,83 @@
|
||||
// Code generated by protoc-gen-go. DO NOT EDIT.
|
||||
// source: simple.proto
|
||||
|
||||
package grpc_testing_not_regenerated
|
||||
|
||||
import (
|
||||
fmt "fmt"
|
||||
math "math"
|
||||
|
||||
proto "github.com/golang/protobuf/proto"
|
||||
)
|
||||
|
||||
// Reference imports to suppress errors if they are not otherwise used.
|
||||
var _ = proto.Marshal
|
||||
var _ = fmt.Errorf
|
||||
var _ = math.Inf
|
||||
|
||||
// This is a compile-time assertion to ensure that this generated file
|
||||
// is compatible with the proto package it is being compiled against.
|
||||
// A compilation error at this line likely means your copy of the
|
||||
// proto package needs to be updated.
|
||||
const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
|
||||
|
||||
// SimpleMessage is used to hold string data.
|
||||
type SimpleMessage struct {
|
||||
Data string `protobuf:"bytes,1,opt,name=data,proto3" json:"data,omitempty"`
|
||||
XXX_NoUnkeyedLiteral struct{} `json:"-"`
|
||||
XXX_unrecognized []byte `json:"-"`
|
||||
XXX_sizecache int32 `json:"-"`
|
||||
}
|
||||
|
||||
func (m *SimpleMessage) Reset() { *m = SimpleMessage{} }
|
||||
func (m *SimpleMessage) String() string { return proto.CompactTextString(m) }
|
||||
func (*SimpleMessage) ProtoMessage() {}
|
||||
func (*SimpleMessage) Descriptor() ([]byte, []int) {
|
||||
return fileDescriptor_5ffd045dd4d042c1, []int{0}
|
||||
}
|
||||
|
||||
func (m *SimpleMessage) XXX_Unmarshal(b []byte) error {
|
||||
return xxx_messageInfo_SimpleMessage.Unmarshal(m, b)
|
||||
}
|
||||
func (m *SimpleMessage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
|
||||
return xxx_messageInfo_SimpleMessage.Marshal(b, m, deterministic)
|
||||
}
|
||||
func (m *SimpleMessage) XXX_Merge(src proto.Message) {
|
||||
xxx_messageInfo_SimpleMessage.Merge(m, src)
|
||||
}
|
||||
func (m *SimpleMessage) XXX_Size() int {
|
||||
return xxx_messageInfo_SimpleMessage.Size(m)
|
||||
}
|
||||
func (m *SimpleMessage) XXX_DiscardUnknown() {
|
||||
xxx_messageInfo_SimpleMessage.DiscardUnknown(m)
|
||||
}
|
||||
|
||||
var xxx_messageInfo_SimpleMessage proto.InternalMessageInfo
|
||||
|
||||
func (m *SimpleMessage) GetData() string {
|
||||
if m != nil {
|
||||
return m.Data
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
func init() {
|
||||
proto.RegisterType((*SimpleMessage)(nil), "grpc.testdata.grpc_testing_not_regenerated.SimpleMessage")
|
||||
}
|
||||
|
||||
func init() {
|
||||
proto.RegisterFile("simple.proto", fileDescriptor_5ffd045dd4d042c1)
|
||||
}
|
||||
|
||||
var fileDescriptor_5ffd045dd4d042c1 = []byte{
|
||||
// 142 bytes of a gzipped FileDescriptorProto
|
||||
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe2, 0xe2, 0x29, 0xce, 0xcc, 0x2d,
|
||||
0xc8, 0x49, 0xd5, 0x2b, 0x28, 0xca, 0x2f, 0xc9, 0x17, 0xd2, 0x4a, 0x2f, 0x2a, 0x48, 0xd6, 0x2b,
|
||||
0x49, 0x2d, 0x2e, 0x49, 0x49, 0x2c, 0x49, 0xd4, 0x03, 0xf1, 0xe2, 0x41, 0xbc, 0xcc, 0xbc, 0xf4,
|
||||
0xf8, 0xbc, 0xfc, 0x92, 0xf8, 0xa2, 0xd4, 0xf4, 0xd4, 0xbc, 0xd4, 0xa2, 0xc4, 0x92, 0xd4, 0x14,
|
||||
0x25, 0x65, 0x2e, 0xde, 0x60, 0xb0, 0x5e, 0xdf, 0xd4, 0xe2, 0xe2, 0xc4, 0xf4, 0x54, 0x21, 0x21,
|
||||
0x2e, 0x16, 0x90, 0x2e, 0x09, 0x46, 0x05, 0x46, 0x0d, 0xce, 0x20, 0x30, 0xdb, 0xc9, 0x2e, 0xca,
|
||||
0x26, 0x3d, 0x3f, 0x3f, 0x3d, 0x27, 0x55, 0x2f, 0x3d, 0x3f, 0x27, 0x31, 0x2f, 0x5d, 0x2f, 0xbf,
|
||||
0x28, 0x5d, 0x1f, 0x64, 0xac, 0x3e, 0xcc, 0x12, 0x7d, 0x7c, 0x96, 0x24, 0xb1, 0x81, 0xdd, 0x65,
|
||||
0x0c, 0x08, 0x00, 0x00, 0xff, 0xff, 0x2c, 0x80, 0xd6, 0x07, 0xa7, 0x00, 0x00, 0x00,
|
||||
}
|
||||
476
testdata/grpc_testing_not_regenerated/testv3.go
vendored
Normal file
476
testdata/grpc_testing_not_regenerated/testv3.go
vendored
Normal file
@@ -0,0 +1,476 @@
|
||||
/*
|
||||
* Copyright 2022 gRPC authors.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*
|
||||
*/
|
||||
|
||||
// Code generated by protoc-gen-go.
|
||||
// source: testv3.proto
|
||||
// DO NOT EDIT!
|
||||
|
||||
/*
|
||||
Package grpc_testing_not_regenerated is a generated protocol buffer package.
|
||||
|
||||
It is generated from these files:
|
||||
|
||||
testv3.proto
|
||||
|
||||
It has these top-level messages:
|
||||
|
||||
SearchResponseV3
|
||||
SearchRequestV3
|
||||
*/
|
||||
package grpc_testing_not_regenerated
|
||||
|
||||
import (
|
||||
context "context"
|
||||
fmt "fmt"
|
||||
math "math"
|
||||
|
||||
proto "github.com/golang/protobuf/proto"
|
||||
grpc "google.golang.org/grpc"
|
||||
)
|
||||
|
||||
// Reference imports to suppress errors if they are not otherwise used.
|
||||
var _ = proto.Marshal
|
||||
var _ = fmt.Errorf
|
||||
var _ = math.Inf
|
||||
|
||||
// This is a compile-time assertion to ensure that this generated file
|
||||
// is compatible with the proto package it is being compiled against.
|
||||
// A compilation error at this line likely means your copy of the
|
||||
// proto package needs to be updated.
|
||||
const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package
|
||||
|
||||
type SearchResponseV3_State int32
|
||||
|
||||
const (
|
||||
SearchResponseV3_UNKNOWN SearchResponseV3_State = 0
|
||||
SearchResponseV3_FRESH SearchResponseV3_State = 1
|
||||
SearchResponseV3_STALE SearchResponseV3_State = 2
|
||||
)
|
||||
|
||||
var SearchResponseV3_State_name = map[int32]string{
|
||||
0: "UNKNOWN",
|
||||
1: "FRESH",
|
||||
2: "STALE",
|
||||
}
|
||||
var SearchResponseV3_State_value = map[string]int32{
|
||||
"UNKNOWN": 0,
|
||||
"FRESH": 1,
|
||||
"STALE": 2,
|
||||
}
|
||||
|
||||
func (x SearchResponseV3_State) String() string {
|
||||
return proto.EnumName(SearchResponseV3_State_name, int32(x))
|
||||
}
|
||||
func (SearchResponseV3_State) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{0, 0} }
|
||||
|
||||
type SearchResponseV3 struct {
|
||||
Results []*SearchResponseV3_Result `protobuf:"bytes,1,rep,name=results" json:"results,omitempty"`
|
||||
State SearchResponseV3_State `protobuf:"varint,2,opt,name=state,enum=grpc.testingv3.SearchResponseV3_State" json:"state,omitempty"`
|
||||
}
|
||||
|
||||
func (m *SearchResponseV3) Reset() { *m = SearchResponseV3{} }
|
||||
func (m *SearchResponseV3) String() string { return proto.CompactTextString(m) }
|
||||
func (*SearchResponseV3) ProtoMessage() {}
|
||||
func (*SearchResponseV3) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{0} }
|
||||
|
||||
func (m *SearchResponseV3) GetResults() []*SearchResponseV3_Result {
|
||||
if m != nil {
|
||||
return m.Results
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func (m *SearchResponseV3) GetState() SearchResponseV3_State {
|
||||
if m != nil {
|
||||
return m.State
|
||||
}
|
||||
return SearchResponseV3_UNKNOWN
|
||||
}
|
||||
|
||||
type SearchResponseV3_Result struct {
|
||||
Url string `protobuf:"bytes,1,opt,name=url" json:"url,omitempty"`
|
||||
Title string `protobuf:"bytes,2,opt,name=title" json:"title,omitempty"`
|
||||
Snippets []string `protobuf:"bytes,3,rep,name=snippets" json:"snippets,omitempty"`
|
||||
Metadata map[string]*SearchResponseV3_Result_Value `protobuf:"bytes,4,rep,name=metadata" json:"metadata,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
|
||||
}
|
||||
|
||||
func (m *SearchResponseV3_Result) Reset() { *m = SearchResponseV3_Result{} }
|
||||
func (m *SearchResponseV3_Result) String() string { return proto.CompactTextString(m) }
|
||||
func (*SearchResponseV3_Result) ProtoMessage() {}
|
||||
func (*SearchResponseV3_Result) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{0, 0} }
|
||||
|
||||
func (m *SearchResponseV3_Result) GetUrl() string {
|
||||
if m != nil {
|
||||
return m.Url
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
func (m *SearchResponseV3_Result) GetTitle() string {
|
||||
if m != nil {
|
||||
return m.Title
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
func (m *SearchResponseV3_Result) GetSnippets() []string {
|
||||
if m != nil {
|
||||
return m.Snippets
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func (m *SearchResponseV3_Result) GetMetadata() map[string]*SearchResponseV3_Result_Value {
|
||||
if m != nil {
|
||||
return m.Metadata
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
type SearchResponseV3_Result_Value struct {
|
||||
// Types that are valid to be assigned to Val:
|
||||
// *SearchResponseV3_Result_Value_Str
|
||||
// *SearchResponseV3_Result_Value_Int
|
||||
// *SearchResponseV3_Result_Value_Real
|
||||
Val isSearchResponseV3_Result_Value_Val `protobuf_oneof:"val"`
|
||||
}
|
||||
|
||||
func (m *SearchResponseV3_Result_Value) Reset() { *m = SearchResponseV3_Result_Value{} }
|
||||
func (m *SearchResponseV3_Result_Value) String() string { return proto.CompactTextString(m) }
|
||||
func (*SearchResponseV3_Result_Value) ProtoMessage() {}
|
||||
func (*SearchResponseV3_Result_Value) Descriptor() ([]byte, []int) {
|
||||
return fileDescriptor0, []int{0, 0, 0}
|
||||
}
|
||||
|
||||
type isSearchResponseV3_Result_Value_Val interface {
|
||||
isSearchResponseV3_Result_Value_Val()
|
||||
}
|
||||
|
||||
type SearchResponseV3_Result_Value_Str struct {
|
||||
Str string `protobuf:"bytes,1,opt,name=str,oneof"`
|
||||
}
|
||||
type SearchResponseV3_Result_Value_Int struct {
|
||||
Int int64 `protobuf:"varint,2,opt,name=int,oneof"`
|
||||
}
|
||||
type SearchResponseV3_Result_Value_Real struct {
|
||||
Real float64 `protobuf:"fixed64,3,opt,name=real,oneof"`
|
||||
}
|
||||
|
||||
func (*SearchResponseV3_Result_Value_Str) isSearchResponseV3_Result_Value_Val() {}
|
||||
func (*SearchResponseV3_Result_Value_Int) isSearchResponseV3_Result_Value_Val() {}
|
||||
func (*SearchResponseV3_Result_Value_Real) isSearchResponseV3_Result_Value_Val() {}
|
||||
|
||||
func (m *SearchResponseV3_Result_Value) GetVal() isSearchResponseV3_Result_Value_Val {
|
||||
if m != nil {
|
||||
return m.Val
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func (m *SearchResponseV3_Result_Value) GetStr() string {
|
||||
if x, ok := m.GetVal().(*SearchResponseV3_Result_Value_Str); ok {
|
||||
return x.Str
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
func (m *SearchResponseV3_Result_Value) GetInt() int64 {
|
||||
if x, ok := m.GetVal().(*SearchResponseV3_Result_Value_Int); ok {
|
||||
return x.Int
|
||||
}
|
||||
return 0
|
||||
}
|
||||
|
||||
func (m *SearchResponseV3_Result_Value) GetReal() float64 {
|
||||
if x, ok := m.GetVal().(*SearchResponseV3_Result_Value_Real); ok {
|
||||
return x.Real
|
||||
}
|
||||
return 0
|
||||
}
|
||||
|
||||
// XXX_OneofFuncs is for the internal use of the proto package.
|
||||
func (*SearchResponseV3_Result_Value) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) {
|
||||
return _SearchResponseV3_Result_Value_OneofMarshaler, _SearchResponseV3_Result_Value_OneofUnmarshaler, _SearchResponseV3_Result_Value_OneofSizer, []interface{}{
|
||||
(*SearchResponseV3_Result_Value_Str)(nil),
|
||||
(*SearchResponseV3_Result_Value_Int)(nil),
|
||||
(*SearchResponseV3_Result_Value_Real)(nil),
|
||||
}
|
||||
}
|
||||
|
||||
func _SearchResponseV3_Result_Value_OneofMarshaler(msg proto.Message, b *proto.Buffer) error {
|
||||
m := msg.(*SearchResponseV3_Result_Value)
|
||||
// val
|
||||
switch x := m.Val.(type) {
|
||||
case *SearchResponseV3_Result_Value_Str:
|
||||
b.EncodeVarint(1<<3 | proto.WireBytes)
|
||||
b.EncodeStringBytes(x.Str)
|
||||
case *SearchResponseV3_Result_Value_Int:
|
||||
b.EncodeVarint(2<<3 | proto.WireVarint)
|
||||
b.EncodeVarint(uint64(x.Int))
|
||||
case *SearchResponseV3_Result_Value_Real:
|
||||
b.EncodeVarint(3<<3 | proto.WireFixed64)
|
||||
b.EncodeFixed64(math.Float64bits(x.Real))
|
||||
case nil:
|
||||
default:
|
||||
return fmt.Errorf("SearchResponseV3_Result_Value.Val has unexpected type %T", x)
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func _SearchResponseV3_Result_Value_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) {
|
||||
m := msg.(*SearchResponseV3_Result_Value)
|
||||
switch tag {
|
||||
case 1: // val.str
|
||||
if wire != proto.WireBytes {
|
||||
return true, proto.ErrInternalBadWireType
|
||||
}
|
||||
x, err := b.DecodeStringBytes()
|
||||
m.Val = &SearchResponseV3_Result_Value_Str{x}
|
||||
return true, err
|
||||
case 2: // val.int
|
||||
if wire != proto.WireVarint {
|
||||
return true, proto.ErrInternalBadWireType
|
||||
}
|
||||
x, err := b.DecodeVarint()
|
||||
m.Val = &SearchResponseV3_Result_Value_Int{int64(x)}
|
||||
return true, err
|
||||
case 3: // val.real
|
||||
if wire != proto.WireFixed64 {
|
||||
return true, proto.ErrInternalBadWireType
|
||||
}
|
||||
x, err := b.DecodeFixed64()
|
||||
m.Val = &SearchResponseV3_Result_Value_Real{math.Float64frombits(x)}
|
||||
return true, err
|
||||
default:
|
||||
return false, nil
|
||||
}
|
||||
}
|
||||
|
||||
func _SearchResponseV3_Result_Value_OneofSizer(msg proto.Message) (n int) {
|
||||
m := msg.(*SearchResponseV3_Result_Value)
|
||||
// val
|
||||
switch x := m.Val.(type) {
|
||||
case *SearchResponseV3_Result_Value_Str:
|
||||
n += proto.SizeVarint(1<<3 | proto.WireBytes)
|
||||
n += proto.SizeVarint(uint64(len(x.Str)))
|
||||
n += len(x.Str)
|
||||
case *SearchResponseV3_Result_Value_Int:
|
||||
n += proto.SizeVarint(2<<3 | proto.WireVarint)
|
||||
n += proto.SizeVarint(uint64(x.Int))
|
||||
case *SearchResponseV3_Result_Value_Real:
|
||||
n += proto.SizeVarint(3<<3 | proto.WireFixed64)
|
||||
n += 8
|
||||
case nil:
|
||||
default:
|
||||
panic(fmt.Sprintf("proto: unexpected type %T in oneof", x))
|
||||
}
|
||||
return n
|
||||
}
|
||||
|
||||
type SearchRequestV3 struct {
|
||||
Query string `protobuf:"bytes,1,opt,name=query" json:"query,omitempty"`
|
||||
}
|
||||
|
||||
func (m *SearchRequestV3) Reset() { *m = SearchRequestV3{} }
|
||||
func (m *SearchRequestV3) String() string { return proto.CompactTextString(m) }
|
||||
func (*SearchRequestV3) ProtoMessage() {}
|
||||
func (*SearchRequestV3) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{1} }
|
||||
|
||||
func (m *SearchRequestV3) GetQuery() string {
|
||||
if m != nil {
|
||||
return m.Query
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
func init() {
|
||||
proto.RegisterType((*SearchResponseV3)(nil), "grpc.testingv3.SearchResponseV3")
|
||||
proto.RegisterType((*SearchResponseV3_Result)(nil), "grpc.testingv3.SearchResponseV3.Result")
|
||||
proto.RegisterType((*SearchResponseV3_Result_Value)(nil), "grpc.testingv3.SearchResponseV3.Result.Value")
|
||||
proto.RegisterType((*SearchRequestV3)(nil), "grpc.testingv3.SearchRequestV3")
|
||||
proto.RegisterEnum("grpc.testingv3.SearchResponseV3_State", SearchResponseV3_State_name, SearchResponseV3_State_value)
|
||||
}
|
||||
|
||||
// Reference imports to suppress errors if they are not otherwise used.
|
||||
var _ context.Context
|
||||
var _ grpc.ClientConn
|
||||
|
||||
// This is a compile-time assertion to ensure that this generated file
|
||||
// is compatible with the grpc package it is being compiled against.
|
||||
const _ = grpc.SupportPackageIsVersion3
|
||||
|
||||
// Client API for SearchServiceV3 service
|
||||
|
||||
type SearchServiceV3Client interface {
|
||||
Search(ctx context.Context, in *SearchRequestV3, opts ...grpc.CallOption) (*SearchResponseV3, error)
|
||||
StreamingSearch(ctx context.Context, opts ...grpc.CallOption) (SearchServiceV3_StreamingSearchClient, error)
|
||||
}
|
||||
|
||||
type searchServiceV3Client struct {
|
||||
cc *grpc.ClientConn
|
||||
}
|
||||
|
||||
func NewSearchServiceV3Client(cc *grpc.ClientConn) SearchServiceV3Client {
|
||||
return &searchServiceV3Client{cc}
|
||||
}
|
||||
|
||||
func (c *searchServiceV3Client) Search(ctx context.Context, in *SearchRequestV3, opts ...grpc.CallOption) (*SearchResponseV3, error) {
|
||||
out := new(SearchResponseV3)
|
||||
err := grpc.Invoke(ctx, "/grpc.testingv3.SearchServiceV3/Search", in, out, c.cc, opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return out, nil
|
||||
}
|
||||
|
||||
func (c *searchServiceV3Client) StreamingSearch(ctx context.Context, opts ...grpc.CallOption) (SearchServiceV3_StreamingSearchClient, error) {
|
||||
stream, err := grpc.NewClientStream(ctx, &_SearchServiceV3_serviceDesc.Streams[0], c.cc, "/grpc.testingv3.SearchServiceV3/StreamingSearch", opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
x := &searchServiceV3StreamingSearchClient{stream}
|
||||
return x, nil
|
||||
}
|
||||
|
||||
type SearchServiceV3_StreamingSearchClient interface {
|
||||
Send(*SearchRequestV3) error
|
||||
Recv() (*SearchResponseV3, error)
|
||||
grpc.ClientStream
|
||||
}
|
||||
|
||||
type searchServiceV3StreamingSearchClient struct {
|
||||
grpc.ClientStream
|
||||
}
|
||||
|
||||
func (x *searchServiceV3StreamingSearchClient) Send(m *SearchRequestV3) error {
|
||||
return x.ClientStream.SendMsg(m)
|
||||
}
|
||||
|
||||
func (x *searchServiceV3StreamingSearchClient) Recv() (*SearchResponseV3, error) {
|
||||
m := new(SearchResponseV3)
|
||||
if err := x.ClientStream.RecvMsg(m); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return m, nil
|
||||
}
|
||||
|
||||
// Server API for SearchServiceV3 service
|
||||
|
||||
type SearchServiceV3Server interface {
|
||||
Search(context.Context, *SearchRequestV3) (*SearchResponseV3, error)
|
||||
StreamingSearch(SearchServiceV3_StreamingSearchServer) error
|
||||
}
|
||||
|
||||
func RegisterSearchServiceV3Server(s *grpc.Server, srv SearchServiceV3Server) {
|
||||
s.RegisterService(&_SearchServiceV3_serviceDesc, srv)
|
||||
}
|
||||
|
||||
func _SearchServiceV3_Search_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
|
||||
in := new(SearchRequestV3)
|
||||
if err := dec(in); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if interceptor == nil {
|
||||
return srv.(SearchServiceV3Server).Search(ctx, in)
|
||||
}
|
||||
info := &grpc.UnaryServerInfo{
|
||||
Server: srv,
|
||||
FullMethod: "/grpc.testingv3.SearchServiceV3/Search",
|
||||
}
|
||||
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
|
||||
return srv.(SearchServiceV3Server).Search(ctx, req.(*SearchRequestV3))
|
||||
}
|
||||
return interceptor(ctx, in, info, handler)
|
||||
}
|
||||
|
||||
func _SearchServiceV3_StreamingSearch_Handler(srv interface{}, stream grpc.ServerStream) error {
|
||||
return srv.(SearchServiceV3Server).StreamingSearch(&searchServiceV3StreamingSearchServer{stream})
|
||||
}
|
||||
|
||||
type SearchServiceV3_StreamingSearchServer interface {
|
||||
Send(*SearchResponseV3) error
|
||||
Recv() (*SearchRequestV3, error)
|
||||
grpc.ServerStream
|
||||
}
|
||||
|
||||
type searchServiceV3StreamingSearchServer struct {
|
||||
grpc.ServerStream
|
||||
}
|
||||
|
||||
func (x *searchServiceV3StreamingSearchServer) Send(m *SearchResponseV3) error {
|
||||
return x.ServerStream.SendMsg(m)
|
||||
}
|
||||
|
||||
func (x *searchServiceV3StreamingSearchServer) Recv() (*SearchRequestV3, error) {
|
||||
m := new(SearchRequestV3)
|
||||
if err := x.ServerStream.RecvMsg(m); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return m, nil
|
||||
}
|
||||
|
||||
var _SearchServiceV3_serviceDesc = grpc.ServiceDesc{
|
||||
ServiceName: "grpc.testingv3.SearchServiceV3",
|
||||
HandlerType: (*SearchServiceV3Server)(nil),
|
||||
Methods: []grpc.MethodDesc{
|
||||
{
|
||||
MethodName: "Search",
|
||||
Handler: _SearchServiceV3_Search_Handler,
|
||||
},
|
||||
},
|
||||
Streams: []grpc.StreamDesc{
|
||||
{
|
||||
StreamName: "StreamingSearch",
|
||||
Handler: _SearchServiceV3_StreamingSearch_Handler,
|
||||
ServerStreams: true,
|
||||
ClientStreams: true,
|
||||
},
|
||||
},
|
||||
Metadata: fileDescriptor0,
|
||||
}
|
||||
|
||||
func init() { proto.RegisterFile("testv3.proto", fileDescriptor0) }
|
||||
|
||||
var fileDescriptor0 = []byte{
|
||||
// 416 bytes of a gzipped FileDescriptorProto
|
||||
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x93, 0xd1, 0x6a, 0xd4, 0x40,
|
||||
0x14, 0x86, 0x77, 0x36, 0x9b, 0x6d, 0xf7, 0xac, 0xb6, 0x61, 0xe8, 0x45, 0xc8, 0x8d, 0x61, 0x2f,
|
||||
0x6c, 0x10, 0x0c, 0x92, 0x20, 0x88, 0x78, 0x53, 0x65, 0x65, 0xa1, 0x75, 0xc5, 0x89, 0xae, 0xde,
|
||||
0x8e, 0xeb, 0x61, 0x8d, 0x4d, 0xb3, 0xe9, 0xcc, 0x49, 0x60, 0x9f, 0xc5, 0x17, 0xf1, 0x55, 0x7c,
|
||||
0x1b, 0x99, 0x99, 0xa6, 0x50, 0x41, 0xba, 0x17, 0xde, 0xcd, 0x7f, 0x38, 0xff, 0x37, 0xff, 0x3f,
|
||||
0x24, 0xf0, 0x80, 0x50, 0x53, 0x97, 0xa7, 0x8d, 0xda, 0xd2, 0x96, 0x1f, 0x6d, 0x54, 0xb3, 0x4e,
|
||||
0xcd, 0xa8, 0xac, 0x37, 0x5d, 0x3e, 0xfb, 0x39, 0x82, 0xa0, 0x40, 0xa9, 0xd6, 0xdf, 0x05, 0xea,
|
||||
0x66, 0x5b, 0x6b, 0x5c, 0xe5, 0xfc, 0x0c, 0x0e, 0x14, 0xea, 0xb6, 0x22, 0x1d, 0xb2, 0xd8, 0x4b,
|
||||
0xa6, 0xd9, 0x69, 0x7a, 0xd7, 0x96, 0xfe, 0x6d, 0x49, 0x85, 0xdd, 0x17, 0xbd, 0x8f, 0xbf, 0x02,
|
||||
0x5f, 0x93, 0x24, 0x0c, 0x87, 0x31, 0x4b, 0x8e, 0xb2, 0xc7, 0xf7, 0x02, 0x0a, 0xb3, 0x2d, 0x9c,
|
||||
0x29, 0xfa, 0x3d, 0x84, 0xb1, 0x23, 0xf2, 0x00, 0xbc, 0x56, 0x55, 0x21, 0x8b, 0x59, 0x32, 0x11,
|
||||
0xe6, 0xc8, 0x4f, 0xc0, 0xa7, 0x92, 0x2a, 0x87, 0x9e, 0x08, 0x27, 0x78, 0x04, 0x87, 0xba, 0x2e,
|
||||
0x9b, 0x06, 0x49, 0x87, 0x5e, 0xec, 0x25, 0x13, 0x71, 0xab, 0xf9, 0x07, 0x38, 0xbc, 0x42, 0x92,
|
||||
0xdf, 0x24, 0xc9, 0x70, 0x64, 0x0b, 0x3d, 0xdf, 0xb3, 0x50, 0xfa, 0xee, 0xc6, 0x37, 0xaf, 0x49,
|
||||
0xed, 0xc4, 0x2d, 0x26, 0xba, 0x00, 0x7f, 0x25, 0xab, 0x16, 0x39, 0x07, 0x4f, 0x93, 0x72, 0xf9,
|
||||
0x16, 0x03, 0x61, 0x84, 0x99, 0x95, 0x35, 0xd9, 0x7c, 0x9e, 0x99, 0x95, 0x35, 0xf1, 0x13, 0x18,
|
||||
0x29, 0x94, 0x55, 0xe8, 0xc5, 0x2c, 0x61, 0x8b, 0x81, 0xb0, 0xea, 0xb5, 0x0f, 0x5e, 0x27, 0xab,
|
||||
0xe8, 0x07, 0x3c, 0xbc, 0x73, 0x91, 0x69, 0x7d, 0x89, 0xbb, 0xbe, 0xf5, 0x25, 0xee, 0xf8, 0x1b,
|
||||
0xf0, 0x3b, 0x73, 0xa1, 0xa5, 0x4e, 0xb3, 0xa7, 0xfb, 0x16, 0xb0, 0x29, 0x85, 0xf3, 0xbe, 0x1c,
|
||||
0xbe, 0x60, 0xb3, 0x27, 0xe0, 0xdb, 0xb7, 0xe6, 0x53, 0x38, 0xf8, 0xb4, 0x3c, 0x5f, 0xbe, 0xff,
|
||||
0xbc, 0x0c, 0x06, 0x7c, 0x02, 0xfe, 0x5b, 0x31, 0x2f, 0x16, 0x01, 0x33, 0xc7, 0xe2, 0xe3, 0xd9,
|
||||
0xc5, 0x3c, 0x18, 0xce, 0x4e, 0xe1, 0xb8, 0xe7, 0x5e, 0xb7, 0xa8, 0x69, 0x95, 0x9b, 0xd7, 0xbf,
|
||||
0x6e, 0x51, 0xf5, 0xd9, 0x9c, 0xc8, 0x7e, 0xb1, 0x7e, 0xb3, 0x40, 0xd5, 0x95, 0x6b, 0xf3, 0x15,
|
||||
0x9d, 0xc3, 0xd8, 0x8d, 0xf8, 0xa3, 0x7f, 0x85, 0xbd, 0x81, 0x46, 0xf1, 0x7d, 0x6d, 0xf8, 0x17,
|
||||
0x38, 0x2e, 0x48, 0xa1, 0xbc, 0x2a, 0xeb, 0xcd, 0x7f, 0xa3, 0x26, 0xec, 0x19, 0xfb, 0x3a, 0xb6,
|
||||
0x3f, 0x46, 0xfe, 0x27, 0x00, 0x00, 0xff, 0xff, 0xed, 0xa2, 0x8d, 0x75, 0x28, 0x03, 0x00, 0x00,
|
||||
}
|
||||
58
testdata/grpc_testing_not_regenerated/testv3.proto
vendored
Normal file
58
testdata/grpc_testing_not_regenerated/testv3.proto
vendored
Normal file
@@ -0,0 +1,58 @@
|
||||
/*
|
||||
* Copyright 2022 gRPC authors.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*
|
||||
*/
|
||||
|
||||
syntax = "proto3";
|
||||
|
||||
package grpc.testingv3;
|
||||
|
||||
option go_package = "google.golang.org/grpc/testdata/grpc_testing_not_regenerated";
|
||||
|
||||
message SearchResponseV3 {
|
||||
message Result {
|
||||
string url = 1;
|
||||
string title = 2;
|
||||
repeated string snippets = 3;
|
||||
message Value {
|
||||
oneof val {
|
||||
string str = 1;
|
||||
int64 int = 2;
|
||||
double real = 3;
|
||||
}
|
||||
}
|
||||
map<string, Value> metadata = 4;
|
||||
}
|
||||
enum State {
|
||||
UNKNOWN = 0;
|
||||
FRESH = 1;
|
||||
STALE = 2;
|
||||
}
|
||||
repeated Result results = 1;
|
||||
State state = 2;
|
||||
}
|
||||
|
||||
message SearchRequestV3 {
|
||||
string query = 1;
|
||||
}
|
||||
|
||||
// SearchServiceV3 is used to test grpc server reflection.
|
||||
service SearchServiceV3 {
|
||||
// Search is a unary RPC.
|
||||
rpc Search(SearchRequestV3) returns (SearchResponseV3);
|
||||
|
||||
// StreamingSearch is a streaming RPC.
|
||||
rpc StreamingSearch(stream SearchRequestV3) returns (stream SearchResponseV3);
|
||||
}
|
||||
28
testdata/server1.key
vendored
Normal file
28
testdata/server1.key
vendored
Normal file
@@ -0,0 +1,28 @@
|
||||
-----BEGIN PRIVATE KEY-----
|
||||
MIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQDnE443EknxvxBq
|
||||
6+hvn/t09hl8hx366EBYvZmVM/NC+7igXRAjiJiA/mIaCvL3MS0Iz5hBLxSGICU+
|
||||
WproA3GCIFITIwcf/ETyWj/5xpgZ4AKrLrjQmmX8mhwUajfF3UvwMJrCOVqPp67t
|
||||
PtP+2kBXaqrXdvnvXR41FsIB8V7zIAuIZB6bHQhiGVlc1sgZYsE2EGG9WMmHtS86
|
||||
qkAOTjG2XyjmPTGAwhGDpYkYrpzp99IiDh4/Veai81hn0ssQkbry0XRD/Ig3jcHh
|
||||
23WiriPNJ0JsbgXUSLKRPZObA9VgOLy2aXoN84IMaeK3yy+cwSYG/99w93fUZJte
|
||||
MXwz4oYZAgMBAAECggEBAIVn2Ncai+4xbH0OLWckabwgyJ4IM9rDc0LIU368O1kU
|
||||
koais8qP9dujAWgfoh3sGh/YGgKn96VnsZjKHlyMgF+r4TaDJn3k2rlAOWcurGlj
|
||||
1qaVlsV4HiEzp7pxiDmHhWvp4672Bb6iBG+bsjCUOEk/n9o9KhZzIBluRhtxCmw5
|
||||
nw4Do7z00PTvN81260uPWSc04IrytvZUiAIx/5qxD72bij2xJ8t/I9GI8g4FtoVB
|
||||
8pB6S/hJX1PZhh9VlU6Yk+TOfOVnbebG4W5138LkB835eqk3Zz0qsbc2euoi8Hxi
|
||||
y1VGwQEmMQ63jXz4c6g+X55ifvUK9Jpn5E8pq+pMd7ECgYEA93lYq+Cr54K4ey5t
|
||||
sWMa+ye5RqxjzgXj2Kqr55jb54VWG7wp2iGbg8FMlkQwzTJwebzDyCSatguEZLuB
|
||||
gRGroRnsUOy9vBvhKPOch9bfKIl6qOgzMJB267fBVWx5ybnRbWN/I7RvMQf3k+9y
|
||||
biCIVnxDLEEYyx7z85/5qxsXg/MCgYEA7wmWKtCTn032Hy9P8OL49T0X6Z8FlkDC
|
||||
Rk42ygrc/MUbugq9RGUxcCxoImOG9JXUpEtUe31YDm2j+/nbvrjl6/bP2qWs0V7l
|
||||
dTJl6dABP51pCw8+l4cWgBBX08Lkeen812AAFNrjmDCjX6rHjWHLJcpS18fnRRkP
|
||||
V1d/AHWX7MMCgYEA6Gsw2guhp0Zf2GCcaNK5DlQab8OL4Hwrpttzo4kuTlwtqNKp
|
||||
Q9H4al9qfF4Cr1TFya98+EVYf8yFRM3NLNjZpe3gwYf2EerlJj7VLcahw0KKzoN1
|
||||
QBENfwgPLRk5sDkx9VhSmcfl/diLroZdpAwtv3vo4nEoxeuGFbKTGx3Qkf0CgYEA
|
||||
xyR+dcb05Ygm3w4klHQTowQ10s1H80iaUcZBgQuR1ghEtDbUPZHsoR5t1xCB02ys
|
||||
DgAwLv1bChIvxvH/L6KM8ovZ2LekBX4AviWxoBxJnfz/EVau98B0b1auRN6eSC83
|
||||
FRuGldlSOW1z/nSh8ViizSYE5H5HX1qkXEippvFRE88CgYB3Bfu3YQY60ITWIShv
|
||||
nNkdcbTT9eoP9suaRJjw92Ln+7ZpALYlQMKUZmJ/5uBmLs4RFwUTQruLOPL4yLTH
|
||||
awADWUzs3IRr1fwn9E+zM8JVyKCnUEM3w4N5UZskGO2klashAd30hWO+knRv/y0r
|
||||
uGIYs9Ek7YXlXIRVrzMwcsrt1w==
|
||||
-----END PRIVATE KEY-----
|
||||
22
testdata/server1.pem
vendored
Normal file
22
testdata/server1.pem
vendored
Normal file
@@ -0,0 +1,22 @@
|
||||
-----BEGIN CERTIFICATE-----
|
||||
MIIDtDCCApygAwIBAgIUbJfTREJ6k6/+oInWhV1O1j3ZT0IwDQYJKoZIhvcNAQEL
|
||||
BQAwVjELMAkGA1UEBhMCQVUxEzARBgNVBAgMClNvbWUtU3RhdGUxITAfBgNVBAoM
|
||||
GEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZDEPMA0GA1UEAwwGdGVzdGNhMB4XDTIw
|
||||
MDMxODAzMTA0MloXDTMwMDMxNjAzMTA0MlowZTELMAkGA1UEBhMCVVMxETAPBgNV
|
||||
BAgMCElsbGlub2lzMRAwDgYDVQQHDAdDaGljYWdvMRUwEwYDVQQKDAxFeGFtcGxl
|
||||
LCBDby4xGjAYBgNVBAMMESoudGVzdC5nb29nbGUuY29tMIIBIjANBgkqhkiG9w0B
|
||||
AQEFAAOCAQ8AMIIBCgKCAQEA5xOONxJJ8b8Qauvob5/7dPYZfIcd+uhAWL2ZlTPz
|
||||
Qvu4oF0QI4iYgP5iGgry9zEtCM+YQS8UhiAlPlqa6ANxgiBSEyMHH/xE8lo/+caY
|
||||
GeACqy640Jpl/JocFGo3xd1L8DCawjlaj6eu7T7T/tpAV2qq13b5710eNRbCAfFe
|
||||
8yALiGQemx0IYhlZXNbIGWLBNhBhvVjJh7UvOqpADk4xtl8o5j0xgMIRg6WJGK6c
|
||||
6ffSIg4eP1XmovNYZ9LLEJG68tF0Q/yIN43B4dt1oq4jzSdCbG4F1EiykT2TmwPV
|
||||
YDi8tml6DfOCDGnit8svnMEmBv/fcPd31GSbXjF8M+KGGQIDAQABo2swaTAJBgNV
|
||||
HRMEAjAAMAsGA1UdDwQEAwIF4DBPBgNVHREESDBGghAqLnRlc3QuZ29vZ2xlLmZy
|
||||
ghh3YXRlcnpvb2kudGVzdC5nb29nbGUuYmWCEioudGVzdC55b3V0dWJlLmNvbYcE
|
||||
wKgBAzANBgkqhkiG9w0BAQsFAAOCAQEAS8hDQA8PSgipgAml7Q3/djwQ644ghWQv
|
||||
C2Kb+r30RCY1EyKNhnQnIIh/OUbBZvh0M0iYsy6xqXgfDhCB93AA6j0i5cS8fkhH
|
||||
Jl4RK0tSkGQ3YNY4NzXwQP/vmUgfkw8VBAZ4Y4GKxppdATjffIW+srbAmdDruIRM
|
||||
wPeikgOoRrXf0LA1fi4TqxARzeRwenQpayNfGHTvVF9aJkl8HoaMunTAdG5pIVcr
|
||||
9GKi/gEMpXUJbbVv3U5frX1Wo4CFo+rZWJ/LyCMeb0jciNLxSdMwj/E/ZuExlyeZ
|
||||
gc9ctPjSMvgSyXEKv6Vwobleeg88V2ZgzenziORoWj4KszG/lbQZvg==
|
||||
-----END CERTIFICATE-----
|
||||
76
testdata/spiffe/README.md
vendored
Normal file
76
testdata/spiffe/README.md
vendored
Normal file
@@ -0,0 +1,76 @@
|
||||
## File Purposes
|
||||
|
||||
* spiffe_cert.pem - the certificate that is placed in spiffe bundles (copied
|
||||
into the `x5c` field)
|
||||
* server1_spiffe.pem - another certificate placed in spiffe bundles
|
||||
* spiffe_multi_uri_san_cert.pem - another certificate placed in spiffe bundles
|
||||
* spiffe-openssl.cnf - the configuration file passed to the openssl CLI when
|
||||
creating these certificate files
|
||||
* spiffebundle.json - the valid spiffe bundle for happy path testing
|
||||
* spiffebundle2.json - Another valid spiffe bundle that is used in testing
|
||||
file reloading (a different file is needed to ensure changes are picked up).
|
||||
It is just the `example.com` trust domain from spiffebundle.json.
|
||||
* spiffebundle_corrupted_cert.json - manually modifies the `x5c` field and
|
||||
removes a character to create an invalid certificate
|
||||
* spiffebundle_empty_keys.json - the `keys` field is an empty array
|
||||
* spiffebundle_empty_string_keys.json - the `keys` field contains an entry
|
||||
* with an empty string key
|
||||
* spiffebundle_invalid_trustdomain - uses a `#` in the trust domain which is a
|
||||
disallowed character per the spec
|
||||
* spiffebundle_malformed.json - a fully wrong json
|
||||
* spiffebundle_match_client_spiffe.json - a valid spiffe bundle with a trust
|
||||
domain matching the SPIFFE ID in spiffe_cert.pem
|
||||
* spiffebundle_wrong_kid.json - has the `kid` field instead of the `kty` field
|
||||
* spiffebundle_wrong_kty.json - Uses `EC` instead of `RSA` in the `kty` field
|
||||
* spiffebundle_wrong_multi_certs.json - place 2 certificates in the `x5c`
|
||||
field
|
||||
* spiffebundle_wrong_root.json - The top level json string is `trustDomains`
|
||||
instead of `trust_domains`
|
||||
* spiffebundle_wrong_seq_type.json - the `spiffe_sequence` number must be an
|
||||
integer
|
||||
* spiffebundle_wrong_use.json - The `use` field must be `x509-svid` or
|
||||
`jwt-svid` (we are expecting and support `x509-svid` per the gRFC)
|
||||
|
||||
## Test File Creation:
|
||||
|
||||
The SPIFFE related extensions are listed in spiffe-openssl.cnf config. Both
|
||||
client_spiffe.pem and server1_spiffe.pem are generated in the same way as the
|
||||
client and server certificates described in the testdata/x509 with the same CAs.
|
||||
Specifically they were made with the following commands:
|
||||
|
||||
```
|
||||
$ openssl req -new -key client.key -out spiffe-cert.csr \
|
||||
-subj /C=US/ST=CA/L=SVL/O=gRPC/CN=testclient/ \
|
||||
-config spiffe-openssl.cnf -reqexts spiffe_client_e2e
|
||||
$ openssl x509 -req -CA ca.pem -CAkey ca.key -CAcreateserial \
|
||||
-in spiffe-cert.csr -out client_spiffe.pem -extensions spiffe_client_e2e \
|
||||
-extfile spiffe-openssl.cnf -days 3650 -sha256
|
||||
$ openssl req -new -key server1.key -out spiffe-cert.csr \
|
||||
-subj /C=US/ST=CA/L=SVL/O=gRPC/CN=*.test.google.com/ \
|
||||
-config spiffe-openssl.cnf -reqexts spiffe_server_e2e
|
||||
$ openssl x509 -req -CA ca.pem -CAkey ca.key -CAcreateserial \
|
||||
-in spiffe-cert.csr -out server1_spiffe.pem -extensions spiffe_server_e2e \
|
||||
-extfile spiffe-openssl.cnf -days 3650 -sha256
|
||||
```
|
||||
|
||||
Additionally, the SPIFFE trust bundle map files (spiffebundle*.json) are
|
||||
manually created for end to end testing. The spiffebundle.json contains the
|
||||
"example.com" trust domain (only this entry is used in e2e tests) matching URI
|
||||
SAN of server1_spiffe.pem, and the CA certificate there is ca.pem. The
|
||||
spiffebundle.json file contains "foo.bar.com" trust domain (only this entry is
|
||||
used in e2e tests) matching URI SAN of client_spiffe.pem, and the CA certificate
|
||||
there is also ca.pem.
|
||||
|
||||
If updating these files, the `x5c` field in the json is the raw PEM certificates
|
||||
and can be copy pasted from the certificate file. `n` and `e` are values from
|
||||
the public key. `e` should *probably* be `AQAB` as it is the exponent. `n` can
|
||||
be fetched from the certificate by getting the RSA key from the cert and
|
||||
extracting the value. This can be done in golang with the following codeblock:
|
||||
``` func GetBase64ModulusFromPublicKey(key *rsa.PublicKey) string { return
|
||||
base64.RawURLEncoding.EncodeToString(key.N.Bytes()) }
|
||||
|
||||
block, _ := pem.Decode(rawPemCert) cert, _ := x509.ParseCertificate(block.Bytes)
|
||||
publicKey := cert.PublicKey.(*rsa.PublicKey)
|
||||
fmt.Println(GetBase64ModulusFromPublicKey(publicKey)) ```
|
||||
|
||||
The rest of the files are manually modified as described above.
|
||||
25
testdata/spiffe/client_spiffe.pem
vendored
Normal file
25
testdata/spiffe/client_spiffe.pem
vendored
Normal file
@@ -0,0 +1,25 @@
|
||||
-----BEGIN CERTIFICATE-----
|
||||
MIIEMjCCAxqgAwIBAgIUVXGlXjNENtOZbI12epjgIhMaShUwDQYJKoZIhvcNAQEL
|
||||
BQAwVjELMAkGA1UEBhMCQVUxEzARBgNVBAgMClNvbWUtU3RhdGUxITAfBgNVBAoM
|
||||
GEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZDEPMA0GA1UEAwwGdGVzdGNhMB4XDTI0
|
||||
MTAyNDE2NDAzN1oXDTM0MTAyMjE2NDAzN1owaDELMAkGA1UEBhMCQVUxEzARBgNV
|
||||
BAgMClNvbWUtU3RhdGUxDDAKBgNVBAcMA1NWTDEhMB8GA1UECgwYSW50ZXJuZXQg
|
||||
V2lkZ2l0cyBQdHkgTHRkMRMwEQYDVQQDDAp0ZXN0Y2xpZW50MIIBIjANBgkqhkiG
|
||||
9w0BAQEFAAOCAQ8AMIIBCgKCAQEAsqmEafg11ae9jRW0B/IXYU2S8nGVzpSYZjLK
|
||||
yZq459qe6SP/Jk2f9BQvkhlgRmVfhC4h65gl+c32iC6/SLsOxoa91c6Hn4vK+tqy
|
||||
7qVTzYv6naso1pNnRAhwvWd/gINysyk8nq11oynL8ilZjNGcRNEV4Q1v0aEG6mbF
|
||||
NhioNQdq4VFPCjdIFZip9KyRzsc0VUmHmC2KeWJ+yq7TyXCsqPWlbhK+3RgDc6ch
|
||||
epYP52AVnPvUhsJKC3RbyrwAWCTMq2zYR1EH79H82mdD/OnX0xDaw8cwC68xp6nM
|
||||
dyk68CY5Gf2kq9bcg9P7V77pERYj8VgSYYx0O9BqkxUGNfUW4QIDAQABo4HlMIHi
|
||||
MEQGA1UdEQQ9MDuGOXNwaWZmZTovL2Zvby5iYXIuY29tLzllZWJjY2QyLTEyYmYt
|
||||
NDBhNi1iMjYyLTY1ZmUwNDg3ZDQ1MzAdBgNVHQ4EFgQU28U8sUTGNEDyeCrvJDJd
|
||||
AALabSMwewYDVR0jBHQwcqFapFgwVjELMAkGA1UEBhMCQVUxEzARBgNVBAgMClNv
|
||||
bWUtU3RhdGUxITAfBgNVBAoMGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZDEPMA0G
|
||||
A1UEAwwGdGVzdGNhghRas/RW8dzL4s/pS5g22Iv2AGEPmjANBgkqhkiG9w0BAQsF
|
||||
AAOCAQEAE3LLE8GR283q/aE646SgAfltqpESP38NmYdJMdZgWRxbOqdWabYDfibt
|
||||
9r8j+IRvVuuTWuH2eNS5wXJtS1BZ+z24wTLa+a2KjOV12gChP+3N7jhqId4eolSL
|
||||
1fjscPY6luZP4Pm3D73lBvIoBvXpDGyrxleiUCEEkKXmTOA8doFvbrcbwm+yUJOP
|
||||
VKUKvAzTNztb0BGDzKKU4E2yK5PSyv2n5m2NpzxYYfHoGeVcxvj7nCnSfoX/EWHb
|
||||
d8ztJYDg9X0iNcfQXt7PZ+j6VcxfDpGCDxe2rFQoYvlWjhr3xOi/1e5A1zx1Ly07
|
||||
m9MB4hntu4e2656ZDWbgOHLpO0q1iQ==
|
||||
-----END CERTIFICATE-----
|
||||
26
testdata/spiffe/server1_spiffe.pem
vendored
Normal file
26
testdata/spiffe/server1_spiffe.pem
vendored
Normal file
@@ -0,0 +1,26 @@
|
||||
-----BEGIN CERTIFICATE-----
|
||||
MIIEZDCCA0ygAwIBAgIUVXGlXjNENtOZbI12epjgIhMaShMwDQYJKoZIhvcNAQEL
|
||||
BQAwVjELMAkGA1UEBhMCQVUxEzARBgNVBAgMClNvbWUtU3RhdGUxITAfBgNVBAoM
|
||||
GEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZDEPMA0GA1UEAwwGdGVzdGNhMB4XDTI0
|
||||
MTAyMTAyMTQxNVoXDTM0MTAxOTAyMTQxNVowZTELMAkGA1UEBhMCVVMxETAPBgNV
|
||||
BAgMCElsbGlub2lzMRAwDgYDVQQHDAdDaGljYWdvMRUwEwYDVQQKDAxFeGFtcGxl
|
||||
LCBDby4xGjAYBgNVBAMMESoudGVzdC5nb29nbGUuY29tMIIBIjANBgkqhkiG9w0B
|
||||
AQEFAAOCAQ8AMIIBCgKCAQEA5xOONxJJ8b8Qauvob5/7dPYZfIcd+uhAWL2ZlTPz
|
||||
Qvu4oF0QI4iYgP5iGgry9zEtCM+YQS8UhiAlPlqa6ANxgiBSEyMHH/xE8lo/+caY
|
||||
GeACqy640Jpl/JocFGo3xd1L8DCawjlaj6eu7T7T/tpAV2qq13b5710eNRbCAfFe
|
||||
8yALiGQemx0IYhlZXNbIGWLBNhBhvVjJh7UvOqpADk4xtl8o5j0xgMIRg6WJGK6c
|
||||
6ffSIg4eP1XmovNYZ9LLEJG68tF0Q/yIN43B4dt1oq4jzSdCbG4F1EiykT2TmwPV
|
||||
YDi8tml6DfOCDGnit8svnMEmBv/fcPd31GSbXjF8M+KGGQIDAQABo4IBGTCCARUw
|
||||
dwYDVR0RBHAwboIQKi50ZXN0Lmdvb2dsZS5mcoIYd2F0ZXJ6b29pLnRlc3QuZ29v
|
||||
Z2xlLmJlghIqLnRlc3QueW91dHViZS5jb22HBMCoAQOGJnNwaWZmZTovL2V4YW1w
|
||||
bGUuY29tL3dvcmtsb2FkLzllZWJjY2QyMB0GA1UdDgQWBBRvRpAYHQYP6dFPf5V7
|
||||
/MyCftnNjTB7BgNVHSMEdDByoVqkWDBWMQswCQYDVQQGEwJBVTETMBEGA1UECAwK
|
||||
U29tZS1TdGF0ZTEhMB8GA1UECgwYSW50ZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMQ8w
|
||||
DQYDVQQDDAZ0ZXN0Y2GCFFqz9Fbx3Mviz+lLmDbYi/YAYQ+aMA0GCSqGSIb3DQEB
|
||||
CwUAA4IBAQBJ1bnbBHa1n15vvhpGIzokuiJ+9q/zim63UuVDnkhrQM2N+RQbStGT
|
||||
Tis2tNse1bh460dJFm6ArgHWogzx6fQZzgaDeCOAXvrAe4jM9IHr9K7lkq/33CZS
|
||||
BDV+jCmm2sRsqSMkKUcX6JhyqWGFHuTDAKJzsEV2MlcswleKlGHDkeelAaxlLzpz
|
||||
RHOSQd0N9xAs18lzx95SQEx90PtrBOmvIDDiI5o5z9Oz12Iy1toiksFl4jmknkDD
|
||||
5VF3AyCRgN8NPW0uNC8D2vo4L+tgj9U6NPlmMOrjRsEH257LJ1wopAGr+yezkIId
|
||||
QQodGSVm5cOuw/K7Ma4nBDjVJkjcdY3t
|
||||
-----END CERTIFICATE-----
|
||||
28
testdata/spiffe/spiffe-openssl.cnf
vendored
Normal file
28
testdata/spiffe/spiffe-openssl.cnf
vendored
Normal file
@@ -0,0 +1,28 @@
|
||||
[spiffe_client]
|
||||
subjectAltName = @alt_names
|
||||
|
||||
[spiffe_client_multi]
|
||||
subjectAltName = @alt_names_multi
|
||||
|
||||
[spiffe_server_e2e]
|
||||
subjectAltName = @alt_names_server_e2e
|
||||
|
||||
[spiffe_client_e2e]
|
||||
subjectAltName = @alt_names_client_e2e
|
||||
|
||||
[alt_names]
|
||||
URI = spiffe://foo.bar.com/client/workload/1
|
||||
|
||||
[alt_names_multi]
|
||||
URI.1 = spiffe://foo.bar.com/client/workload/1
|
||||
URI.2 = spiffe://foo.bar.com/client/workload/2
|
||||
|
||||
[alt_names_server_e2e]
|
||||
DNS.1 = *.test.google.fr
|
||||
DNS.2 = waterzooi.test.google.be
|
||||
DNS.3 = *.test.youtube.com
|
||||
IP.1 = "192.168.1.3"
|
||||
URI = spiffe://example.com/workload/9eebccd2
|
||||
|
||||
[alt_names_client_e2e]
|
||||
URI = spiffe://foo.bar.com/9eebccd2-12bf-40a6-b262-65fe0487d453
|
||||
33
testdata/spiffe/spiffe_cert.pem
vendored
Normal file
33
testdata/spiffe/spiffe_cert.pem
vendored
Normal file
@@ -0,0 +1,33 @@
|
||||
-----BEGIN CERTIFICATE-----
|
||||
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
|
||||
GA91fn0891b5eEW8BJHXX0jri0aN8g==
|
||||
-----END CERTIFICATE-----
|
||||
25
testdata/spiffe/spiffe_multi_uri_san_cert.pem
vendored
Normal file
25
testdata/spiffe/spiffe_multi_uri_san_cert.pem
vendored
Normal file
@@ -0,0 +1,25 @@
|
||||
-----BEGIN CERTIFICATE-----
|
||||
MIIELTCCAxWgAwIBAgIUVXGlXjNENtOZbI12epjgIhMaShEwDQYJKoZIhvcNAQEL
|
||||
BQAwVjELMAkGA1UEBhMCQVUxEzARBgNVBAgMClNvbWUtU3RhdGUxITAfBgNVBAoM
|
||||
GEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZDEPMA0GA1UEAwwGdGVzdGNhMB4XDTI0
|
||||
MDkxNzE2MTk0NFoXDTM0MDkxNTE2MTk0NFowTjELMAkGA1UEBhMCVVMxCzAJBgNV
|
||||
BAgMAkNBMQwwCgYDVQQHDANTVkwxDTALBgNVBAoMBGdSUEMxFTATBgNVBAMMDHRl
|
||||
c3QtY2xpZW50MTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAOcTjjcS
|
||||
SfG/EGrr6G+f+3T2GXyHHfroQFi9mZUz80L7uKBdECOImID+YhoK8vcxLQjPmEEv
|
||||
FIYgJT5amugDcYIgUhMjBx/8RPJaP/nGmBngAqsuuNCaZfyaHBRqN8XdS/AwmsI5
|
||||
Wo+nru0+0/7aQFdqqtd2+e9dHjUWwgHxXvMgC4hkHpsdCGIZWVzWyBliwTYQYb1Y
|
||||
yYe1LzqqQA5OMbZfKOY9MYDCEYOliRiunOn30iIOHj9V5qLzWGfSyxCRuvLRdEP8
|
||||
iDeNweHbdaKuI80nQmxuBdRIspE9k5sD1WA4vLZpeg3zggxp4rfLL5zBJgb/33D3
|
||||
d9Rkm14xfDPihhkCAwEAAaOB+jCB9zBZBgNVHREEUjBQhiZzcGlmZmU6Ly9mb28u
|
||||
YmFyLmNvbS9jbGllbnQvd29ya2xvYWQvMYYmc3BpZmZlOi8vZm9vLmJhci5jb20v
|
||||
Y2xpZW50L3dvcmtsb2FkLzIwHQYDVR0OBBYEFG9GkBgdBg/p0U9/lXv8zIJ+2c2N
|
||||
MHsGA1UdIwR0MHKhWqRYMFYxCzAJBgNVBAYTAkFVMRMwEQYDVQQIDApTb21lLVN0
|
||||
YXRlMSEwHwYDVQQKDBhJbnRlcm5ldCBXaWRnaXRzIFB0eSBMdGQxDzANBgNVBAMM
|
||||
BnRlc3RjYYIUWrP0VvHcy+LP6UuYNtiL9gBhD5owDQYJKoZIhvcNAQELBQADggEB
|
||||
AJ4Cbxv+02SpUgkEu4hP/1+8DtSBXUxNxI0VG4e3Ap2+Rhjm3YiFeS/UeaZhNrrw
|
||||
UEjkSTPFODyXR7wI7UO9OO1StyD6CMkp3SEvevU5JsZtGL6mTiTLTi3Qkywa91Bt
|
||||
GlyZdVMghA1bBJLBMwiD5VT5noqoJBD7hDy6v9yNmt1Sw2iYBJPqI3Gnf5bMjR3s
|
||||
UICaxmFyqaMCZsPkfJh0DmZpInGJys3m4QqGz6ZE2DWgcSr1r/ML7/5bSPjjr8j4
|
||||
WFFSqFR3dMu8CbGnfZTCTXa4GTX/rARXbAO67Z/oJbJBK7VKayskL+PzKuohb9ox
|
||||
jGL772hQMbwtFCOFXu5VP0s=
|
||||
-----END CERTIFICATE-----
|
||||
13
testdata/spiffe/spiffe_test.json
vendored
Normal file
13
testdata/spiffe/spiffe_test.json
vendored
Normal file
@@ -0,0 +1,13 @@
|
||||
{
|
||||
"keys": [
|
||||
{
|
||||
"kty": "RSA",
|
||||
"use": "x509-svid",
|
||||
"x5c": [
|
||||
"MIIFsjCCA5qgAwIBAgIURygVMMzdr+Q7rsUaz189JozyHMwwDQYJKoZIhvcNAQELBQAwTjELMAkGA1UEBhMCVVMxCzAJBgNVBAgMAkNBMQwwCgYDVQQHDANTVkwxDTALBgNVBAoMBGdSUEMxFTATBgNVBAMMDHRlc3QtY2xpZW50MTAeFw0yMTEyMjMxODQyNTJaFw0zMTEyMjExODQyNTJaME4xCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJDQTEMMAoGA1UEBwwDU1ZMMQ0wCwYDVQQKDARnUlBDMRUwEwYDVQQDDAx0ZXN0LWNsaWVudDEwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDJ4AqpGetyVSqGUuBJLVFla+7bEfca7UYzfVSSZLZ/X+JDmWIVN8UIPuFib5jhMEc3XaUnFXUmM7zEtz/ZG5hapwLwOb2C3ZxOP6PQjYCJxbkLie+b43UQrFu1xxd3vMhVJgcj/AIxEpmszuqOa6kUrkYifjJADQ+64kZgl66bsTdXMCzpxyFl9xUfff59L8OX+HUfAcoZz3emjg3ZJPYURQEmjdZTOau1EjFilwHgd989Jt7NKgx30NXoHmw7nusVBIY94fL2VKN3f1XVm0dHu5NI279Q6zr0ZBU7k5T3IeHnzsUesQS4NGlklDWoVTKk73Uv9Pna8yQsSW757PEbHOGp9Knu4bnoGPOlsG81yIPipO6hTgGFK24pF97M9kpGbWqYX4+2vLlrCAfcmsHqaUPmQlYeRVTT6vw7ctYo2kyUYGtnODXk76LqewRBVvkzx75QUhfjAyb740YcDmIenc56Tq6gebJHjhEmVSehR6xIpXP7SVeurTyhPsEQnpJHtgs4dcwWOZp7BvPNzHXmJqfr7vsshie3vS5kQ0u1e1yqAqXgyDjqKXOkx+dpgUTehSJHhPNHvTc5LXRsvvXKYz6FrwR/DZ8t7BNEvPeLjFgxpH7QVJFLCvCbXs5K6yYbsnLfxFIBPRnrbJkIsK+sQwnRdnsiUdPsTkG5B2lQfQIDAQABo4GHMIGEMB0GA1UdDgQWBBQ2lBp0PiRHHvQ5IRURm8aHsj4RETAfBgNVHSMEGDAWgBQ2lBp0PiRHHvQ5IRURm8aHsj4RETAPBgNVHRMBAf8EBTADAQH/MDEGA1UdEQQqMCiGJnNwaWZmZTovL2Zvby5iYXIuY29tL2NsaWVudC93b3JrbG9hZC8xMA0GCSqGSIb3DQEBCwUAA4ICAQA1mSkgRclAl+E/aS9zJ7t8+Y4n3T24nOKKveSIjxXm/zjhWqVsLYBI6kglWtih2+PELvU8JdPqNZK34Kl0Q6FWpVSGDdWN1i6NyORt2ocggL3ke3iXxRk3UpUKJmqwz81VhA2KUHnMlyE0IufFfZNwNWWHBv13uJfRbjeQpKPhU+yf4DeXrsWcvrZlGvAET+mcplafUzCp7Iv+PcISJtUerbxbVtuHVeZCLlgDXWkLAWJN8rf0dIG4x060LJ+j6j9uRVhb9sZn1HJV+j4XdIYm1VKilluhOtNwP2d3Ox/JuTBxf7hFHXZPfMagQE5k5PzmxRaCAEMJ1l2DvUbZw+shJfSNoWcBo2qadnUaWT3BmmJRBDh7ZReib/RQ1Rd4ygOyzP3E0vkV4/gqyjLdApXh5PZP8KLQZ+1JN/sdWt7VfIt9wYOpkIqujdll51ESHzwQeAK9WVCB4UvVz6zdhItB9CRbXPreWC+wCB1xDovIzFKOVsLs5+Gqs1m7VinG2LxbDqaKyo/FB0Hxx0acBNzezLWoDwXYQrN0T0S4pnqhKD1CYPpdArBkNezUYAjS725FkApuK+mnBX3U0msBffEaUEOkcyar1EW2m/33vpetD/k3eQQkmvQf4Hbiu9AF+9cNDm/hMuXEw5EXGA91fn0891b5eEW8BJHXX0jri0aN8g=="
|
||||
],
|
||||
"n": "yeAKqRnrclUqhlLgSS1RZWvu2xH3Gu1GM31UkmS2f1_iQ5liFTfFCD7hYm-Y4TBHN12lJxV1JjO8xLc_2RuYWqcC8Dm9gt2cTj-j0I2AicW5C4nvm-N1EKxbtccXd7zIVSYHI_wCMRKZrM7qjmupFK5GIn4yQA0PuuJGYJeum7E3VzAs6cchZfcVH33-fS_Dl_h1HwHKGc93po4N2ST2FEUBJo3WUzmrtRIxYpcB4HffPSbezSoMd9DV6B5sO57rFQSGPeHy9lSjd39V1ZtHR7uTSNu_UOs69GQVO5OU9yHh587FHrEEuDRpZJQ1qFUypO91L_T52vMkLElu-ezxGxzhqfSp7uG56BjzpbBvNciD4qTuoU4BhStuKRfezPZKRm1qmF-Ptry5awgH3JrB6mlD5kJWHkVU0-r8O3LWKNpMlGBrZzg15O-i6nsEQVb5M8e-UFIX4wMm--NGHA5iHp3Oek6uoHmyR44RJlUnoUesSKVz-0lXrq08oT7BEJ6SR7YLOHXMFjmaewbzzcx15ian6-77LIYnt70uZENLtXtcqgKl4Mg46ilzpMfnaYFE3oUiR4TzR703OS10bL71ymM-ha8Efw2fLewTRLz3i4xYMaR-0FSRSwrwm17OSusmG7Jy38RSAT0Z62yZCLCvrEMJ0XZ7IlHT7E5BuQdpUH0",
|
||||
"e": "AQAB"
|
||||
}
|
||||
]
|
||||
}
|
||||
31
testdata/spiffe/spiffebundle.json
vendored
Normal file
31
testdata/spiffe/spiffebundle.json
vendored
Normal file
@@ -0,0 +1,31 @@
|
||||
{
|
||||
"trust_domains": {
|
||||
"example.com": {
|
||||
"spiffe_sequence": 12035488,
|
||||
"keys": [
|
||||
{
|
||||
"kty": "RSA",
|
||||
"use": "x509-svid",
|
||||
"x5c": [
|
||||
"MIIFsjCCA5qgAwIBAgIURygVMMzdr+Q7rsUaz189JozyHMwwDQYJKoZIhvcNAQELBQAwTjELMAkGA1UEBhMCVVMxCzAJBgNVBAgMAkNBMQwwCgYDVQQHDANTVkwxDTALBgNVBAoMBGdSUEMxFTATBgNVBAMMDHRlc3QtY2xpZW50MTAeFw0yMTEyMjMxODQyNTJaFw0zMTEyMjExODQyNTJaME4xCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJDQTEMMAoGA1UEBwwDU1ZMMQ0wCwYDVQQKDARnUlBDMRUwEwYDVQQDDAx0ZXN0LWNsaWVudDEwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDJ4AqpGetyVSqGUuBJLVFla+7bEfca7UYzfVSSZLZ/X+JDmWIVN8UIPuFib5jhMEc3XaUnFXUmM7zEtz/ZG5hapwLwOb2C3ZxOP6PQjYCJxbkLie+b43UQrFu1xxd3vMhVJgcj/AIxEpmszuqOa6kUrkYifjJADQ+64kZgl66bsTdXMCzpxyFl9xUfff59L8OX+HUfAcoZz3emjg3ZJPYURQEmjdZTOau1EjFilwHgd989Jt7NKgx30NXoHmw7nusVBIY94fL2VKN3f1XVm0dHu5NI279Q6zr0ZBU7k5T3IeHnzsUesQS4NGlklDWoVTKk73Uv9Pna8yQsSW757PEbHOGp9Knu4bnoGPOlsG81yIPipO6hTgGFK24pF97M9kpGbWqYX4+2vLlrCAfcmsHqaUPmQlYeRVTT6vw7ctYo2kyUYGtnODXk76LqewRBVvkzx75QUhfjAyb740YcDmIenc56Tq6gebJHjhEmVSehR6xIpXP7SVeurTyhPsEQnpJHtgs4dcwWOZp7BvPNzHXmJqfr7vsshie3vS5kQ0u1e1yqAqXgyDjqKXOkx+dpgUTehSJHhPNHvTc5LXRsvvXKYz6FrwR/DZ8t7BNEvPeLjFgxpH7QVJFLCvCbXs5K6yYbsnLfxFIBPRnrbJkIsK+sQwnRdnsiUdPsTkG5B2lQfQIDAQABo4GHMIGEMB0GA1UdDgQWBBQ2lBp0PiRHHvQ5IRURm8aHsj4RETAfBgNVHSMEGDAWgBQ2lBp0PiRHHvQ5IRURm8aHsj4RETAPBgNVHRMBAf8EBTADAQH/MDEGA1UdEQQqMCiGJnNwaWZmZTovL2Zvby5iYXIuY29tL2NsaWVudC93b3JrbG9hZC8xMA0GCSqGSIb3DQEBCwUAA4ICAQA1mSkgRclAl+E/aS9zJ7t8+Y4n3T24nOKKveSIjxXm/zjhWqVsLYBI6kglWtih2+PELvU8JdPqNZK34Kl0Q6FWpVSGDdWN1i6NyORt2ocggL3ke3iXxRk3UpUKJmqwz81VhA2KUHnMlyE0IufFfZNwNWWHBv13uJfRbjeQpKPhU+yf4DeXrsWcvrZlGvAET+mcplafUzCp7Iv+PcISJtUerbxbVtuHVeZCLlgDXWkLAWJN8rf0dIG4x060LJ+j6j9uRVhb9sZn1HJV+j4XdIYm1VKilluhOtNwP2d3Ox/JuTBxf7hFHXZPfMagQE5k5PzmxRaCAEMJ1l2DvUbZw+shJfSNoWcBo2qadnUaWT3BmmJRBDh7ZReib/RQ1Rd4ygOyzP3E0vkV4/gqyjLdApXh5PZP8KLQZ+1JN/sdWt7VfIt9wYOpkIqujdll51ESHzwQeAK9WVCB4UvVz6zdhItB9CRbXPreWC+wCB1xDovIzFKOVsLs5+Gqs1m7VinG2LxbDqaKyo/FB0Hxx0acBNzezLWoDwXYQrN0T0S4pnqhKD1CYPpdArBkNezUYAjS725FkApuK+mnBX3U0msBffEaUEOkcyar1EW2m/33vpetD/k3eQQkmvQf4Hbiu9AF+9cNDm/hMuXEw5EXGA91fn0891b5eEW8BJHXX0jri0aN8g=="
|
||||
],
|
||||
"n": "yeAKqRnrclUqhlLgSS1RZWvu2xH3Gu1GM31UkmS2f1_iQ5liFTfFCD7hYm-Y4TBHN12lJxV1JjO8xLc_2RuYWqcC8Dm9gt2cTj-j0I2AicW5C4nvm-N1EKxbtccXd7zIVSYHI_wCMRKZrM7qjmupFK5GIn4yQA0PuuJGYJeum7E3VzAs6cchZfcVH33-fS_Dl_h1HwHKGc93po4N2ST2FEUBJo3WUzmrtRIxYpcB4HffPSbezSoMd9DV6B5sO57rFQSGPeHy9lSjd39V1ZtHR7uTSNu_UOs69GQVO5OU9yHh587FHrEEuDRpZJQ1qFUypO91L_T52vMkLElu-ezxGxzhqfSp7uG56BjzpbBvNciD4qTuoU4BhStuKRfezPZKRm1qmF-Ptry5awgH3JrB6mlD5kJWHkVU0-r8O3LWKNpMlGBrZzg15O-i6nsEQVb5M8e-UFIX4wMm--NGHA5iHp3Oek6uoHmyR44RJlUnoUesSKVz-0lXrq08oT7BEJ6SR7YLOHXMFjmaewbzzcx15ian6-77LIYnt70uZENLtXtcqgKl4Mg46ilzpMfnaYFE3oUiR4TzR703OS10bL71ymM-ha8Efw2fLewTRLz3i4xYMaR-0FSRSwrwm17OSusmG7Jy38RSAT0Z62yZCLCvrEMJ0XZ7IlHT7E5BuQdpUH0",
|
||||
"e": "AQAB"
|
||||
}
|
||||
]
|
||||
},
|
||||
"test.example.com": {
|
||||
"keys": [
|
||||
{
|
||||
"kty": "RSA",
|
||||
"use": "x509-svid",
|
||||
"x5c": [
|
||||
"MIIEZDCCA0ygAwIBAgIUVXGlXjNENtOZbI12epjgIhMaShMwDQYJKoZIhvcNAQELBQAwVjELMAkGA1UEBhMCQVUxEzARBgNVBAgMClNvbWUtU3RhdGUxITAfBgNVBAoMGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZDEPMA0GA1UEAwwGdGVzdGNhMB4XDTI0MTAyMTAyMTQxNVoXDTM0MTAxOTAyMTQxNVowZTELMAkGA1UEBhMCVVMxETAPBgNVBAgMCElsbGlub2lzMRAwDgYDVQQHDAdDaGljYWdvMRUwEwYDVQQKDAxFeGFtcGxlLCBDby4xGjAYBgNVBAMMESoudGVzdC5nb29nbGUuY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5xOONxJJ8b8Qauvob5/7dPYZfIcd+uhAWL2ZlTPzQvu4oF0QI4iYgP5iGgry9zEtCM+YQS8UhiAlPlqa6ANxgiBSEyMHH/xE8lo/+caYGeACqy640Jpl/JocFGo3xd1L8DCawjlaj6eu7T7T/tpAV2qq13b5710eNRbCAfFe8yALiGQemx0IYhlZXNbIGWLBNhBhvVjJh7UvOqpADk4xtl8o5j0xgMIRg6WJGK6c6ffSIg4eP1XmovNYZ9LLEJG68tF0Q/yIN43B4dt1oq4jzSdCbG4F1EiykT2TmwPVYDi8tml6DfOCDGnit8svnMEmBv/fcPd31GSbXjF8M+KGGQIDAQABo4IBGTCCARUwdwYDVR0RBHAwboIQKi50ZXN0Lmdvb2dsZS5mcoIYd2F0ZXJ6b29pLnRlc3QuZ29vZ2xlLmJlghIqLnRlc3QueW91dHViZS5jb22HBMCoAQOGJnNwaWZmZTovL2V4YW1wbGUuY29tL3dvcmtsb2FkLzllZWJjY2QyMB0GA1UdDgQWBBRvRpAYHQYP6dFPf5V7/MyCftnNjTB7BgNVHSMEdDByoVqkWDBWMQswCQYDVQQGEwJBVTETMBEGA1UECAwKU29tZS1TdGF0ZTEhMB8GA1UECgwYSW50ZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMQ8wDQYDVQQDDAZ0ZXN0Y2GCFFqz9Fbx3Mviz+lLmDbYi/YAYQ+aMA0GCSqGSIb3DQEBCwUAA4IBAQBJ1bnbBHa1n15vvhpGIzokuiJ+9q/zim63UuVDnkhrQM2N+RQbStGTTis2tNse1bh460dJFm6ArgHWogzx6fQZzgaDeCOAXvrAe4jM9IHr9K7lkq/33CZSBDV+jCmm2sRsqSMkKUcX6JhyqWGFHuTDAKJzsEV2MlcswleKlGHDkeelAaxlLzpzRHOSQd0N9xAs18lzx95SQEx90PtrBOmvIDDiI5o5z9Oz12Iy1toiksFl4jmknkDD5VF3AyCRgN8NPW0uNC8D2vo4L+tgj9U6NPlmMOrjRsEH257LJ1wopAGr+yezkIIdQQodGSVm5cOuw/K7Ma4nBDjVJkjcdY3t"
|
||||
],
|
||||
"n": "5xOONxJJ8b8Qauvob5_7dPYZfIcd-uhAWL2ZlTPzQvu4oF0QI4iYgP5iGgry9zEtCM-YQS8UhiAlPlqa6ANxgiBSEyMHH_xE8lo_-caYGeACqy640Jpl_JocFGo3xd1L8DCawjlaj6eu7T7T_tpAV2qq13b5710eNRbCAfFe8yALiGQemx0IYhlZXNbIGWLBNhBhvVjJh7UvOqpADk4xtl8o5j0xgMIRg6WJGK6c6ffSIg4eP1XmovNYZ9LLEJG68tF0Q_yIN43B4dt1oq4jzSdCbG4F1EiykT2TmwPVYDi8tml6DfOCDGnit8svnMEmBv_fcPd31GSbXjF8M-KGGQ",
|
||||
"e": "AQAB"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
18
testdata/spiffe/spiffebundle2.json
vendored
Normal file
18
testdata/spiffe/spiffebundle2.json
vendored
Normal file
@@ -0,0 +1,18 @@
|
||||
{
|
||||
"trust_domains": {
|
||||
"example.com": {
|
||||
"spiffe_sequence": 12035488,
|
||||
"keys": [
|
||||
{
|
||||
"kty": "RSA",
|
||||
"use": "x509-svid",
|
||||
"x5c": [
|
||||
"MIIFsjCCA5qgAwIBAgIURygVMMzdr+Q7rsUaz189JozyHMwwDQYJKoZIhvcNAQELBQAwTjELMAkGA1UEBhMCVVMxCzAJBgNVBAgMAkNBMQwwCgYDVQQHDANTVkwxDTALBgNVBAoMBGdSUEMxFTATBgNVBAMMDHRlc3QtY2xpZW50MTAeFw0yMTEyMjMxODQyNTJaFw0zMTEyMjExODQyNTJaME4xCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJDQTEMMAoGA1UEBwwDU1ZMMQ0wCwYDVQQKDARnUlBDMRUwEwYDVQQDDAx0ZXN0LWNsaWVudDEwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDJ4AqpGetyVSqGUuBJLVFla+7bEfca7UYzfVSSZLZ/X+JDmWIVN8UIPuFib5jhMEc3XaUnFXUmM7zEtz/ZG5hapwLwOb2C3ZxOP6PQjYCJxbkLie+b43UQrFu1xxd3vMhVJgcj/AIxEpmszuqOa6kUrkYifjJADQ+64kZgl66bsTdXMCzpxyFl9xUfff59L8OX+HUfAcoZz3emjg3ZJPYURQEmjdZTOau1EjFilwHgd989Jt7NKgx30NXoHmw7nusVBIY94fL2VKN3f1XVm0dHu5NI279Q6zr0ZBU7k5T3IeHnzsUesQS4NGlklDWoVTKk73Uv9Pna8yQsSW757PEbHOGp9Knu4bnoGPOlsG81yIPipO6hTgGFK24pF97M9kpGbWqYX4+2vLlrCAfcmsHqaUPmQlYeRVTT6vw7ctYo2kyUYGtnODXk76LqewRBVvkzx75QUhfjAyb740YcDmIenc56Tq6gebJHjhEmVSehR6xIpXP7SVeurTyhPsEQnpJHtgs4dcwWOZp7BvPNzHXmJqfr7vsshie3vS5kQ0u1e1yqAqXgyDjqKXOkx+dpgUTehSJHhPNHvTc5LXRsvvXKYz6FrwR/DZ8t7BNEvPeLjFgxpH7QVJFLCvCbXs5K6yYbsnLfxFIBPRnrbJkIsK+sQwnRdnsiUdPsTkG5B2lQfQIDAQABo4GHMIGEMB0GA1UdDgQWBBQ2lBp0PiRHHvQ5IRURm8aHsj4RETAfBgNVHSMEGDAWgBQ2lBp0PiRHHvQ5IRURm8aHsj4RETAPBgNVHRMBAf8EBTADAQH/MDEGA1UdEQQqMCiGJnNwaWZmZTovL2Zvby5iYXIuY29tL2NsaWVudC93b3JrbG9hZC8xMA0GCSqGSIb3DQEBCwUAA4ICAQA1mSkgRclAl+E/aS9zJ7t8+Y4n3T24nOKKveSIjxXm/zjhWqVsLYBI6kglWtih2+PELvU8JdPqNZK34Kl0Q6FWpVSGDdWN1i6NyORt2ocggL3ke3iXxRk3UpUKJmqwz81VhA2KUHnMlyE0IufFfZNwNWWHBv13uJfRbjeQpKPhU+yf4DeXrsWcvrZlGvAET+mcplafUzCp7Iv+PcISJtUerbxbVtuHVeZCLlgDXWkLAWJN8rf0dIG4x060LJ+j6j9uRVhb9sZn1HJV+j4XdIYm1VKilluhOtNwP2d3Ox/JuTBxf7hFHXZPfMagQE5k5PzmxRaCAEMJ1l2DvUbZw+shJfSNoWcBo2qadnUaWT3BmmJRBDh7ZReib/RQ1Rd4ygOyzP3E0vkV4/gqyjLdApXh5PZP8KLQZ+1JN/sdWt7VfIt9wYOpkIqujdll51ESHzwQeAK9WVCB4UvVz6zdhItB9CRbXPreWC+wCB1xDovIzFKOVsLs5+Gqs1m7VinG2LxbDqaKyo/FB0Hxx0acBNzezLWoDwXYQrN0T0S4pnqhKD1CYPpdArBkNezUYAjS725FkApuK+mnBX3U0msBffEaUEOkcyar1EW2m/33vpetD/k3eQQkmvQf4Hbiu9AF+9cNDm/hMuXEw5EXGA91fn0891b5eEW8BJHXX0jri0aN8g=="
|
||||
],
|
||||
"n": "yeAKqRnrclUqhlLgSS1RZWvu2xH3Gu1GM31UkmS2f1_iQ5liFTfFCD7hYm-Y4TBHN12lJxV1JjO8xLc_2RuYWqcC8Dm9gt2cTj-j0I2AicW5C4nvm-N1EKxbtccXd7zIVSYHI_wCMRKZrM7qjmupFK5GIn4yQA0PuuJGYJeum7E3VzAs6cchZfcVH33-fS_Dl_h1HwHKGc93po4N2ST2FEUBJo3WUzmrtRIxYpcB4HffPSbezSoMd9DV6B5sO57rFQSGPeHy9lSjd39V1ZtHR7uTSNu_UOs69GQVO5OU9yHh587FHrEEuDRpZJQ1qFUypO91L_T52vMkLElu-ezxGxzhqfSp7uG56BjzpbBvNciD4qTuoU4BhStuKRfezPZKRm1qmF-Ptry5awgH3JrB6mlD5kJWHkVU0-r8O3LWKNpMlGBrZzg15O-i6nsEQVb5M8e-UFIX4wMm--NGHA5iHp3Oek6uoHmyR44RJlUnoUesSKVz-0lXrq08oT7BEJ6SR7YLOHXMFjmaewbzzcx15ian6-77LIYnt70uZENLtXtcqgKl4Mg46ilzpMfnaYFE3oUiR4TzR703OS10bL71ymM-ha8Efw2fLewTRLz3i4xYMaR-0FSRSwrwm17OSusmG7Jy38RSAT0Z62yZCLCvrEMJ0XZ7IlHT7E5BuQdpUH0",
|
||||
"e": "AQAB"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
31
testdata/spiffe/spiffebundle_corrupted_cert.json
vendored
Normal file
31
testdata/spiffe/spiffebundle_corrupted_cert.json
vendored
Normal file
@@ -0,0 +1,31 @@
|
||||
{
|
||||
"trust_domains": {
|
||||
"example.com": {
|
||||
"spiffe_sequence": 12035488,
|
||||
"keys": [
|
||||
{
|
||||
"kty": "RSA",
|
||||
"use": "x509-svid",
|
||||
"x5c": [
|
||||
"MIIFsjCCA5qgAwIBAgIURygVMMzdr+Q7rsUaz189JozyHMwwDQYJKoZIhvcNAQELBQAwTjELMAkGA1UEBhMCVVMxCzAJBgNVBAgMAkNBMQwwCgYDVQQHDANTVkwxDTALBgNVBAoMBGdSUEMxFTATBgNVBAMMDHRlc3QtY2xpZW50MTAeFw0yMTEyMjMxODQyNTJaFw0zMTEyMjExODQyNTJaME4xCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJDQTEMMAoGA1UEBwwDU1ZMMQ0wCwYDVQQKDARnUlBDMRUwEwYDVQQDDAx0ZXN0LWNsaWVudDEwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDJ4AqpGetyVSqGUuBJLVFla+7bEfca7UYzfVSSZLZ/X+JDmWIVN8UIPuFib5jhMEc3XaUnFXUmM7zEtz/ZG5hapwLwOb2C3ZxOP6PQjYCJxbkLie+b43UQrFu1xxd3vMhVJgcj/AIxEpmszuqOa6kUrkYifjJADQ+64kZgl66bsTdXMCzpxyFl9xUfff59L8OX+HUfAcoZz3emjg3ZJPYURQEmjdZTOau1EjFilwHgd989Jt7NKgx30NXoHmw7nusVBIY94fL2VKN3f1XVm0dHu5NI279Q6zr0ZBU7k5T3IeHnzsUesQS4NGlklDWoVTKk73Uv9Pna8yQsSW757PEbHOGp9Knu4bnoGPOlsG81yIPipO6hTgGFK24pF97M9kpGbWqYX4+2vLlrCAfcmsHqaUPmQlYeRVTT6vw7ctYo2kyUYGtnODXk76LqewRBVvkzx75QUhfjAyb740YcDmIenc56Tq6gebJHjhEmVSehR6xIpXP7SVeurTyhPsEQnpJHtgs4dcwWOZp7BvPNzHXmJqfr7vsshie3vS5kQ0u1e1yqAqXgyDjqKXOkx+dpgUTehSJHhPNHvTc5LXRsvvXKYz6FrwR/DZ8t7BNEvPeLjFgxpH7QVJFLCvCbXs5K6yYbsnLfxFIBPRnrbJkIsK+sQwnRdnsiUdPsTkG5B2lQfQIDAQABo4GHMIGEMB0GA1UdDgQWBBQ2lBp0PiRHHvQ5IRURm8aHsj4RETAfBgNVHSMEGDAWgBQ2lBp0PiRHHvQ5IRURm8aHsj4RETAPBgNVHRMBAf8EBTADAQH/MDEGA1UdEQQqMCiGJnNwaWZmZTovL2Zvby5iYXIuY29tL2NsaWVudC93b3JrbG9hZC8xMA0GCSqGSIb3DQEBCwUAA4ICAQA1mSkgRclAl+E/aS9zJ7t8+Y4n3T24nOKKveSIjxXm/zjhWqVsLYBI6kglWtih2+PELvU8JdPqNZK34Kl0Q6FWpVSGDdWN1i6NyORt2ocggL3ke3iXxRk3UpUKJmqwz81VhA2KUHnMlyE0IufFfZNwNWWHBv13uJfRbjeQpKPhU+yf4DeXrsWcvrZlGvAET+mcplafUzCp7Iv+PcISJtUerbxbVtuHVeZCLlgDXWkLAWJN8rf0dIG4x060LJ+j6j9uRVhb9sZn1HJV+j4XdIYm1VKilluhOtNwP2d3Ox/JuTBxf7hFHXZPfMagQE5k5PzmxRaCAEMJ1l2DvUbZw+shJfSNoWcBo2qadnUaWT3BmmJRBDh7ZReib/RQ1Rd4ygOyzP3E0vkV4/gqyjLdApXh5PZP8KLQZ+1JN/sdWt7VfIt9wYOpkIqujdll51ESHzwQeAK9WVCB4UvVz6zdhItB9CRbXPreWC+wCB1xDovIzFKOVsLs5+Gqs1m7VinG2LxbDqaKyo/FB0Hxx0acBNzezLWoDwXYQrN0T0S4pnqhKD1CYPpdArBkNezUYAjS725FkApuK+mnBX3U0msBffEaUEOkcyar1EW2m/33vpetD/k3eQQkmvQf4Hbiu9AF+9cNDm/hMuXEw5EXGA91fn0891b5eEW8BJHXX0jri0aN8"
|
||||
],
|
||||
"n": "yeAKqRnrclUqhlLgSS1RZWvu2xH3Gu1GM31UkmS2f1_iQ5liFTfFCD7hYm-Y4TBHN12lJxV1JjO8xLc_2RuYWqcC8Dm9gt2cTj-j0I2AicW5C4nvm-N1EKxbtccXd7zIVSYHI_wCMRKZrM7qjmupFK5GIn4yQA0PuuJGYJeum7E3VzAs6cchZfcVH33-fS_Dl_h1HwHKGc93po4N2ST2FEUBJo3WUzmrtRIxYpcB4HffPSbezSoMd9DV6B5sO57rFQSGPeHy9lSjd39V1ZtHR7uTSNu_UOs69GQVO5OU9yHh587FHrEEuDRpZJQ1qFUypO91L_T52vMkLElu-ezxGxzhqfSp7uG56BjzpbBvNciD4qTuoU4BhStuKRfezPZKRm1qmF-Ptry5awgH3JrB6mlD5kJWHkVU0-r8O3LWKNpMlGBrZzg15O-i6nsEQVb5M8e-UFIX4wMm--NGHA5iHp3Oek6uoHmyR44RJlUnoUesSKVz-0lXrq08oT7BEJ6SR7YLOHXMFjmaewbzzcx15ian6-77LIYnt70uZENLtXtcqgKl4Mg46ilzpMfnaYFE3oUiR4TzR703OS10bL71ymM-ha8Efw2fLewTRLz3i4xYMaR-0FSRSwrwm17OSusmG7Jy38RSAT0Z62yZCLCvrEMJ0XZ7IlHT7E5BuQdpUH0",
|
||||
"e": "AQAB"
|
||||
}
|
||||
]
|
||||
},
|
||||
"test.example.com": {
|
||||
"keys": [
|
||||
{
|
||||
"kty": "RSA",
|
||||
"use": "x509-svid",
|
||||
"x5c": [
|
||||
"MIIEZDCCA0ygAwIBAgIUVXGlXjNENtOZbI12epjgIhMaShMwDQYJKoZIhvcNAQELBQAwVjELMAkGA1UEBhMCQVUxEzARBgNVBAgMClNvbWUtU3RhdGUxITAfBgNVBAoMGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZDEPMA0GA1UEAwwGdGVzdGNhMB4XDTI0MTAyMTAyMTQxNVoXDTM0MTAxOTAyMTQxNVowZTELMAkGA1UEBhMCVVMxETAPBgNVBAgMCElsbGlub2lzMRAwDgYDVQQHDAdDaGljYWdvMRUwEwYDVQQKDAxFeGFtcGxlLCBDby4xGjAYBgNVBAMMESoudGVzdC5nb29nbGUuY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5xOONxJJ8b8Qauvob5/7dPYZfIcd+uhAWL2ZlTPzQvu4oF0QI4iYgP5iGgry9zEtCM+YQS8UhiAlPlqa6ANxgiBSEyMHH/xE8lo/+caYGeACqy640Jpl/JocFGo3xd1L8DCawjlaj6eu7T7T/tpAV2qq13b5710eNRbCAfFe8yALiGQemx0IYhlZXNbIGWLBNhBhvVjJh7UvOqpADk4xtl8o5j0xgMIRg6WJGK6c6ffSIg4eP1XmovNYZ9LLEJG68tF0Q/yIN43B4dt1oq4jzSdCbG4F1EiykT2TmwPVYDi8tml6DfOCDGnit8svnMEmBv/fcPd31GSbXjF8M+KGGQIDAQABo4IBGTCCARUwdwYDVR0RBHAwboIQKi50ZXN0Lmdvb2dsZS5mcoIYd2F0ZXJ6b29pLnRlc3QuZ29vZ2xlLmJlghIqLnRlc3QueW91dHViZS5jb22HBMCoAQOGJnNwaWZmZTovL2V4YW1wbGUuY29tL3dvcmtsb2FkLzllZWJjY2QyMB0GA1UdDgQWBBRvRpAYHQYP6dFPf5V7/MyCftnNjTB7BgNVHSMEdDByoVqkWDBWMQswCQYDVQQGEwJBVTETMBEGA1UECAwKU29tZS1TdGF0ZTEhMB8GA1UECgwYSW50ZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMQ8wDQYDVQQDDAZ0ZXN0Y2GCFFqz9Fbx3Mviz+lLmDbYi/YAYQ+aMA0GCSqGSIb3DQEBCwUAA4IBAQBJ1bnbBHa1n15vvhpGIzokuiJ+9q/zim63UuVDnkhrQM2N+RQbStGTTis2tNse1bh460dJFm6ArgHWogzx6fQZzgaDeCOAXvrAe4jM9IHr9K7lkq/33CZSBDV+jCmm2sRsqSMkKUcX6JhyqWGFHuTDAKJzsEV2MlcswleKlGHDkeelAaxlLzpzRHOSQd0N9xAs18lzx95SQEx90PtrBOmvIDDiI5o5z9Oz12Iy1toiksFl4jmknkDD5VF3AyCRgN8NPW0uNC8D2vo4L+tgj9U6NPlmMOrjRsEH257LJ1wopAGr+yezkIIdQQodGSVm5cOuw/K7Ma4nBDjVJkjcdY3t"
|
||||
],
|
||||
"n": "5xOONxJJ8b8Qauvob5_7dPYZfIcd-uhAWL2ZlTPzQvu4oF0QI4iYgP5iGgry9zEtCM-YQS8UhiAlPlqa6ANxgiBSEyMHH_xE8lo_-caYGeACqy640Jpl_JocFGo3xd1L8DCawjlaj6eu7T7T_tpAV2qq13b5710eNRbCAfFe8yALiGQemx0IYhlZXNbIGWLBNhBhvVjJh7UvOqpADk4xtl8o5j0xgMIRg6WJGK6c6ffSIg4eP1XmovNYZ9LLEJG68tF0Q_yIN43B4dt1oq4jzSdCbG4F1EiykT2TmwPVYDi8tml6DfOCDGnit8svnMEmBv_fcPd31GSbXjF8M-KGGQ",
|
||||
"e": "AQAB"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
9
testdata/spiffe/spiffebundle_empty_keys.json
vendored
Normal file
9
testdata/spiffe/spiffebundle_empty_keys.json
vendored
Normal file
@@ -0,0 +1,9 @@
|
||||
{
|
||||
"trust_domains": {
|
||||
"": {
|
||||
"spiffe_sequence": 12035488,
|
||||
"keys": [
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
18
testdata/spiffe/spiffebundle_empty_string_key.json
vendored
Normal file
18
testdata/spiffe/spiffebundle_empty_string_key.json
vendored
Normal file
@@ -0,0 +1,18 @@
|
||||
{
|
||||
"trust_domains": {
|
||||
"": {
|
||||
"spiffe_sequence": 12035488,
|
||||
"keys": [
|
||||
{
|
||||
"kty": "RSA",
|
||||
"use": "x509-svid",
|
||||
"x5c": [
|
||||
"MIIFsjCCA5qgAwIBAgIURygVMMzdr+Q7rsUaz189JozyHMwwDQYJKoZIhvcNAQELBQAwTjELMAkGA1UEBhMCVVMxCzAJBgNVBAgMAkNBMQwwCgYDVQQHDANTVkwxDTALBgNVBAoMBGdSUEMxFTATBgNVBAMMDHRlc3QtY2xpZW50MTAeFw0yMTEyMjMxODQyNTJaFw0zMTEyMjExODQyNTJaME4xCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJDQTEMMAoGA1UEBwwDU1ZMMQ0wCwYDVQQKDARnUlBDMRUwEwYDVQQDDAx0ZXN0LWNsaWVudDEwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDJ4AqpGetyVSqGUuBJLVFla+7bEfca7UYzfVSSZLZ/X+JDmWIVN8UIPuFib5jhMEc3XaUnFXUmM7zEtz/ZG5hapwLwOb2C3ZxOP6PQjYCJxbkLie+b43UQrFu1xxd3vMhVJgcj/AIxEpmszuqOa6kUrkYifjJADQ+64kZgl66bsTdXMCzpxyFl9xUfff59L8OX+HUfAcoZz3emjg3ZJPYURQEmjdZTOau1EjFilwHgd989Jt7NKgx30NXoHmw7nusVBIY94fL2VKN3f1XVm0dHu5NI279Q6zr0ZBU7k5T3IeHnzsUesQS4NGlklDWoVTKk73Uv9Pna8yQsSW757PEbHOGp9Knu4bnoGPOlsG81yIPipO6hTgGFK24pF97M9kpGbWqYX4+2vLlrCAfcmsHqaUPmQlYeRVTT6vw7ctYo2kyUYGtnODXk76LqewRBVvkzx75QUhfjAyb740YcDmIenc56Tq6gebJHjhEmVSehR6xIpXP7SVeurTyhPsEQnpJHtgs4dcwWOZp7BvPNzHXmJqfr7vsshie3vS5kQ0u1e1yqAqXgyDjqKXOkx+dpgUTehSJHhPNHvTc5LXRsvvXKYz6FrwR/DZ8t7BNEvPeLjFgxpH7QVJFLCvCbXs5K6yYbsnLfxFIBPRnrbJkIsK+sQwnRdnsiUdPsTkG5B2lQfQIDAQABo4GHMIGEMB0GA1UdDgQWBBQ2lBp0PiRHHvQ5IRURm8aHsj4RETAfBgNVHSMEGDAWgBQ2lBp0PiRHHvQ5IRURm8aHsj4RETAPBgNVHRMBAf8EBTADAQH/MDEGA1UdEQQqMCiGJnNwaWZmZTovL2Zvby5iYXIuY29tL2NsaWVudC93b3JrbG9hZC8xMA0GCSqGSIb3DQEBCwUAA4ICAQA1mSkgRclAl+E/aS9zJ7t8+Y4n3T24nOKKveSIjxXm/zjhWqVsLYBI6kglWtih2+PELvU8JdPqNZK34Kl0Q6FWpVSGDdWN1i6NyORt2ocggL3ke3iXxRk3UpUKJmqwz81VhA2KUHnMlyE0IufFfZNwNWWHBv13uJfRbjeQpKPhU+yf4DeXrsWcvrZlGvAET+mcplafUzCp7Iv+PcISJtUerbxbVtuHVeZCLlgDXWkLAWJN8rf0dIG4x060LJ+j6j9uRVhb9sZn1HJV+j4XdIYm1VKilluhOtNwP2d3Ox/JuTBxf7hFHXZPfMagQE5k5PzmxRaCAEMJ1l2DvUbZw+shJfSNoWcBo2qadnUaWT3BmmJRBDh7ZReib/RQ1Rd4ygOyzP3E0vkV4/gqyjLdApXh5PZP8KLQZ+1JN/sdWt7VfIt9wYOpkIqujdll51ESHzwQeAK9WVCB4UvVz6zdhItB9CRbXPreWC+wCB1xDovIzFKOVsLs5+Gqs1m7VinG2LxbDqaKyo/FB0Hxx0acBNzezLWoDwXYQrN0T0S4pnqhKD1CYPpdArBkNezUYAjS725FkApuK+mnBX3U0msBffEaUEOkcyar1EW2m/33vpetD/k3eQQkmvQf4Hbiu9AF+9cNDm/hMuXEw5EXGA91fn0891b5eEW8BJHXX0jri0aN8g=="
|
||||
],
|
||||
"n": "yeAKqRnrclUqhlLgSS1RZWvu2xH3Gu1GM31UkmS2f1_iQ5liFTfFCD7hYm-Y4TBHN12lJxV1JjO8xLc_2RuYWqcC8Dm9gt2cTj-j0I2AicW5C4nvm-N1EKxbtccXd7zIVSYHI_wCMRKZrM7qjmupFK5GIn4yQA0PuuJGYJeum7E3VzAs6cchZfcVH33-fS_Dl_h1HwHKGc93po4N2ST2FEUBJo3WUzmrtRIxYpcB4HffPSbezSoMd9DV6B5sO57rFQSGPeHy9lSjd39V1ZtHR7uTSNu_UOs69GQVO5OU9yHh587FHrEEuDRpZJQ1qFUypO91L_T52vMkLElu-ezxGxzhqfSp7uG56BjzpbBvNciD4qTuoU4BhStuKRfezPZKRm1qmF-Ptry5awgH3JrB6mlD5kJWHkVU0-r8O3LWKNpMlGBrZzg15O-i6nsEQVb5M8e-UFIX4wMm--NGHA5iHp3Oek6uoHmyR44RJlUnoUesSKVz-0lXrq08oT7BEJ6SR7YLOHXMFjmaewbzzcx15ian6-77LIYnt70uZENLtXtcqgKl4Mg46ilzpMfnaYFE3oUiR4TzR703OS10bL71ymM-ha8Efw2fLewTRLz3i4xYMaR-0FSRSwrwm17OSusmG7Jy38RSAT0Z62yZCLCvrEMJ0XZ7IlHT7E5BuQdpUH0",
|
||||
"e": "AQAB"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
18
testdata/spiffe/spiffebundle_invalid_trustdomain.json
vendored
Normal file
18
testdata/spiffe/spiffebundle_invalid_trustdomain.json
vendored
Normal file
@@ -0,0 +1,18 @@
|
||||
{
|
||||
"trust_domains": {
|
||||
"invalid#character": {
|
||||
"spiffe_sequence": 12035488,
|
||||
"keys": [
|
||||
{
|
||||
"kty": "RSA",
|
||||
"use": "x509-svid",
|
||||
"x5c": [
|
||||
"MIIFsjCCA5qgAwIBAgIURygVMMzdr+Q7rsUaz189JozyHMwwDQYJKoZIhvcNAQELBQAwTjELMAkGA1UEBhMCVVMxCzAJBgNVBAgMAkNBMQwwCgYDVQQHDANTVkwxDTALBgNVBAoMBGdSUEMxFTATBgNVBAMMDHRlc3QtY2xpZW50MTAeFw0yMTEyMjMxODQyNTJaFw0zMTEyMjExODQyNTJaME4xCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJDQTEMMAoGA1UEBwwDU1ZMMQ0wCwYDVQQKDARnUlBDMRUwEwYDVQQDDAx0ZXN0LWNsaWVudDEwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDJ4AqpGetyVSqGUuBJLVFla+7bEfca7UYzfVSSZLZ/X+JDmWIVN8UIPuFib5jhMEc3XaUnFXUmM7zEtz/ZG5hapwLwOb2C3ZxOP6PQjYCJxbkLie+b43UQrFu1xxd3vMhVJgcj/AIxEpmszuqOa6kUrkYifjJADQ+64kZgl66bsTdXMCzpxyFl9xUfff59L8OX+HUfAcoZz3emjg3ZJPYURQEmjdZTOau1EjFilwHgd989Jt7NKgx30NXoHmw7nusVBIY94fL2VKN3f1XVm0dHu5NI279Q6zr0ZBU7k5T3IeHnzsUesQS4NGlklDWoVTKk73Uv9Pna8yQsSW757PEbHOGp9Knu4bnoGPOlsG81yIPipO6hTgGFK24pF97M9kpGbWqYX4+2vLlrCAfcmsHqaUPmQlYeRVTT6vw7ctYo2kyUYGtnODXk76LqewRBVvkzx75QUhfjAyb740YcDmIenc56Tq6gebJHjhEmVSehR6xIpXP7SVeurTyhPsEQnpJHtgs4dcwWOZp7BvPNzHXmJqfr7vsshie3vS5kQ0u1e1yqAqXgyDjqKXOkx+dpgUTehSJHhPNHvTc5LXRsvvXKYz6FrwR/DZ8t7BNEvPeLjFgxpH7QVJFLCvCbXs5K6yYbsnLfxFIBPRnrbJkIsK+sQwnRdnsiUdPsTkG5B2lQfQIDAQABo4GHMIGEMB0GA1UdDgQWBBQ2lBp0PiRHHvQ5IRURm8aHsj4RETAfBgNVHSMEGDAWgBQ2lBp0PiRHHvQ5IRURm8aHsj4RETAPBgNVHRMBAf8EBTADAQH/MDEGA1UdEQQqMCiGJnNwaWZmZTovL2Zvby5iYXIuY29tL2NsaWVudC93b3JrbG9hZC8xMA0GCSqGSIb3DQEBCwUAA4ICAQA1mSkgRclAl+E/aS9zJ7t8+Y4n3T24nOKKveSIjxXm/zjhWqVsLYBI6kglWtih2+PELvU8JdPqNZK34Kl0Q6FWpVSGDdWN1i6NyORt2ocggL3ke3iXxRk3UpUKJmqwz81VhA2KUHnMlyE0IufFfZNwNWWHBv13uJfRbjeQpKPhU+yf4DeXrsWcvrZlGvAET+mcplafUzCp7Iv+PcISJtUerbxbVtuHVeZCLlgDXWkLAWJN8rf0dIG4x060LJ+j6j9uRVhb9sZn1HJV+j4XdIYm1VKilluhOtNwP2d3Ox/JuTBxf7hFHXZPfMagQE5k5PzmxRaCAEMJ1l2DvUbZw+shJfSNoWcBo2qadnUaWT3BmmJRBDh7ZReib/RQ1Rd4ygOyzP3E0vkV4/gqyjLdApXh5PZP8KLQZ+1JN/sdWt7VfIt9wYOpkIqujdll51ESHzwQeAK9WVCB4UvVz6zdhItB9CRbXPreWC+wCB1xDovIzFKOVsLs5+Gqs1m7VinG2LxbDqaKyo/FB0Hxx0acBNzezLWoDwXYQrN0T0S4pnqhKD1CYPpdArBkNezUYAjS725FkApuK+mnBX3U0msBffEaUEOkcyar1EW2m/33vpetD/k3eQQkmvQf4Hbiu9AF+9cNDm/hMuXEw5EXGA91fn0891b5eEW8BJHXX0jri0aN8g=="
|
||||
],
|
||||
"n": "yeAKqRnrclUqhlLgSS1RZWvu2xH3Gu1GM31UkmS2f1_iQ5liFTfFCD7hYm-Y4TBHN12lJxV1JjO8xLc_2RuYWqcC8Dm9gt2cTj-j0I2AicW5C4nvm-N1EKxbtccXd7zIVSYHI_wCMRKZrM7qjmupFK5GIn4yQA0PuuJGYJeum7E3VzAs6cchZfcVH33-fS_Dl_h1HwHKGc93po4N2ST2FEUBJo3WUzmrtRIxYpcB4HffPSbezSoMd9DV6B5sO57rFQSGPeHy9lSjd39V1ZtHR7uTSNu_UOs69GQVO5OU9yHh587FHrEEuDRpZJQ1qFUypO91L_T52vMkLElu-ezxGxzhqfSp7uG56BjzpbBvNciD4qTuoU4BhStuKRfezPZKRm1qmF-Ptry5awgH3JrB6mlD5kJWHkVU0-r8O3LWKNpMlGBrZzg15O-i6nsEQVb5M8e-UFIX4wMm--NGHA5iHp3Oek6uoHmyR44RJlUnoUesSKVz-0lXrq08oT7BEJ6SR7YLOHXMFjmaewbzzcx15ian6-77LIYnt70uZENLtXtcqgKl4Mg46ilzpMfnaYFE3oUiR4TzR703OS10bL71ymM-ha8Efw2fLewTRLz3i4xYMaR-0FSRSwrwm17OSusmG7Jy38RSAT0Z62yZCLCvrEMJ0XZ7IlHT7E5BuQdpUH0",
|
||||
"e": "AQAB"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
4
testdata/spiffe/spiffebundle_malformed.json
vendored
Normal file
4
testdata/spiffe/spiffebundle_malformed.json
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
[
|
||||
"test.google.com",
|
||||
"test.google.com.au"
|
||||
]
|
||||
31
testdata/spiffe/spiffebundle_match_client_spiffe.json
vendored
Normal file
31
testdata/spiffe/spiffebundle_match_client_spiffe.json
vendored
Normal file
@@ -0,0 +1,31 @@
|
||||
{
|
||||
"trust_domains": {
|
||||
"foo.bar.com": {
|
||||
"spiffe_sequence": 12035488,
|
||||
"keys": [
|
||||
{
|
||||
"kty": "RSA",
|
||||
"use": "x509-svid",
|
||||
"x5c": [
|
||||
"MIIFsjCCA5qgAwIBAgIURygVMMzdr+Q7rsUaz189JozyHMwwDQYJKoZIhvcNAQELBQAwTjELMAkGA1UEBhMCVVMxCzAJBgNVBAgMAkNBMQwwCgYDVQQHDANTVkwxDTALBgNVBAoMBGdSUEMxFTATBgNVBAMMDHRlc3QtY2xpZW50MTAeFw0yMTEyMjMxODQyNTJaFw0zMTEyMjExODQyNTJaME4xCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJDQTEMMAoGA1UEBwwDU1ZMMQ0wCwYDVQQKDARnUlBDMRUwEwYDVQQDDAx0ZXN0LWNsaWVudDEwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDJ4AqpGetyVSqGUuBJLVFla+7bEfca7UYzfVSSZLZ/X+JDmWIVN8UIPuFib5jhMEc3XaUnFXUmM7zEtz/ZG5hapwLwOb2C3ZxOP6PQjYCJxbkLie+b43UQrFu1xxd3vMhVJgcj/AIxEpmszuqOa6kUrkYifjJADQ+64kZgl66bsTdXMCzpxyFl9xUfff59L8OX+HUfAcoZz3emjg3ZJPYURQEmjdZTOau1EjFilwHgd989Jt7NKgx30NXoHmw7nusVBIY94fL2VKN3f1XVm0dHu5NI279Q6zr0ZBU7k5T3IeHnzsUesQS4NGlklDWoVTKk73Uv9Pna8yQsSW757PEbHOGp9Knu4bnoGPOlsG81yIPipO6hTgGFK24pF97M9kpGbWqYX4+2vLlrCAfcmsHqaUPmQlYeRVTT6vw7ctYo2kyUYGtnODXk76LqewRBVvkzx75QUhfjAyb740YcDmIenc56Tq6gebJHjhEmVSehR6xIpXP7SVeurTyhPsEQnpJHtgs4dcwWOZp7BvPNzHXmJqfr7vsshie3vS5kQ0u1e1yqAqXgyDjqKXOkx+dpgUTehSJHhPNHvTc5LXRsvvXKYz6FrwR/DZ8t7BNEvPeLjFgxpH7QVJFLCvCbXs5K6yYbsnLfxFIBPRnrbJkIsK+sQwnRdnsiUdPsTkG5B2lQfQIDAQABo4GHMIGEMB0GA1UdDgQWBBQ2lBp0PiRHHvQ5IRURm8aHsj4RETAfBgNVHSMEGDAWgBQ2lBp0PiRHHvQ5IRURm8aHsj4RETAPBgNVHRMBAf8EBTADAQH/MDEGA1UdEQQqMCiGJnNwaWZmZTovL2Zvby5iYXIuY29tL2NsaWVudC93b3JrbG9hZC8xMA0GCSqGSIb3DQEBCwUAA4ICAQA1mSkgRclAl+E/aS9zJ7t8+Y4n3T24nOKKveSIjxXm/zjhWqVsLYBI6kglWtih2+PELvU8JdPqNZK34Kl0Q6FWpVSGDdWN1i6NyORt2ocggL3ke3iXxRk3UpUKJmqwz81VhA2KUHnMlyE0IufFfZNwNWWHBv13uJfRbjeQpKPhU+yf4DeXrsWcvrZlGvAET+mcplafUzCp7Iv+PcISJtUerbxbVtuHVeZCLlgDXWkLAWJN8rf0dIG4x060LJ+j6j9uRVhb9sZn1HJV+j4XdIYm1VKilluhOtNwP2d3Ox/JuTBxf7hFHXZPfMagQE5k5PzmxRaCAEMJ1l2DvUbZw+shJfSNoWcBo2qadnUaWT3BmmJRBDh7ZReib/RQ1Rd4ygOyzP3E0vkV4/gqyjLdApXh5PZP8KLQZ+1JN/sdWt7VfIt9wYOpkIqujdll51ESHzwQeAK9WVCB4UvVz6zdhItB9CRbXPreWC+wCB1xDovIzFKOVsLs5+Gqs1m7VinG2LxbDqaKyo/FB0Hxx0acBNzezLWoDwXYQrN0T0S4pnqhKD1CYPpdArBkNezUYAjS725FkApuK+mnBX3U0msBffEaUEOkcyar1EW2m/33vpetD/k3eQQkmvQf4Hbiu9AF+9cNDm/hMuXEw5EXGA91fn0891b5eEW8BJHXX0jri0aN8g=="
|
||||
],
|
||||
"n": "yeAKqRnrclUqhlLgSS1RZWvu2xH3Gu1GM31UkmS2f1_iQ5liFTfFCD7hYm-Y4TBHN12lJxV1JjO8xLc_2RuYWqcC8Dm9gt2cTj-j0I2AicW5C4nvm-N1EKxbtccXd7zIVSYHI_wCMRKZrM7qjmupFK5GIn4yQA0PuuJGYJeum7E3VzAs6cchZfcVH33-fS_Dl_h1HwHKGc93po4N2ST2FEUBJo3WUzmrtRIxYpcB4HffPSbezSoMd9DV6B5sO57rFQSGPeHy9lSjd39V1ZtHR7uTSNu_UOs69GQVO5OU9yHh587FHrEEuDRpZJQ1qFUypO91L_T52vMkLElu-ezxGxzhqfSp7uG56BjzpbBvNciD4qTuoU4BhStuKRfezPZKRm1qmF-Ptry5awgH3JrB6mlD5kJWHkVU0-r8O3LWKNpMlGBrZzg15O-i6nsEQVb5M8e-UFIX4wMm--NGHA5iHp3Oek6uoHmyR44RJlUnoUesSKVz-0lXrq08oT7BEJ6SR7YLOHXMFjmaewbzzcx15ian6-77LIYnt70uZENLtXtcqgKl4Mg46ilzpMfnaYFE3oUiR4TzR703OS10bL71ymM-ha8Efw2fLewTRLz3i4xYMaR-0FSRSwrwm17OSusmG7Jy38RSAT0Z62yZCLCvrEMJ0XZ7IlHT7E5BuQdpUH0",
|
||||
"e": "AQAB"
|
||||
}
|
||||
]
|
||||
},
|
||||
"test.example.com": {
|
||||
"keys": [
|
||||
{
|
||||
"kty": "RSA",
|
||||
"use": "x509-svid",
|
||||
"x5c": [
|
||||
"MIIEZDCCA0ygAwIBAgIUVXGlXjNENtOZbI12epjgIhMaShMwDQYJKoZIhvcNAQELBQAwVjELMAkGA1UEBhMCQVUxEzARBgNVBAgMClNvbWUtU3RhdGUxITAfBgNVBAoMGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZDEPMA0GA1UEAwwGdGVzdGNhMB4XDTI0MTAyMTAyMTQxNVoXDTM0MTAxOTAyMTQxNVowZTELMAkGA1UEBhMCVVMxETAPBgNVBAgMCElsbGlub2lzMRAwDgYDVQQHDAdDaGljYWdvMRUwEwYDVQQKDAxFeGFtcGxlLCBDby4xGjAYBgNVBAMMESoudGVzdC5nb29nbGUuY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5xOONxJJ8b8Qauvob5/7dPYZfIcd+uhAWL2ZlTPzQvu4oF0QI4iYgP5iGgry9zEtCM+YQS8UhiAlPlqa6ANxgiBSEyMHH/xE8lo/+caYGeACqy640Jpl/JocFGo3xd1L8DCawjlaj6eu7T7T/tpAV2qq13b5710eNRbCAfFe8yALiGQemx0IYhlZXNbIGWLBNhBhvVjJh7UvOqpADk4xtl8o5j0xgMIRg6WJGK6c6ffSIg4eP1XmovNYZ9LLEJG68tF0Q/yIN43B4dt1oq4jzSdCbG4F1EiykT2TmwPVYDi8tml6DfOCDGnit8svnMEmBv/fcPd31GSbXjF8M+KGGQIDAQABo4IBGTCCARUwdwYDVR0RBHAwboIQKi50ZXN0Lmdvb2dsZS5mcoIYd2F0ZXJ6b29pLnRlc3QuZ29vZ2xlLmJlghIqLnRlc3QueW91dHViZS5jb22HBMCoAQOGJnNwaWZmZTovL2V4YW1wbGUuY29tL3dvcmtsb2FkLzllZWJjY2QyMB0GA1UdDgQWBBRvRpAYHQYP6dFPf5V7/MyCftnNjTB7BgNVHSMEdDByoVqkWDBWMQswCQYDVQQGEwJBVTETMBEGA1UECAwKU29tZS1TdGF0ZTEhMB8GA1UECgwYSW50ZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMQ8wDQYDVQQDDAZ0ZXN0Y2GCFFqz9Fbx3Mviz+lLmDbYi/YAYQ+aMA0GCSqGSIb3DQEBCwUAA4IBAQBJ1bnbBHa1n15vvhpGIzokuiJ+9q/zim63UuVDnkhrQM2N+RQbStGTTis2tNse1bh460dJFm6ArgHWogzx6fQZzgaDeCOAXvrAe4jM9IHr9K7lkq/33CZSBDV+jCmm2sRsqSMkKUcX6JhyqWGFHuTDAKJzsEV2MlcswleKlGHDkeelAaxlLzpzRHOSQd0N9xAs18lzx95SQEx90PtrBOmvIDDiI5o5z9Oz12Iy1toiksFl4jmknkDD5VF3AyCRgN8NPW0uNC8D2vo4L+tgj9U6NPlmMOrjRsEH257LJ1wopAGr+yezkIIdQQodGSVm5cOuw/K7Ma4nBDjVJkjcdY3t"
|
||||
],
|
||||
"n": "5xOONxJJ8b8Qauvob5_7dPYZfIcd-uhAWL2ZlTPzQvu4oF0QI4iYgP5iGgry9zEtCM-YQS8UhiAlPlqa6ANxgiBSEyMHH_xE8lo_-caYGeACqy640Jpl_JocFGo3xd1L8DCawjlaj6eu7T7T_tpAV2qq13b5710eNRbCAfFe8yALiGQemx0IYhlZXNbIGWLBNhBhvVjJh7UvOqpADk4xtl8o5j0xgMIRg6WJGK6c6ffSIg4eP1XmovNYZ9LLEJG68tF0Q_yIN43B4dt1oq4jzSdCbG4F1EiykT2TmwPVYDi8tml6DfOCDGnit8svnMEmBv_fcPd31GSbXjF8M-KGGQ",
|
||||
"e": "AQAB"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
31
testdata/spiffe/spiffebundle_wrong_kid.json
vendored
Normal file
31
testdata/spiffe/spiffebundle_wrong_kid.json
vendored
Normal file
@@ -0,0 +1,31 @@
|
||||
{
|
||||
"trust_domains": {
|
||||
"example.com": {
|
||||
"spiffe_sequence": 12035488,
|
||||
"keys": [
|
||||
{
|
||||
"kid": "Some value",
|
||||
"use": "x509-svid",
|
||||
"x5c": [
|
||||
"MIIFsjCCA5qgAwIBAgIURygVMMzdr+Q7rsUaz189JozyHMwwDQYJKoZIhvcNAQELBQAwTjELMAkGA1UEBhMCVVMxCzAJBgNVBAgMAkNBMQwwCgYDVQQHDANTVkwxDTALBgNVBAoMBGdSUEMxFTATBgNVBAMMDHRlc3QtY2xpZW50MTAeFw0yMTEyMjMxODQyNTJaFw0zMTEyMjExODQyNTJaME4xCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJDQTEMMAoGA1UEBwwDU1ZMMQ0wCwYDVQQKDARnUlBDMRUwEwYDVQQDDAx0ZXN0LWNsaWVudDEwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDJ4AqpGetyVSqGUuBJLVFla+7bEfca7UYzfVSSZLZ/X+JDmWIVN8UIPuFib5jhMEc3XaUnFXUmM7zEtz/ZG5hapwLwOb2C3ZxOP6PQjYCJxbkLie+b43UQrFu1xxd3vMhVJgcj/AIxEpmszuqOa6kUrkYifjJADQ+64kZgl66bsTdXMCzpxyFl9xUfff59L8OX+HUfAcoZz3emjg3ZJPYURQEmjdZTOau1EjFilwHgd989Jt7NKgx30NXoHmw7nusVBIY94fL2VKN3f1XVm0dHu5NI279Q6zr0ZBU7k5T3IeHnzsUesQS4NGlklDWoVTKk73Uv9Pna8yQsSW757PEbHOGp9Knu4bnoGPOlsG81yIPipO6hTgGFK24pF97M9kpGbWqYX4+2vLlrCAfcmsHqaUPmQlYeRVTT6vw7ctYo2kyUYGtnODXk76LqewRBVvkzx75QUhfjAyb740YcDmIenc56Tq6gebJHjhEmVSehR6xIpXP7SVeurTyhPsEQnpJHtgs4dcwWOZp7BvPNzHXmJqfr7vsshie3vS5kQ0u1e1yqAqXgyDjqKXOkx+dpgUTehSJHhPNHvTc5LXRsvvXKYz6FrwR/DZ8t7BNEvPeLjFgxpH7QVJFLCvCbXs5K6yYbsnLfxFIBPRnrbJkIsK+sQwnRdnsiUdPsTkG5B2lQfQIDAQABo4GHMIGEMB0GA1UdDgQWBBQ2lBp0PiRHHvQ5IRURm8aHsj4RETAfBgNVHSMEGDAWgBQ2lBp0PiRHHvQ5IRURm8aHsj4RETAPBgNVHRMBAf8EBTADAQH/MDEGA1UdEQQqMCiGJnNwaWZmZTovL2Zvby5iYXIuY29tL2NsaWVudC93b3JrbG9hZC8xMA0GCSqGSIb3DQEBCwUAA4ICAQA1mSkgRclAl+E/aS9zJ7t8+Y4n3T24nOKKveSIjxXm/zjhWqVsLYBI6kglWtih2+PELvU8JdPqNZK34Kl0Q6FWpVSGDdWN1i6NyORt2ocggL3ke3iXxRk3UpUKJmqwz81VhA2KUHnMlyE0IufFfZNwNWWHBv13uJfRbjeQpKPhU+yf4DeXrsWcvrZlGvAET+mcplafUzCp7Iv+PcISJtUerbxbVtuHVeZCLlgDXWkLAWJN8rf0dIG4x060LJ+j6j9uRVhb9sZn1HJV+j4XdIYm1VKilluhOtNwP2d3Ox/JuTBxf7hFHXZPfMagQE5k5PzmxRaCAEMJ1l2DvUbZw+shJfSNoWcBo2qadnUaWT3BmmJRBDh7ZReib/RQ1Rd4ygOyzP3E0vkV4/gqyjLdApXh5PZP8KLQZ+1JN/sdWt7VfIt9wYOpkIqujdll51ESHzwQeAK9WVCB4UvVz6zdhItB9CRbXPreWC+wCB1xDovIzFKOVsLs5+Gqs1m7VinG2LxbDqaKyo/FB0Hxx0acBNzezLWoDwXYQrN0T0S4pnqhKD1CYPpdArBkNezUYAjS725FkApuK+mnBX3U0msBffEaUEOkcyar1EW2m/33vpetD/k3eQQkmvQf4Hbiu9AF+9cNDm/hMuXEw5EXGA91fn0891b5eEW8BJHXX0jri0aN8g=="
|
||||
],
|
||||
"n": "yeAKqRnrclUqhlLgSS1RZWvu2xH3Gu1GM31UkmS2f1_iQ5liFTfFCD7hYm-Y4TBHN12lJxV1JjO8xLc_2RuYWqcC8Dm9gt2cTj-j0I2AicW5C4nvm-N1EKxbtccXd7zIVSYHI_wCMRKZrM7qjmupFK5GIn4yQA0PuuJGYJeum7E3VzAs6cchZfcVH33-fS_Dl_h1HwHKGc93po4N2ST2FEUBJo3WUzmrtRIxYpcB4HffPSbezSoMd9DV6B5sO57rFQSGPeHy9lSjd39V1ZtHR7uTSNu_UOs69GQVO5OU9yHh587FHrEEuDRpZJQ1qFUypO91L_T52vMkLElu-ezxGxzhqfSp7uG56BjzpbBvNciD4qTuoU4BhStuKRfezPZKRm1qmF-Ptry5awgH3JrB6mlD5kJWHkVU0-r8O3LWKNpMlGBrZzg15O-i6nsEQVb5M8e-UFIX4wMm--NGHA5iHp3Oek6uoHmyR44RJlUnoUesSKVz-0lXrq08oT7BEJ6SR7YLOHXMFjmaewbzzcx15ian6-77LIYnt70uZENLtXtcqgKl4Mg46ilzpMfnaYFE3oUiR4TzR703OS10bL71ymM-ha8Efw2fLewTRLz3i4xYMaR-0FSRSwrwm17OSusmG7Jy38RSAT0Z62yZCLCvrEMJ0XZ7IlHT7E5BuQdpUH0",
|
||||
"e": "AQAB"
|
||||
}
|
||||
]
|
||||
},
|
||||
"test.example.com": {
|
||||
"keys": [
|
||||
{
|
||||
"kty": "RSA",
|
||||
"use": "x509-svid",
|
||||
"x5c": [
|
||||
"MIIEZDCCA0ygAwIBAgIUVXGlXjNENtOZbI12epjgIhMaShMwDQYJKoZIhvcNAQELBQAwVjELMAkGA1UEBhMCQVUxEzARBgNVBAgMClNvbWUtU3RhdGUxITAfBgNVBAoMGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZDEPMA0GA1UEAwwGdGVzdGNhMB4XDTI0MTAyMTAyMTQxNVoXDTM0MTAxOTAyMTQxNVowZTELMAkGA1UEBhMCVVMxETAPBgNVBAgMCElsbGlub2lzMRAwDgYDVQQHDAdDaGljYWdvMRUwEwYDVQQKDAxFeGFtcGxlLCBDby4xGjAYBgNVBAMMESoudGVzdC5nb29nbGUuY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5xOONxJJ8b8Qauvob5/7dPYZfIcd+uhAWL2ZlTPzQvu4oF0QI4iYgP5iGgry9zEtCM+YQS8UhiAlPlqa6ANxgiBSEyMHH/xE8lo/+caYGeACqy640Jpl/JocFGo3xd1L8DCawjlaj6eu7T7T/tpAV2qq13b5710eNRbCAfFe8yALiGQemx0IYhlZXNbIGWLBNhBhvVjJh7UvOqpADk4xtl8o5j0xgMIRg6WJGK6c6ffSIg4eP1XmovNYZ9LLEJG68tF0Q/yIN43B4dt1oq4jzSdCbG4F1EiykT2TmwPVYDi8tml6DfOCDGnit8svnMEmBv/fcPd31GSbXjF8M+KGGQIDAQABo4IBGTCCARUwdwYDVR0RBHAwboIQKi50ZXN0Lmdvb2dsZS5mcoIYd2F0ZXJ6b29pLnRlc3QuZ29vZ2xlLmJlghIqLnRlc3QueW91dHViZS5jb22HBMCoAQOGJnNwaWZmZTovL2V4YW1wbGUuY29tL3dvcmtsb2FkLzllZWJjY2QyMB0GA1UdDgQWBBRvRpAYHQYP6dFPf5V7/MyCftnNjTB7BgNVHSMEdDByoVqkWDBWMQswCQYDVQQGEwJBVTETMBEGA1UECAwKU29tZS1TdGF0ZTEhMB8GA1UECgwYSW50ZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMQ8wDQYDVQQDDAZ0ZXN0Y2GCFFqz9Fbx3Mviz+lLmDbYi/YAYQ+aMA0GCSqGSIb3DQEBCwUAA4IBAQBJ1bnbBHa1n15vvhpGIzokuiJ+9q/zim63UuVDnkhrQM2N+RQbStGTTis2tNse1bh460dJFm6ArgHWogzx6fQZzgaDeCOAXvrAe4jM9IHr9K7lkq/33CZSBDV+jCmm2sRsqSMkKUcX6JhyqWGFHuTDAKJzsEV2MlcswleKlGHDkeelAaxlLzpzRHOSQd0N9xAs18lzx95SQEx90PtrBOmvIDDiI5o5z9Oz12Iy1toiksFl4jmknkDD5VF3AyCRgN8NPW0uNC8D2vo4L+tgj9U6NPlmMOrjRsEH257LJ1wopAGr+yezkIIdQQodGSVm5cOuw/K7Ma4nBDjVJkjcdY3t"
|
||||
],
|
||||
"n": "5xOONxJJ8b8Qauvob5_7dPYZfIcd-uhAWL2ZlTPzQvu4oF0QI4iYgP5iGgry9zEtCM-YQS8UhiAlPlqa6ANxgiBSEyMHH_xE8lo_-caYGeACqy640Jpl_JocFGo3xd1L8DCawjlaj6eu7T7T_tpAV2qq13b5710eNRbCAfFe8yALiGQemx0IYhlZXNbIGWLBNhBhvVjJh7UvOqpADk4xtl8o5j0xgMIRg6WJGK6c6ffSIg4eP1XmovNYZ9LLEJG68tF0Q_yIN43B4dt1oq4jzSdCbG4F1EiykT2TmwPVYDi8tml6DfOCDGnit8svnMEmBv_fcPd31GSbXjF8M-KGGQ",
|
||||
"e": "AQAB"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
31
testdata/spiffe/spiffebundle_wrong_kty.json
vendored
Normal file
31
testdata/spiffe/spiffebundle_wrong_kty.json
vendored
Normal file
@@ -0,0 +1,31 @@
|
||||
{
|
||||
"trust_domains": {
|
||||
"example.com": {
|
||||
"spiffe_sequence": 12035488,
|
||||
"keys": [
|
||||
{
|
||||
"kty": "DSA",
|
||||
"use": "x509-svid",
|
||||
"x5c": [
|
||||
"MIIFsjCCA5qgAwIBAgIURygVMMzdr+Q7rsUaz189JozyHMwwDQYJKoZIhvcNAQELBQAwTjELMAkGA1UEBhMCVVMxCzAJBgNVBAgMAkNBMQwwCgYDVQQHDANTVkwxDTALBgNVBAoMBGdSUEMxFTATBgNVBAMMDHRlc3QtY2xpZW50MTAeFw0yMTEyMjMxODQyNTJaFw0zMTEyMjExODQyNTJaME4xCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJDQTEMMAoGA1UEBwwDU1ZMMQ0wCwYDVQQKDARnUlBDMRUwEwYDVQQDDAx0ZXN0LWNsaWVudDEwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDJ4AqpGetyVSqGUuBJLVFla+7bEfca7UYzfVSSZLZ/X+JDmWIVN8UIPuFib5jhMEc3XaUnFXUmM7zEtz/ZG5hapwLwOb2C3ZxOP6PQjYCJxbkLie+b43UQrFu1xxd3vMhVJgcj/AIxEpmszuqOa6kUrkYifjJADQ+64kZgl66bsTdXMCzpxyFl9xUfff59L8OX+HUfAcoZz3emjg3ZJPYURQEmjdZTOau1EjFilwHgd989Jt7NKgx30NXoHmw7nusVBIY94fL2VKN3f1XVm0dHu5NI279Q6zr0ZBU7k5T3IeHnzsUesQS4NGlklDWoVTKk73Uv9Pna8yQsSW757PEbHOGp9Knu4bnoGPOlsG81yIPipO6hTgGFK24pF97M9kpGbWqYX4+2vLlrCAfcmsHqaUPmQlYeRVTT6vw7ctYo2kyUYGtnODXk76LqewRBVvkzx75QUhfjAyb740YcDmIenc56Tq6gebJHjhEmVSehR6xIpXP7SVeurTyhPsEQnpJHtgs4dcwWOZp7BvPNzHXmJqfr7vsshie3vS5kQ0u1e1yqAqXgyDjqKXOkx+dpgUTehSJHhPNHvTc5LXRsvvXKYz6FrwR/DZ8t7BNEvPeLjFgxpH7QVJFLCvCbXs5K6yYbsnLfxFIBPRnrbJkIsK+sQwnRdnsiUdPsTkG5B2lQfQIDAQABo4GHMIGEMB0GA1UdDgQWBBQ2lBp0PiRHHvQ5IRURm8aHsj4RETAfBgNVHSMEGDAWgBQ2lBp0PiRHHvQ5IRURm8aHsj4RETAPBgNVHRMBAf8EBTADAQH/MDEGA1UdEQQqMCiGJnNwaWZmZTovL2Zvby5iYXIuY29tL2NsaWVudC93b3JrbG9hZC8xMA0GCSqGSIb3DQEBCwUAA4ICAQA1mSkgRclAl+E/aS9zJ7t8+Y4n3T24nOKKveSIjxXm/zjhWqVsLYBI6kglWtih2+PELvU8JdPqNZK34Kl0Q6FWpVSGDdWN1i6NyORt2ocggL3ke3iXxRk3UpUKJmqwz81VhA2KUHnMlyE0IufFfZNwNWWHBv13uJfRbjeQpKPhU+yf4DeXrsWcvrZlGvAET+mcplafUzCp7Iv+PcISJtUerbxbVtuHVeZCLlgDXWkLAWJN8rf0dIG4x060LJ+j6j9uRVhb9sZn1HJV+j4XdIYm1VKilluhOtNwP2d3Ox/JuTBxf7hFHXZPfMagQE5k5PzmxRaCAEMJ1l2DvUbZw+shJfSNoWcBo2qadnUaWT3BmmJRBDh7ZReib/RQ1Rd4ygOyzP3E0vkV4/gqyjLdApXh5PZP8KLQZ+1JN/sdWt7VfIt9wYOpkIqujdll51ESHzwQeAK9WVCB4UvVz6zdhItB9CRbXPreWC+wCB1xDovIzFKOVsLs5+Gqs1m7VinG2LxbDqaKyo/FB0Hxx0acBNzezLWoDwXYQrN0T0S4pnqhKD1CYPpdArBkNezUYAjS725FkApuK+mnBX3U0msBffEaUEOkcyar1EW2m/33vpetD/k3eQQkmvQf4Hbiu9AF+9cNDm/hMuXEw5EXGA91fn0891b5eEW8BJHXX0jri0aN8g=="
|
||||
],
|
||||
"n": "yeAKqRnrclUqhlLgSS1RZWvu2xH3Gu1GM31UkmS2f1_iQ5liFTfFCD7hYm-Y4TBHN12lJxV1JjO8xLc_2RuYWqcC8Dm9gt2cTj-j0I2AicW5C4nvm-N1EKxbtccXd7zIVSYHI_wCMRKZrM7qjmupFK5GIn4yQA0PuuJGYJeum7E3VzAs6cchZfcVH33-fS_Dl_h1HwHKGc93po4N2ST2FEUBJo3WUzmrtRIxYpcB4HffPSbezSoMd9DV6B5sO57rFQSGPeHy9lSjd39V1ZtHR7uTSNu_UOs69GQVO5OU9yHh587FHrEEuDRpZJQ1qFUypO91L_T52vMkLElu-ezxGxzhqfSp7uG56BjzpbBvNciD4qTuoU4BhStuKRfezPZKRm1qmF-Ptry5awgH3JrB6mlD5kJWHkVU0-r8O3LWKNpMlGBrZzg15O-i6nsEQVb5M8e-UFIX4wMm--NGHA5iHp3Oek6uoHmyR44RJlUnoUesSKVz-0lXrq08oT7BEJ6SR7YLOHXMFjmaewbzzcx15ian6-77LIYnt70uZENLtXtcqgKl4Mg46ilzpMfnaYFE3oUiR4TzR703OS10bL71ymM-ha8Efw2fLewTRLz3i4xYMaR-0FSRSwrwm17OSusmG7Jy38RSAT0Z62yZCLCvrEMJ0XZ7IlHT7E5BuQdpUH0",
|
||||
"e": "AQAB"
|
||||
}
|
||||
]
|
||||
},
|
||||
"test.example.com": {
|
||||
"keys": [
|
||||
{
|
||||
"kty": "RSA",
|
||||
"use": "x509-svid",
|
||||
"x5c": [
|
||||
"MIIEZDCCA0ygAwIBAgIUVXGlXjNENtOZbI12epjgIhMaShMwDQYJKoZIhvcNAQELBQAwVjELMAkGA1UEBhMCQVUxEzARBgNVBAgMClNvbWUtU3RhdGUxITAfBgNVBAoMGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZDEPMA0GA1UEAwwGdGVzdGNhMB4XDTI0MTAyMTAyMTQxNVoXDTM0MTAxOTAyMTQxNVowZTELMAkGA1UEBhMCVVMxETAPBgNVBAgMCElsbGlub2lzMRAwDgYDVQQHDAdDaGljYWdvMRUwEwYDVQQKDAxFeGFtcGxlLCBDby4xGjAYBgNVBAMMESoudGVzdC5nb29nbGUuY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5xOONxJJ8b8Qauvob5/7dPYZfIcd+uhAWL2ZlTPzQvu4oF0QI4iYgP5iGgry9zEtCM+YQS8UhiAlPlqa6ANxgiBSEyMHH/xE8lo/+caYGeACqy640Jpl/JocFGo3xd1L8DCawjlaj6eu7T7T/tpAV2qq13b5710eNRbCAfFe8yALiGQemx0IYhlZXNbIGWLBNhBhvVjJh7UvOqpADk4xtl8o5j0xgMIRg6WJGK6c6ffSIg4eP1XmovNYZ9LLEJG68tF0Q/yIN43B4dt1oq4jzSdCbG4F1EiykT2TmwPVYDi8tml6DfOCDGnit8svnMEmBv/fcPd31GSbXjF8M+KGGQIDAQABo4IBGTCCARUwdwYDVR0RBHAwboIQKi50ZXN0Lmdvb2dsZS5mcoIYd2F0ZXJ6b29pLnRlc3QuZ29vZ2xlLmJlghIqLnRlc3QueW91dHViZS5jb22HBMCoAQOGJnNwaWZmZTovL2V4YW1wbGUuY29tL3dvcmtsb2FkLzllZWJjY2QyMB0GA1UdDgQWBBRvRpAYHQYP6dFPf5V7/MyCftnNjTB7BgNVHSMEdDByoVqkWDBWMQswCQYDVQQGEwJBVTETMBEGA1UECAwKU29tZS1TdGF0ZTEhMB8GA1UECgwYSW50ZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMQ8wDQYDVQQDDAZ0ZXN0Y2GCFFqz9Fbx3Mviz+lLmDbYi/YAYQ+aMA0GCSqGSIb3DQEBCwUAA4IBAQBJ1bnbBHa1n15vvhpGIzokuiJ+9q/zim63UuVDnkhrQM2N+RQbStGTTis2tNse1bh460dJFm6ArgHWogzx6fQZzgaDeCOAXvrAe4jM9IHr9K7lkq/33CZSBDV+jCmm2sRsqSMkKUcX6JhyqWGFHuTDAKJzsEV2MlcswleKlGHDkeelAaxlLzpzRHOSQd0N9xAs18lzx95SQEx90PtrBOmvIDDiI5o5z9Oz12Iy1toiksFl4jmknkDD5VF3AyCRgN8NPW0uNC8D2vo4L+tgj9U6NPlmMOrjRsEH257LJ1wopAGr+yezkIIdQQodGSVm5cOuw/K7Ma4nBDjVJkjcdY3t"
|
||||
],
|
||||
"n": "5xOONxJJ8b8Qauvob5_7dPYZfIcd-uhAWL2ZlTPzQvu4oF0QI4iYgP5iGgry9zEtCM-YQS8UhiAlPlqa6ANxgiBSEyMHH_xE8lo_-caYGeACqy640Jpl_JocFGo3xd1L8DCawjlaj6eu7T7T_tpAV2qq13b5710eNRbCAfFe8yALiGQemx0IYhlZXNbIGWLBNhBhvVjJh7UvOqpADk4xtl8o5j0xgMIRg6WJGK6c6ffSIg4eP1XmovNYZ9LLEJG68tF0Q_yIN43B4dt1oq4jzSdCbG4F1EiykT2TmwPVYDi8tml6DfOCDGnit8svnMEmBv_fcPd31GSbXjF8M-KGGQ",
|
||||
"e": "AQAB"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
19
testdata/spiffe/spiffebundle_wrong_multi_certs.json
vendored
Normal file
19
testdata/spiffe/spiffebundle_wrong_multi_certs.json
vendored
Normal file
@@ -0,0 +1,19 @@
|
||||
{
|
||||
"trust_domains": {
|
||||
"google.com": {
|
||||
"spiffe_sequence": 123,
|
||||
"keys": [
|
||||
{
|
||||
"kty": "RSA",
|
||||
"use": "x509-svid",
|
||||
"x5c": [
|
||||
"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"
|
||||
],
|
||||
"n": "yeAKqRnrclUqhlLgSS1RZWvu2xH3Gu1GM31UkmS2f1_iQ5liFTfFCD7hYm-Y4TBHN12lJxV1JjO8xLc_2RuYWqcC8Dm9gt2cTj-j0I2AicW5C4nvm-N1EKxbtccXd7zIVSYHI_wCMRKZrM7qjmupFK5GIn4yQA0PuuJGYJeum7E3VzAs6cchZfcVH33-fS_Dl_h1HwHKGc93po4N2ST2FEUBJo3WUzmrtRIxYpcB4HffPSbezSoMd9DV6B5sO57rFQSGPeHy9lSjd39V1ZtHR7uTSNu_UOs69GQVO5OU9yHh587FHrEEuDRpZJQ1qFUypO91L_T52vMkLElu-ezxGxzhqfSp7uG56BjzpbBvNciD4qTuoU4BhStuKRfezPZKRm1qmF-Ptry5awgH3JrB6mlD5kJWHkVU0-r8O3LWKNpMlGBrZzg15O-i6nsEQVb5M8e-UFIX4wMm--NGHA5iHp3Oek6uoHmyR44RJlUnoUesSKVz-0lXrq08oT7BEJ6SR7YLOHXMFjmaewbzzcx15ian6-77LIYnt70uZENLtXtcqgKl4Mg46ilzpMfnaYFE3oUiR4TzR703OS10bL71ymM-ha8Efw2fLewTRLz3i4xYMaR-0FSRSwrwm17OSusmG7Jy38RSAT0Z62yZCLCvrEMJ0XZ7IlHT7E5BuQdpUH0",
|
||||
"e": "AQAB"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
31
testdata/spiffe/spiffebundle_wrong_root.json
vendored
Normal file
31
testdata/spiffe/spiffebundle_wrong_root.json
vendored
Normal file
@@ -0,0 +1,31 @@
|
||||
{
|
||||
"trustDomains": {
|
||||
"example.com": {
|
||||
"spiffe_sequence": 12035488,
|
||||
"keys": [
|
||||
{
|
||||
"kty": "RSA",
|
||||
"use": "x509-svid",
|
||||
"x5c": [
|
||||
"MIIFsjCCA5qgAwIBAgIURygVMMzdr+Q7rsUaz189JozyHMwwDQYJKoZIhvcNAQELBQAwTjELMAkGA1UEBhMCVVMxCzAJBgNVBAgMAkNBMQwwCgYDVQQHDANTVkwxDTALBgNVBAoMBGdSUEMxFTATBgNVBAMMDHRlc3QtY2xpZW50MTAeFw0yMTEyMjMxODQyNTJaFw0zMTEyMjExODQyNTJaME4xCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJDQTEMMAoGA1UEBwwDU1ZMMQ0wCwYDVQQKDARnUlBDMRUwEwYDVQQDDAx0ZXN0LWNsaWVudDEwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDJ4AqpGetyVSqGUuBJLVFla+7bEfca7UYzfVSSZLZ/X+JDmWIVN8UIPuFib5jhMEc3XaUnFXUmM7zEtz/ZG5hapwLwOb2C3ZxOP6PQjYCJxbkLie+b43UQrFu1xxd3vMhVJgcj/AIxEpmszuqOa6kUrkYifjJADQ+64kZgl66bsTdXMCzpxyFl9xUfff59L8OX+HUfAcoZz3emjg3ZJPYURQEmjdZTOau1EjFilwHgd989Jt7NKgx30NXoHmw7nusVBIY94fL2VKN3f1XVm0dHu5NI279Q6zr0ZBU7k5T3IeHnzsUesQS4NGlklDWoVTKk73Uv9Pna8yQsSW757PEbHOGp9Knu4bnoGPOlsG81yIPipO6hTgGFK24pF97M9kpGbWqYX4+2vLlrCAfcmsHqaUPmQlYeRVTT6vw7ctYo2kyUYGtnODXk76LqewRBVvkzx75QUhfjAyb740YcDmIenc56Tq6gebJHjhEmVSehR6xIpXP7SVeurTyhPsEQnpJHtgs4dcwWOZp7BvPNzHXmJqfr7vsshie3vS5kQ0u1e1yqAqXgyDjqKXOkx+dpgUTehSJHhPNHvTc5LXRsvvXKYz6FrwR/DZ8t7BNEvPeLjFgxpH7QVJFLCvCbXs5K6yYbsnLfxFIBPRnrbJkIsK+sQwnRdnsiUdPsTkG5B2lQfQIDAQABo4GHMIGEMB0GA1UdDgQWBBQ2lBp0PiRHHvQ5IRURm8aHsj4RETAfBgNVHSMEGDAWgBQ2lBp0PiRHHvQ5IRURm8aHsj4RETAPBgNVHRMBAf8EBTADAQH/MDEGA1UdEQQqMCiGJnNwaWZmZTovL2Zvby5iYXIuY29tL2NsaWVudC93b3JrbG9hZC8xMA0GCSqGSIb3DQEBCwUAA4ICAQA1mSkgRclAl+E/aS9zJ7t8+Y4n3T24nOKKveSIjxXm/zjhWqVsLYBI6kglWtih2+PELvU8JdPqNZK34Kl0Q6FWpVSGDdWN1i6NyORt2ocggL3ke3iXxRk3UpUKJmqwz81VhA2KUHnMlyE0IufFfZNwNWWHBv13uJfRbjeQpKPhU+yf4DeXrsWcvrZlGvAET+mcplafUzCp7Iv+PcISJtUerbxbVtuHVeZCLlgDXWkLAWJN8rf0dIG4x060LJ+j6j9uRVhb9sZn1HJV+j4XdIYm1VKilluhOtNwP2d3Ox/JuTBxf7hFHXZPfMagQE5k5PzmxRaCAEMJ1l2DvUbZw+shJfSNoWcBo2qadnUaWT3BmmJRBDh7ZReib/RQ1Rd4ygOyzP3E0vkV4/gqyjLdApXh5PZP8KLQZ+1JN/sdWt7VfIt9wYOpkIqujdll51ESHzwQeAK9WVCB4UvVz6zdhItB9CRbXPreWC+wCB1xDovIzFKOVsLs5+Gqs1m7VinG2LxbDqaKyo/FB0Hxx0acBNzezLWoDwXYQrN0T0S4pnqhKD1CYPpdArBkNezUYAjS725FkApuK+mnBX3U0msBffEaUEOkcyar1EW2m/33vpetD/k3eQQkmvQf4Hbiu9AF+9cNDm/hMuXEw5EXGA91fn0891b5eEW8BJHXX0jri0aN8g=="
|
||||
],
|
||||
"n": "yeAKqRnrclUqhlLgSS1RZWvu2xH3Gu1GM31UkmS2f1_iQ5liFTfFCD7hYm-Y4TBHN12lJxV1JjO8xLc_2RuYWqcC8Dm9gt2cTj-j0I2AicW5C4nvm-N1EKxbtccXd7zIVSYHI_wCMRKZrM7qjmupFK5GIn4yQA0PuuJGYJeum7E3VzAs6cchZfcVH33-fS_Dl_h1HwHKGc93po4N2ST2FEUBJo3WUzmrtRIxYpcB4HffPSbezSoMd9DV6B5sO57rFQSGPeHy9lSjd39V1ZtHR7uTSNu_UOs69GQVO5OU9yHh587FHrEEuDRpZJQ1qFUypO91L_T52vMkLElu-ezxGxzhqfSp7uG56BjzpbBvNciD4qTuoU4BhStuKRfezPZKRm1qmF-Ptry5awgH3JrB6mlD5kJWHkVU0-r8O3LWKNpMlGBrZzg15O-i6nsEQVb5M8e-UFIX4wMm--NGHA5iHp3Oek6uoHmyR44RJlUnoUesSKVz-0lXrq08oT7BEJ6SR7YLOHXMFjmaewbzzcx15ian6-77LIYnt70uZENLtXtcqgKl4Mg46ilzpMfnaYFE3oUiR4TzR703OS10bL71ymM-ha8Efw2fLewTRLz3i4xYMaR-0FSRSwrwm17OSusmG7Jy38RSAT0Z62yZCLCvrEMJ0XZ7IlHT7E5BuQdpUH0",
|
||||
"e": "AQAB"
|
||||
}
|
||||
]
|
||||
},
|
||||
"test.example.com": {
|
||||
"keys": [
|
||||
{
|
||||
"kty": "RSA",
|
||||
"use": "x509-svid",
|
||||
"x5c": [
|
||||
"MIIEZDCCA0ygAwIBAgIUVXGlXjNENtOZbI12epjgIhMaShMwDQYJKoZIhvcNAQELBQAwVjELMAkGA1UEBhMCQVUxEzARBgNVBAgMClNvbWUtU3RhdGUxITAfBgNVBAoMGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZDEPMA0GA1UEAwwGdGVzdGNhMB4XDTI0MTAyMTAyMTQxNVoXDTM0MTAxOTAyMTQxNVowZTELMAkGA1UEBhMCVVMxETAPBgNVBAgMCElsbGlub2lzMRAwDgYDVQQHDAdDaGljYWdvMRUwEwYDVQQKDAxFeGFtcGxlLCBDby4xGjAYBgNVBAMMESoudGVzdC5nb29nbGUuY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5xOONxJJ8b8Qauvob5/7dPYZfIcd+uhAWL2ZlTPzQvu4oF0QI4iYgP5iGgry9zEtCM+YQS8UhiAlPlqa6ANxgiBSEyMHH/xE8lo/+caYGeACqy640Jpl/JocFGo3xd1L8DCawjlaj6eu7T7T/tpAV2qq13b5710eNRbCAfFe8yALiGQemx0IYhlZXNbIGWLBNhBhvVjJh7UvOqpADk4xtl8o5j0xgMIRg6WJGK6c6ffSIg4eP1XmovNYZ9LLEJG68tF0Q/yIN43B4dt1oq4jzSdCbG4F1EiykT2TmwPVYDi8tml6DfOCDGnit8svnMEmBv/fcPd31GSbXjF8M+KGGQIDAQABo4IBGTCCARUwdwYDVR0RBHAwboIQKi50ZXN0Lmdvb2dsZS5mcoIYd2F0ZXJ6b29pLnRlc3QuZ29vZ2xlLmJlghIqLnRlc3QueW91dHViZS5jb22HBMCoAQOGJnNwaWZmZTovL2V4YW1wbGUuY29tL3dvcmtsb2FkLzllZWJjY2QyMB0GA1UdDgQWBBRvRpAYHQYP6dFPf5V7/MyCftnNjTB7BgNVHSMEdDByoVqkWDBWMQswCQYDVQQGEwJBVTETMBEGA1UECAwKU29tZS1TdGF0ZTEhMB8GA1UECgwYSW50ZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMQ8wDQYDVQQDDAZ0ZXN0Y2GCFFqz9Fbx3Mviz+lLmDbYi/YAYQ+aMA0GCSqGSIb3DQEBCwUAA4IBAQBJ1bnbBHa1n15vvhpGIzokuiJ+9q/zim63UuVDnkhrQM2N+RQbStGTTis2tNse1bh460dJFm6ArgHWogzx6fQZzgaDeCOAXvrAe4jM9IHr9K7lkq/33CZSBDV+jCmm2sRsqSMkKUcX6JhyqWGFHuTDAKJzsEV2MlcswleKlGHDkeelAaxlLzpzRHOSQd0N9xAs18lzx95SQEx90PtrBOmvIDDiI5o5z9Oz12Iy1toiksFl4jmknkDD5VF3AyCRgN8NPW0uNC8D2vo4L+tgj9U6NPlmMOrjRsEH257LJ1wopAGr+yezkIIdQQodGSVm5cOuw/K7Ma4nBDjVJkjcdY3t"
|
||||
],
|
||||
"n": "5xOONxJJ8b8Qauvob5_7dPYZfIcd-uhAWL2ZlTPzQvu4oF0QI4iYgP5iGgry9zEtCM-YQS8UhiAlPlqa6ANxgiBSEyMHH_xE8lo_-caYGeACqy640Jpl_JocFGo3xd1L8DCawjlaj6eu7T7T_tpAV2qq13b5710eNRbCAfFe8yALiGQemx0IYhlZXNbIGWLBNhBhvVjJh7UvOqpADk4xtl8o5j0xgMIRg6WJGK6c6ffSIg4eP1XmovNYZ9LLEJG68tF0Q_yIN43B4dt1oq4jzSdCbG4F1EiykT2TmwPVYDi8tml6DfOCDGnit8svnMEmBv_fcPd31GSbXjF8M-KGGQ",
|
||||
"e": "AQAB"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
31
testdata/spiffe/spiffebundle_wrong_seq_type.json
vendored
Normal file
31
testdata/spiffe/spiffebundle_wrong_seq_type.json
vendored
Normal file
@@ -0,0 +1,31 @@
|
||||
{
|
||||
"trust_domains": {
|
||||
"example.com": {
|
||||
"spiffe_sequence": 12035488.5,
|
||||
"keys": [
|
||||
{
|
||||
"kty": "RSA",
|
||||
"use": "x509-svid",
|
||||
"x5c": [
|
||||
"MIIFsjCCA5qgAwIBAgIURygVMMzdr+Q7rsUaz189JozyHMwwDQYJKoZIhvcNAQELBQAwTjELMAkGA1UEBhMCVVMxCzAJBgNVBAgMAkNBMQwwCgYDVQQHDANTVkwxDTALBgNVBAoMBGdSUEMxFTATBgNVBAMMDHRlc3QtY2xpZW50MTAeFw0yMTEyMjMxODQyNTJaFw0zMTEyMjExODQyNTJaME4xCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJDQTEMMAoGA1UEBwwDU1ZMMQ0wCwYDVQQKDARnUlBDMRUwEwYDVQQDDAx0ZXN0LWNsaWVudDEwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDJ4AqpGetyVSqGUuBJLVFla+7bEfca7UYzfVSSZLZ/X+JDmWIVN8UIPuFib5jhMEc3XaUnFXUmM7zEtz/ZG5hapwLwOb2C3ZxOP6PQjYCJxbkLie+b43UQrFu1xxd3vMhVJgcj/AIxEpmszuqOa6kUrkYifjJADQ+64kZgl66bsTdXMCzpxyFl9xUfff59L8OX+HUfAcoZz3emjg3ZJPYURQEmjdZTOau1EjFilwHgd989Jt7NKgx30NXoHmw7nusVBIY94fL2VKN3f1XVm0dHu5NI279Q6zr0ZBU7k5T3IeHnzsUesQS4NGlklDWoVTKk73Uv9Pna8yQsSW757PEbHOGp9Knu4bnoGPOlsG81yIPipO6hTgGFK24pF97M9kpGbWqYX4+2vLlrCAfcmsHqaUPmQlYeRVTT6vw7ctYo2kyUYGtnODXk76LqewRBVvkzx75QUhfjAyb740YcDmIenc56Tq6gebJHjhEmVSehR6xIpXP7SVeurTyhPsEQnpJHtgs4dcwWOZp7BvPNzHXmJqfr7vsshie3vS5kQ0u1e1yqAqXgyDjqKXOkx+dpgUTehSJHhPNHvTc5LXRsvvXKYz6FrwR/DZ8t7BNEvPeLjFgxpH7QVJFLCvCbXs5K6yYbsnLfxFIBPRnrbJkIsK+sQwnRdnsiUdPsTkG5B2lQfQIDAQABo4GHMIGEMB0GA1UdDgQWBBQ2lBp0PiRHHvQ5IRURm8aHsj4RETAfBgNVHSMEGDAWgBQ2lBp0PiRHHvQ5IRURm8aHsj4RETAPBgNVHRMBAf8EBTADAQH/MDEGA1UdEQQqMCiGJnNwaWZmZTovL2Zvby5iYXIuY29tL2NsaWVudC93b3JrbG9hZC8xMA0GCSqGSIb3DQEBCwUAA4ICAQA1mSkgRclAl+E/aS9zJ7t8+Y4n3T24nOKKveSIjxXm/zjhWqVsLYBI6kglWtih2+PELvU8JdPqNZK34Kl0Q6FWpVSGDdWN1i6NyORt2ocggL3ke3iXxRk3UpUKJmqwz81VhA2KUHnMlyE0IufFfZNwNWWHBv13uJfRbjeQpKPhU+yf4DeXrsWcvrZlGvAET+mcplafUzCp7Iv+PcISJtUerbxbVtuHVeZCLlgDXWkLAWJN8rf0dIG4x060LJ+j6j9uRVhb9sZn1HJV+j4XdIYm1VKilluhOtNwP2d3Ox/JuTBxf7hFHXZPfMagQE5k5PzmxRaCAEMJ1l2DvUbZw+shJfSNoWcBo2qadnUaWT3BmmJRBDh7ZReib/RQ1Rd4ygOyzP3E0vkV4/gqyjLdApXh5PZP8KLQZ+1JN/sdWt7VfIt9wYOpkIqujdll51ESHzwQeAK9WVCB4UvVz6zdhItB9CRbXPreWC+wCB1xDovIzFKOVsLs5+Gqs1m7VinG2LxbDqaKyo/FB0Hxx0acBNzezLWoDwXYQrN0T0S4pnqhKD1CYPpdArBkNezUYAjS725FkApuK+mnBX3U0msBffEaUEOkcyar1EW2m/33vpetD/k3eQQkmvQf4Hbiu9AF+9cNDm/hMuXEw5EXGA91fn0891b5eEW8BJHXX0jri0aN8g=="
|
||||
],
|
||||
"n": "yeAKqRnrclUqhlLgSS1RZWvu2xH3Gu1GM31UkmS2f1_iQ5liFTfFCD7hYm-Y4TBHN12lJxV1JjO8xLc_2RuYWqcC8Dm9gt2cTj-j0I2AicW5C4nvm-N1EKxbtccXd7zIVSYHI_wCMRKZrM7qjmupFK5GIn4yQA0PuuJGYJeum7E3VzAs6cchZfcVH33-fS_Dl_h1HwHKGc93po4N2ST2FEUBJo3WUzmrtRIxYpcB4HffPSbezSoMd9DV6B5sO57rFQSGPeHy9lSjd39V1ZtHR7uTSNu_UOs69GQVO5OU9yHh587FHrEEuDRpZJQ1qFUypO91L_T52vMkLElu-ezxGxzhqfSp7uG56BjzpbBvNciD4qTuoU4BhStuKRfezPZKRm1qmF-Ptry5awgH3JrB6mlD5kJWHkVU0-r8O3LWKNpMlGBrZzg15O-i6nsEQVb5M8e-UFIX4wMm--NGHA5iHp3Oek6uoHmyR44RJlUnoUesSKVz-0lXrq08oT7BEJ6SR7YLOHXMFjmaewbzzcx15ian6-77LIYnt70uZENLtXtcqgKl4Mg46ilzpMfnaYFE3oUiR4TzR703OS10bL71ymM-ha8Efw2fLewTRLz3i4xYMaR-0FSRSwrwm17OSusmG7Jy38RSAT0Z62yZCLCvrEMJ0XZ7IlHT7E5BuQdpUH0",
|
||||
"e": "AQAB"
|
||||
}
|
||||
]
|
||||
},
|
||||
"test.example.com": {
|
||||
"keys": [
|
||||
{
|
||||
"kty": "RSA",
|
||||
"use": "x509-svid",
|
||||
"x5c": [
|
||||
"MIIEZDCCA0ygAwIBAgIUVXGlXjNENtOZbI12epjgIhMaShMwDQYJKoZIhvcNAQELBQAwVjELMAkGA1UEBhMCQVUxEzARBgNVBAgMClNvbWUtU3RhdGUxITAfBgNVBAoMGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZDEPMA0GA1UEAwwGdGVzdGNhMB4XDTI0MTAyMTAyMTQxNVoXDTM0MTAxOTAyMTQxNVowZTELMAkGA1UEBhMCVVMxETAPBgNVBAgMCElsbGlub2lzMRAwDgYDVQQHDAdDaGljYWdvMRUwEwYDVQQKDAxFeGFtcGxlLCBDby4xGjAYBgNVBAMMESoudGVzdC5nb29nbGUuY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5xOONxJJ8b8Qauvob5/7dPYZfIcd+uhAWL2ZlTPzQvu4oF0QI4iYgP5iGgry9zEtCM+YQS8UhiAlPlqa6ANxgiBSEyMHH/xE8lo/+caYGeACqy640Jpl/JocFGo3xd1L8DCawjlaj6eu7T7T/tpAV2qq13b5710eNRbCAfFe8yALiGQemx0IYhlZXNbIGWLBNhBhvVjJh7UvOqpADk4xtl8o5j0xgMIRg6WJGK6c6ffSIg4eP1XmovNYZ9LLEJG68tF0Q/yIN43B4dt1oq4jzSdCbG4F1EiykT2TmwPVYDi8tml6DfOCDGnit8svnMEmBv/fcPd31GSbXjF8M+KGGQIDAQABo4IBGTCCARUwdwYDVR0RBHAwboIQKi50ZXN0Lmdvb2dsZS5mcoIYd2F0ZXJ6b29pLnRlc3QuZ29vZ2xlLmJlghIqLnRlc3QueW91dHViZS5jb22HBMCoAQOGJnNwaWZmZTovL2V4YW1wbGUuY29tL3dvcmtsb2FkLzllZWJjY2QyMB0GA1UdDgQWBBRvRpAYHQYP6dFPf5V7/MyCftnNjTB7BgNVHSMEdDByoVqkWDBWMQswCQYDVQQGEwJBVTETMBEGA1UECAwKU29tZS1TdGF0ZTEhMB8GA1UECgwYSW50ZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMQ8wDQYDVQQDDAZ0ZXN0Y2GCFFqz9Fbx3Mviz+lLmDbYi/YAYQ+aMA0GCSqGSIb3DQEBCwUAA4IBAQBJ1bnbBHa1n15vvhpGIzokuiJ+9q/zim63UuVDnkhrQM2N+RQbStGTTis2tNse1bh460dJFm6ArgHWogzx6fQZzgaDeCOAXvrAe4jM9IHr9K7lkq/33CZSBDV+jCmm2sRsqSMkKUcX6JhyqWGFHuTDAKJzsEV2MlcswleKlGHDkeelAaxlLzpzRHOSQd0N9xAs18lzx95SQEx90PtrBOmvIDDiI5o5z9Oz12Iy1toiksFl4jmknkDD5VF3AyCRgN8NPW0uNC8D2vo4L+tgj9U6NPlmMOrjRsEH257LJ1wopAGr+yezkIIdQQodGSVm5cOuw/K7Ma4nBDjVJkjcdY3t"
|
||||
],
|
||||
"n": "5xOONxJJ8b8Qauvob5_7dPYZfIcd-uhAWL2ZlTPzQvu4oF0QI4iYgP5iGgry9zEtCM-YQS8UhiAlPlqa6ANxgiBSEyMHH_xE8lo_-caYGeACqy640Jpl_JocFGo3xd1L8DCawjlaj6eu7T7T_tpAV2qq13b5710eNRbCAfFe8yALiGQemx0IYhlZXNbIGWLBNhBhvVjJh7UvOqpADk4xtl8o5j0xgMIRg6WJGK6c6ffSIg4eP1XmovNYZ9LLEJG68tF0Q_yIN43B4dt1oq4jzSdCbG4F1EiykT2TmwPVYDi8tml6DfOCDGnit8svnMEmBv_fcPd31GSbXjF8M-KGGQ",
|
||||
"e": "AQAB"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
18
testdata/spiffe/spiffebundle_wrong_use.json
vendored
Normal file
18
testdata/spiffe/spiffebundle_wrong_use.json
vendored
Normal file
@@ -0,0 +1,18 @@
|
||||
{
|
||||
"trust_domains": {
|
||||
"example.com": {
|
||||
"spiffe_sequence": 12035488,
|
||||
"keys": [
|
||||
{
|
||||
"kty": "RSA",
|
||||
"use": "NOT-x509-svid",
|
||||
"x5c": [
|
||||
"MIIFsjCCA5qgAwIBAgIURygVMMzdr+Q7rsUaz189JozyHMwwDQYJKoZIhvcNAQELBQAwTjELMAkGA1UEBhMCVVMxCzAJBgNVBAgMAkNBMQwwCgYDVQQHDANTVkwxDTALBgNVBAoMBGdSUEMxFTATBgNVBAMMDHRlc3QtY2xpZW50MTAeFw0yMTEyMjMxODQyNTJaFw0zMTEyMjExODQyNTJaME4xCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJDQTEMMAoGA1UEBwwDU1ZMMQ0wCwYDVQQKDARnUlBDMRUwEwYDVQQDDAx0ZXN0LWNsaWVudDEwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDJ4AqpGetyVSqGUuBJLVFla+7bEfca7UYzfVSSZLZ/X+JDmWIVN8UIPuFib5jhMEc3XaUnFXUmM7zEtz/ZG5hapwLwOb2C3ZxOP6PQjYCJxbkLie+b43UQrFu1xxd3vMhVJgcj/AIxEpmszuqOa6kUrkYifjJADQ+64kZgl66bsTdXMCzpxyFl9xUfff59L8OX+HUfAcoZz3emjg3ZJPYURQEmjdZTOau1EjFilwHgd989Jt7NKgx30NXoHmw7nusVBIY94fL2VKN3f1XVm0dHu5NI279Q6zr0ZBU7k5T3IeHnzsUesQS4NGlklDWoVTKk73Uv9Pna8yQsSW757PEbHOGp9Knu4bnoGPOlsG81yIPipO6hTgGFK24pF97M9kpGbWqYX4+2vLlrCAfcmsHqaUPmQlYeRVTT6vw7ctYo2kyUYGtnODXk76LqewRBVvkzx75QUhfjAyb740YcDmIenc56Tq6gebJHjhEmVSehR6xIpXP7SVeurTyhPsEQnpJHtgs4dcwWOZp7BvPNzHXmJqfr7vsshie3vS5kQ0u1e1yqAqXgyDjqKXOkx+dpgUTehSJHhPNHvTc5LXRsvvXKYz6FrwR/DZ8t7BNEvPeLjFgxpH7QVJFLCvCbXs5K6yYbsnLfxFIBPRnrbJkIsK+sQwnRdnsiUdPsTkG5B2lQfQIDAQABo4GHMIGEMB0GA1UdDgQWBBQ2lBp0PiRHHvQ5IRURm8aHsj4RETAfBgNVHSMEGDAWgBQ2lBp0PiRHHvQ5IRURm8aHsj4RETAPBgNVHRMBAf8EBTADAQH/MDEGA1UdEQQqMCiGJnNwaWZmZTovL2Zvby5iYXIuY29tL2NsaWVudC93b3JrbG9hZC8xMA0GCSqGSIb3DQEBCwUAA4ICAQA1mSkgRclAl+E/aS9zJ7t8+Y4n3T24nOKKveSIjxXm/zjhWqVsLYBI6kglWtih2+PELvU8JdPqNZK34Kl0Q6FWpVSGDdWN1i6NyORt2ocggL3ke3iXxRk3UpUKJmqwz81VhA2KUHnMlyE0IufFfZNwNWWHBv13uJfRbjeQpKPhU+yf4DeXrsWcvrZlGvAET+mcplafUzCp7Iv+PcISJtUerbxbVtuHVeZCLlgDXWkLAWJN8rf0dIG4x060LJ+j6j9uRVhb9sZn1HJV+j4XdIYm1VKilluhOtNwP2d3Ox/JuTBxf7hFHXZPfMagQE5k5PzmxRaCAEMJ1l2DvUbZw+shJfSNoWcBo2qadnUaWT3BmmJRBDh7ZReib/RQ1Rd4ygOyzP3E0vkV4/gqyjLdApXh5PZP8KLQZ+1JN/sdWt7VfIt9wYOpkIqujdll51ESHzwQeAK9WVCB4UvVz6zdhItB9CRbXPreWC+wCB1xDovIzFKOVsLs5+Gqs1m7VinG2LxbDqaKyo/FB0Hxx0acBNzezLWoDwXYQrN0T0S4pnqhKD1CYPpdArBkNezUYAjS725FkApuK+mnBX3U0msBffEaUEOkcyar1EW2m/33vpetD/k3eQQkmvQf4Hbiu9AF+9cNDm/hMuXEw5EXGA91fn0891b5eEW8BJHXX0jri0aN8g=="
|
||||
],
|
||||
"n": "yeAKqRnrclUqhlLgSS1RZWvu2xH3Gu1GM31UkmS2f1_iQ5liFTfFCD7hYm-Y4TBHN12lJxV1JjO8xLc_2RuYWqcC8Dm9gt2cTj-j0I2AicW5C4nvm-N1EKxbtccXd7zIVSYHI_wCMRKZrM7qjmupFK5GIn4yQA0PuuJGYJeum7E3VzAs6cchZfcVH33-fS_Dl_h1HwHKGc93po4N2ST2FEUBJo3WUzmrtRIxYpcB4HffPSbezSoMd9DV6B5sO57rFQSGPeHy9lSjd39V1ZtHR7uTSNu_UOs69GQVO5OU9yHh587FHrEEuDRpZJQ1qFUypO91L_T52vMkLElu-ezxGxzhqfSp7uG56BjzpbBvNciD4qTuoU4BhStuKRfezPZKRm1qmF-Ptry5awgH3JrB6mlD5kJWHkVU0-r8O3LWKNpMlGBrZzg15O-i6nsEQVb5M8e-UFIX4wMm--NGHA5iHp3Oek6uoHmyR44RJlUnoUesSKVz-0lXrq08oT7BEJ6SR7YLOHXMFjmaewbzzcx15ian6-77LIYnt70uZENLtXtcqgKl4Mg46ilzpMfnaYFE3oUiR4TzR703OS10bL71ymM-ha8Efw2fLewTRLz3i4xYMaR-0FSRSwrwm17OSusmG7Jy38RSAT0Z62yZCLCvrEMJ0XZ7IlHT7E5BuQdpUH0",
|
||||
"e": "AQAB"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
38
testdata/spiffe_end2end/README.md
vendored
Normal file
38
testdata/spiffe_end2end/README.md
vendored
Normal file
@@ -0,0 +1,38 @@
|
||||
All of the following files in this directory except `server_spiffebundle.json`
|
||||
and `client_spiffebundle.json` are generated with the `generate.sh` and
|
||||
`intermediate_gen.sh` script in this directory.
|
||||
|
||||
These comprise a root trust certificate authority (CA) that signs two
|
||||
certificates - `client_spiffe.pem` and `server_spiffe.pem`. These are valid
|
||||
SPIFFE certificates (via the configuration in `spiffe-openssl.cnf`), and the
|
||||
`*_spiffebundle.json` files are SPIFFE Bundle Maps for the client and server
|
||||
respectively.
|
||||
|
||||
The SPIFFE trust bundle map files (`*_spiffebundle.json`) are manually created
|
||||
for end to end testing. The `server_spiffebundle.json` contains the
|
||||
`foo.bar.com` trust domain (only this entry is used in e2e tests) matching URI
|
||||
SAN of `client_spiffe.pem`, and the CA certificate is `ca.pem`. The client
|
||||
`spiffebundle.json` file contains `example.com` trust domain matching the URI
|
||||
SAN of `server_spiffe.pem`, and the CA certificate there is also `ca.pem`.
|
||||
|
||||
`leaf_and_intermediate_chain.pem` is a certificate chain whose leaf is a valid
|
||||
SPIFFE cert that is signed by an intermediate CA (`intermediate_ca.pem`). The
|
||||
intermediate CA is signed by the root CA (`ca.pem`). Thus, this setup yields a
|
||||
valid chain to the root of trust `ca.pem`.
|
||||
|
||||
If updating these files, the `x5c` field in the json is the raw PEM CA
|
||||
certificate and can be copy pasted from the certificate file `ca.pem`. `n` and
|
||||
`e` are values from the public key attached to this certificate. `e` should
|
||||
*probably* be `AQAB` as it is the exponent. `n` can be fetched from the
|
||||
certificate by getting the RSA key from the cert and extracting the value. This
|
||||
can be done in golang with the following codeblock:
|
||||
|
||||
```
|
||||
func GetBase64ModulusFromPublicKey(key *rsa.PublicKey) string {
|
||||
return base64.RawURLEncoding.EncodeToString(key.N.Bytes())
|
||||
}
|
||||
|
||||
block, _ := pem.Decode(rawPemCert) cert, _ := x509.ParseCertificate(block.Bytes)
|
||||
publicKey := cert.PublicKey.(*rsa.PublicKey)
|
||||
fmt.Println(GetBase64ModulusFromPublicKey(publicKey))
|
||||
```
|
||||
52
testdata/spiffe_end2end/ca.key
vendored
Normal file
52
testdata/spiffe_end2end/ca.key
vendored
Normal file
@@ -0,0 +1,52 @@
|
||||
-----BEGIN PRIVATE KEY-----
|
||||
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
|
||||
vmWw2Uw4DH8zFu1I9deCqW6ilOly7w==
|
||||
-----END PRIVATE KEY-----
|
||||
32
testdata/spiffe_end2end/ca.pem
vendored
Normal file
32
testdata/spiffe_end2end/ca.pem
vendored
Normal file
@@ -0,0 +1,32 @@
|
||||
-----BEGIN CERTIFICATE-----
|
||||
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
|
||||
-----END CERTIFICATE-----
|
||||
28
testdata/spiffe_end2end/client.key
vendored
Normal file
28
testdata/spiffe_end2end/client.key
vendored
Normal file
@@ -0,0 +1,28 @@
|
||||
-----BEGIN PRIVATE KEY-----
|
||||
MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCeb12R71ES72b6
|
||||
ag0gDK+8Hf6DPc2szn1Iwa6L7qoqBfFXxZImPhqVIuBTISxIlweib+lVOKtJDFym
|
||||
a/ILGiWwKy19H+9dwf/R5keufOjs+dkSt2kwNNAgednGiMiuBi6186QSCxhp1+lF
|
||||
q4UnBTZDsVjm232NPF3w7xUMLzB7XesY7A7cSLFBOdB/ObDB+UYMR6BpyN7C8gH3
|
||||
Y2t9wYHpw8NpMNsGshGSG5Ti8R48j7ZS4lZslW6qPzquYMrdNQx8XhsHOr3q9LDw
|
||||
SIfR7j4M0A5FRQQlWpslmAUlxDqmrXQ6FdAMSyU8Qa9VVHzO0PrrEXOFijQdguL0
|
||||
QT0WWd9JAgMBAAECggEANHlaGl2TEpxsFQBO/JB3G+0rQLiViGiToidT8lDH10dE
|
||||
mfd74mKrVz3H4oCYNCqhgrFiLLGqOXV4sj4KWpb8aI7EcC7Fjt4UJqcIksgYNXTC
|
||||
6qoIksjLLhZthI4FOW4exnC9pKQ8H8I9JrAaV8QoJt90PHHx8XdO/d+RrwlqG1GI
|
||||
a1iIPLEEx54hMkpUDojmzTSaWihZTeBnl55fy0bXcCK1WA6lp9UODhP1HXgf5HyT
|
||||
hopVGwIzP2xr4hTsKujwGp0rIF+42ty9llGKP8mZQ4kDaf2gHDflORjvXE0GS7Sd
|
||||
6dLv/uOBvRVqiG/FnUKCFsPQab1I8iIJSCUw9wxuKQKBgQDRipuRFCkPa/pBWa9j
|
||||
xLg1r7zbb2fLX4HMC5+DeQYnrURDDGUglAgUUcgLeALTKpDbZdpPoDm62nCWNPbM
|
||||
CMreMuz6yxPpV6Gc+8aIVg25ExxyuBBc8x8raVVRUaQQJblur6LnPHTP6fme5D9Q
|
||||
fCPQAmop/8RIozNuYNULvlt7wwKBgQDBkABkPsGR1TbGXG9b9RriAomYY0pFxQZs
|
||||
yUey+SqPrNJ3Y9lFbCU2yuG8BUaXKGYHWji9Zn10Jv393d2Y1mIUA+O+KWOmMdce
|
||||
NBBkSHsOJkeQSc16bZpcZ7gwSaLiJp/LJ8tFoerY72kpoqk14zLHBb0RjbnPpp7b
|
||||
+7kTjKAkAwKBgQCAYmZye2G0+zl3tNWLUUp0SlpyME3uA3Rpam2vhgVJZhW+5udH
|
||||
EKvqlzj0HfHNI/VhF4Ss6MS2QYRd49GarYBup9Ee0DJA89onbvPzMJZz4Mu7Vh9g
|
||||
c+2TEZSeoGDfK93zfVVYTGhdw0OYIMzSKV1f4zrcxMKkpqmqZVXjPhybNQKBgEdo
|
||||
ytww0tTsZiLUIzk3uc07xmtz5gjLYU1tDIiYp/0NczAcpCGafjgyrQjioWJOwyVf
|
||||
QaOOViYt5HJuEby7Cr/7l1+mgV7k8EnyR0HYA536vVgcAjRyjwocMbWO1Qq92SHn
|
||||
8nQkAjI6UP/NRMPep/MIyPHa6XwUKnNZ8LOno8TlAoGAYGlDV2mbgTLKbIyXfKhe
|
||||
EX+NP1OvhKrk+GJhkeTXwnu0Vz11KwLdRSSt2olLiMgl7phKinWlspWiNU0RGf3i
|
||||
BZkmGzRHiSn/ykKY792ujN7iodjjuR2644e1FdDGCOJVH9erh+H7lwI6v2om32Rf
|
||||
W4GdaqQ/t7TaabJqPPtLBFs=
|
||||
-----END PRIVATE KEY-----
|
||||
28
testdata/spiffe_end2end/client_spiffe.pem
vendored
Normal file
28
testdata/spiffe_end2end/client_spiffe.pem
vendored
Normal file
@@ -0,0 +1,28 @@
|
||||
-----BEGIN CERTIFICATE-----
|
||||
MIIEvjCCAqagAwIBAgIUCzY7jU+NrvxZf0WMdg/5AM5i8XUwDQYJKoZIhvcNAQEL
|
||||
BQAwWjELMAkGA1UEBhMCVVMxCzAJBgNVBAgMAlZBMSEwHwYDVQQKDBhJbnRlcm5l
|
||||
dCBXaWRnaXRzIFB0eSBMdGQxGzAZBgNVBAMMEmZvby5iYXIuaG9vLmNhLmNvbTAe
|
||||
Fw0yNjAzMDkwNTI4MjBaFw0zNjAzMDYwNTI4MjBaMEwxCzAJBgNVBAYTAlVTMQsw
|
||||
CQYDVQQIDAJDQTEMMAoGA1UEBwwDU1ZMMQ0wCwYDVQQKDARnUlBDMRMwEQYDVQQD
|
||||
DAp0ZXN0Y2xpZW50MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAnm9d
|
||||
ke9REu9m+moNIAyvvB3+gz3NrM59SMGui+6qKgXxV8WSJj4alSLgUyEsSJcHom/p
|
||||
VTirSQxcpmvyCxolsCstfR/vXcH/0eZHrnzo7PnZErdpMDTQIHnZxojIrgYutfOk
|
||||
EgsYadfpRauFJwU2Q7FY5tt9jTxd8O8VDC8we13rGOwO3EixQTnQfzmwwflGDEeg
|
||||
acjewvIB92NrfcGB6cPDaTDbBrIRkhuU4vEePI+2UuJWbJVuqj86rmDK3TUMfF4b
|
||||
Bzq96vSw8EiH0e4+DNAORUUEJVqbJZgFJcQ6pq10OhXQDEslPEGvVVR8ztD66xFz
|
||||
hYo0HYLi9EE9FlnfSQIDAQABo4GJMIGGMEQGA1UdEQQ9MDuGOXNwaWZmZTovL2Zv
|
||||
by5iYXIuY29tLzllZWJjY2QyLTEyYmYtNDBhNi1iMjYyLTY1ZmUwNDg3ZDQ1MzAd
|
||||
BgNVHQ4EFgQUWhXxI5pA878mNWlbVFscM7rPD30wHwYDVR0jBBgwFoAU/LjtA3oV
|
||||
WCTz3qfAQXuc/dC7b84wDQYJKoZIhvcNAQELBQADggIBAMqDRhSCS+cSozh7oeqQ
|
||||
RJehfP/3pX8grzezk/PmohG8NiPx0Zwy9Huqf9BV5VG1iRwF1DJmbj2VV59jTuLa
|
||||
B6LNWVDwmToI3nVCedM4pTLGEKIvtKEMZQserR/FrN9WEHG3nU2SnS1jqTRVu+lv
|
||||
69sOtkenXs51X6YzyRvY/MD+b78JuyuFu9/33Tzn+mJ82CBWuGspKveWanwKsYZp
|
||||
N5XXPNLF6YWO8MfcX9ephjQXguPxmavoWno/QDmPuZzAwX6T9MqvNKk6aK8hdQfU
|
||||
Gw5E9nQ+oyZyQXZw7FwsEsj+MOhPp3wR4Ubwth2PXfXWs6icvDr0Cq2O/x5eCQ9w
|
||||
F1fy8ORBFLSqwmqCuTjt0rF2dqMUDiV7EVRzg8ACWB4gCoSAZhT1/uIkO452Tasa
|
||||
zF5c29bWo1TCe8lJ2QkFBxZyVTPwJU1uIMhWUHrykqaO6oueZZFp+qLK9HevTqjd
|
||||
5Cp4OzdemWyhQhk8u30sNUM0u+Elk125BnGkuBr6DH3AbKP5JK1gtyWGt/6CfDR/
|
||||
iBG18B7aQEEb46vmLd4EsgLnwssOir1+t/IBFQ0cXsuqQekuez1GqA9+IQfcg028
|
||||
lrjLvMejJjfofvIUmQ5R5IgZX1xThb2kM05CifJANceu2sORxieefVC6izDc3gOB
|
||||
2cRdNb9kp9E89P7FnBkku+9Y
|
||||
-----END CERTIFICATE-----
|
||||
16
testdata/spiffe_end2end/client_spiffebundle.json
vendored
Normal file
16
testdata/spiffe_end2end/client_spiffebundle.json
vendored
Normal file
@@ -0,0 +1,16 @@
|
||||
{
|
||||
"trust_domains": {
|
||||
"example.com": {
|
||||
"spiffe_sequence": 12035488,
|
||||
"keys": [
|
||||
{
|
||||
"kty": "RSA",
|
||||
"use": "x509-svid",
|
||||
"x5c": ["MIIFlTCCA32gAwIBAgIUZ4e1KRtWw0c8V5NnA9VEoUMvzq4wDQYJKoZIhvcNAQELBQAwWjELMAkGA1UEBhMCVVMxCzAJBgNVBAgMAlZBMSEwHwYDVQQKDBhJbnRlcm5ldCBXaWRnaXRzIFB0eSBMdGQxGzAZBgNVBAMMEmZvby5iYXIuaG9vLmNhLmNvbTAeFw0yNjAzMDkwNTI4MjBaFw0zNjAzMDYwNTI4MjBaMFoxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJWQTEhMB8GA1UECgwYSW50ZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMRswGQYDVQQDDBJmb28uYmFyLmhvby5jYS5jb20wggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDZRezL1GWM/0umgcLNGI9fsp0sabLUN1rUTwXjCGHvGAt9cPY1xK6P6+/QXeBkYogmwC3Udhwl+8x3AOu2FKP9QeveW+hB4N3SCtY4D+nGxPWnL1Yjh0170tkVRPkh89wPX4XdtAcIgZjjNgPH9wR3eWH8E3cDRvxjosy4e9aw0/VTHb0lZ2Ko6mY8x2bJNFUExmuh157b//yHdcL8O1K1h13o6YSqSlnLmnaSHpHA5/21erSjszE3ZjiPZFR6cl/RDjpJRKrh/eQAAeg7XO00VokrvZnK07mZ2nNyp4z1yCV4fwWCdBMfFfUSm0EgN8D65JxGj1He5bm4LVv6WuWj+cqgAzRhHjp8iZsmLFKvAoXSg1eJ+mG8vw5P9ZVd38M8N2DtifvmCkE1fln84oQj42wDgNQuwSafbGQIhNYrnsgbf+2lNj5IIYm/ScUcexbmCmKyOZfNcVQNAF26vQOvibBDOFyDW2qdi2tIGJgTPhkJPbDqKJx4UqNxIuoam28PifmK51Cn4i9rWOpQ2nM7JGX1Q3IE6S5iaVnogp2+SSh3PhktxQOK9IUX7ysX9eVQAdN8lnKgaIZuyYOx9H9jWValZ/dCLa2Y/BuFslx4NRVLtoJkUIakdTepo83ZrrSs3c4DSEIJJkgVPBmBkua3RdYB1Cw+A8T0C8nvExyJbwIDAQABo1MwUTAdBgNVHQ4EFgQU/LjtA3oVWCTz3qfAQXuc/dC7b84wHwYDVR0jBBgwFoAU/LjtA3oVWCTz3qfAQXuc/dC7b84wDwYDVR0TAQH/BAUwAwEB/zANBgkqhkiG9w0BAQsFAAOCAgEAZFJDbhKL1M16Ya7eAvrgUWI9vbC4xm/68HzIGuQLeP9yr7QMfk5wzh9umYcGWs/hkz2jg/88PbPUEP35psTw+dZGtnQwi/0icM9w7m0HZrDx8vMYvX5AoEaPb5PqbjwhBxzd2Hpv/Y+PLLRO9uh1Xeh95J4yp5t/xOPyimljKLTam+rpj7BevYftlSXuIWrR6sldIt9I1zT5CfcBSefmSVo2WtgLdqfOBIAD73OMbcxEPDiTF4/q8S1qHeA8eNUXc5IrWEI2NirhpvR0ZXMyjY1gJoZ4XqPFSXg+1oi9qpbjMhKU5J+Rm8brv/HmACaP90hSPXjuRl2Tp/NJ6idV1heNd4MdTeAlH+deQ+UQ/rFo6HY95S3ltdcaDX8V7WdpRUQddv2DS5VPPi60LJuOdxKB+XFtjdLUtxwOw3Hoj91YWZLuMu2xzVeASeA6FsB0vZwQdqn8FX1BQNSIEHGs7tieV7N0AlLavQBpyRYfhgKOL9Utbl4Cp6C6k42uFo/tFREUdzgtt0JqT+/NMJRA6rOJYHVUWNeG2ggGpuCtHXkwktC4JBnUwnvdVZX3sXPslmiFzMO6S/+PesHA0TclifTZNOETHphF8efGsRFL/lkhcBRkZKBVOkWKdKMUnXPgDKLyu/e1WQXCXmyTjv8FEiG2Ni8U4P0c2PldooYVjw4="],
|
||||
"n": "2UXsy9RljP9LpoHCzRiPX7KdLGmy1Dda1E8F4whh7xgLfXD2NcSuj-vv0F3gZGKIJsAt1HYcJfvMdwDrthSj_UHr3lvoQeDd0grWOA_pxsT1py9WI4dNe9LZFUT5IfPcD1-F3bQHCIGY4zYDx_cEd3lh_BN3A0b8Y6LMuHvWsNP1Ux29JWdiqOpmPMdmyTRVBMZrodee2__8h3XC_DtStYdd6OmEqkpZy5p2kh6RwOf9tXq0o7MxN2Y4j2RUenJf0Q46SUSq4f3kAAHoO1ztNFaJK72ZytO5mdpzcqeM9cgleH8FgnQTHxX1EptBIDfA-uScRo9R3uW5uC1b-lrlo_nKoAM0YR46fImbJixSrwKF0oNXifphvL8OT_WVXd_DPDdg7Yn75gpBNX5Z_OKEI-NsA4DULsEmn2xkCITWK57IG3_tpTY-SCGJv0nFHHsW5gpisjmXzXFUDQBdur0Dr4mwQzhcg1tqnYtrSBiYEz4ZCT2w6iiceFKjcSLqGptvD4n5iudQp-Iva1jqUNpzOyRl9UNyBOkuYmlZ6IKdvkkodz4ZLcUDivSFF-8rF_XlUAHTfJZyoGiGbsmDsfR_Y1lWpWf3Qi2tmPwbhbJceDUVS7aCZFCGpHU3qaPN2a60rN3OA0hCCSZIFTwZgZLmt0XWAdQsPgPE9AvJ7xMciW8",
|
||||
"e": "AQAB"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
30
testdata/spiffe_end2end/generate.sh
vendored
Executable file
30
testdata/spiffe_end2end/generate.sh
vendored
Executable file
@@ -0,0 +1,30 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Generate client/server self signed CAs and certs.
|
||||
openssl req -x509 -newkey rsa:4096 -keyout ca.key -out ca.pem -days 3650 -nodes -subj "/C=US/ST=VA/O=Internet Widgits Pty Ltd/CN=foo.bar.hoo.ca.com"
|
||||
|
||||
# The SPIFFE related extensions are listed in spiffe-openssl.cnf config. Both
|
||||
# client_spiffe.pem and server_spiffe.pem are generated in the same way with
|
||||
# original client.pem and server.pem but with using that config. Here are the
|
||||
# exact commands (we pass "-subj" as argument in this case):
|
||||
openssl genrsa -out client.key.rsa 2048
|
||||
openssl pkcs8 -topk8 -in client.key.rsa -out client.key -nocrypt
|
||||
openssl req -new -key client.key -out spiffe-cert.csr \
|
||||
-subj /C=US/ST=CA/L=SVL/O=gRPC/CN=testclient/ \
|
||||
-config spiffe-openssl.cnf -reqexts spiffe_client_e2e
|
||||
openssl x509 -req -CA ca.pem -CAkey ca.key -CAcreateserial \
|
||||
-in spiffe-cert.csr -out client_spiffe.pem -extensions spiffe_client_e2e \
|
||||
-extfile spiffe-openssl.cnf -days 3650 -sha256
|
||||
|
||||
openssl genrsa -out server.key.rsa 2048
|
||||
openssl pkcs8 -topk8 -in server.key.rsa -out server.key -nocrypt
|
||||
openssl req -new -key server.key -out spiffe-cert.csr \
|
||||
-subj "/C=US/ST=CA/L=SVL/O=gRPC/CN=*.test.google.com/" \
|
||||
-config spiffe-openssl.cnf -reqexts spiffe_server_e2e
|
||||
openssl x509 -req -CA ca.pem -CAkey ca.key -CAcreateserial \
|
||||
-in spiffe-cert.csr -out server_spiffe.pem -extensions spiffe_server_e2e \
|
||||
-extfile spiffe-openssl.cnf -days 3650 -sha256
|
||||
|
||||
rm *.rsa
|
||||
rm *.csr
|
||||
rm *.srl
|
||||
38
testdata/spiffe_end2end/intermediate.cnf
vendored
Normal file
38
testdata/spiffe_end2end/intermediate.cnf
vendored
Normal file
@@ -0,0 +1,38 @@
|
||||
[ca]
|
||||
default_ca = CA_intermediate
|
||||
|
||||
[CA_intermediate]
|
||||
dir = .
|
||||
certs = $dir/certs
|
||||
crl_dir = $dir/crl
|
||||
new_certs_dir = $dir/newcerts
|
||||
database = $dir/index.txt
|
||||
serial = $dir/serial
|
||||
RANDFILE = $dir/private/.rand
|
||||
private_key = $dir/intermediate_ca.key
|
||||
certificate = $dir/intermediate_ca.pem
|
||||
crl = $dir/intermediate.crl
|
||||
|
||||
# For certificate revocation lists.
|
||||
crlnumber = $dir/crlnumber
|
||||
crl = $dir/crl/intermediate.crl
|
||||
crl_extensions = crl_ext
|
||||
default_crl_days = 3650
|
||||
|
||||
default_md = sha256
|
||||
|
||||
[req]
|
||||
distinguished_name = req_distinguished_name
|
||||
req_extensions = v3_req
|
||||
prompt = no
|
||||
|
||||
[req_distinguished_name]
|
||||
CN = intermediatecert.example.com
|
||||
|
||||
[crl_ext]
|
||||
authorityKeyIdentifier=keyid:always
|
||||
|
||||
[v3_req]
|
||||
keyUsage = critical, digitalSignature, keyEncipherment, keyCertSign, cRLSign
|
||||
extendedKeyUsage = clientAuth, serverAuth
|
||||
basicConstraints = critical, CA:true
|
||||
28
testdata/spiffe_end2end/intermediate_ca.key
vendored
Normal file
28
testdata/spiffe_end2end/intermediate_ca.key
vendored
Normal file
@@ -0,0 +1,28 @@
|
||||
-----BEGIN PRIVATE KEY-----
|
||||
MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQDnXje+M6pAPFnr
|
||||
Ve2XjBMSslqLQc/PBLMGplOloIwgoqcw3UnC8LfZjoYXT7dfjA0IOxIg4mj+XGiQ
|
||||
voNMaudWEjTwf0goRE6kBUCVy+mxVq1XHR9Oooc49fGQZgx+YkIMGAZPgg6T4THd
|
||||
tQezPg4cEjx6b4C4x+pmWs0ZvoYPi0MvZCDSt4sN20sw9/mYH4wfZyEVBWpqJKUN
|
||||
jjwc5lzcweA0QkuO8LAZVQy9pwXeVhLEyCCtaDrnT4wRsiL2hRZ0s+RFHKIG6I88
|
||||
uv8ZAWzthladh19a5/C74vACtpU/UyNipJrTpyOPePmhESAP3ut2arMryAvaDi4Q
|
||||
Lb2oQtG7AgMBAAECggEAV5qKk7d/QrQ3Pc661/NfM2iZtPm1xAZc/OsUZ/WaqS69
|
||||
DFj1eVzo1/TJm+EApyphstie/BmONKVrqEaic1hVAHeDWP5wpWJ7vkoI0s8zTITr
|
||||
vDzYIk+S0MP687hYCbCNnoOoPAmcGG0fkvldEYaxE/rpsFgwzoZPn/LIjvNfUlmp
|
||||
yRIj5qTPl0XyDJE7cDgc7sjohAeKH3IQYZ9llgRlXIX8I8cPo6WOus7RmBx8xAyR
|
||||
Z3bsdxeTV6jjJUiAQi8vPb5GM23ghKmZnoRmYgwzetTwktIlWiFRKPQ+EZ9EVFlV
|
||||
SWitTH3af1q2xn736o/xTmCta5mnZw4+wgGfIQWXfQKBgQDz7KtGn+YOru2qcA89
|
||||
REIE/4VMzT32DobSCRLBBdnKnArYO0gVXsvdne7SPeIC64oQxUw/rpF4wwSpdfnU
|
||||
FEgmKlTTQ40tHFstpjqNiPd1eHTu7aG0uBn7NY86hBKfF4R26aar7KxI+2cNv5kK
|
||||
nBFpUMQnMZ0Yup+7/R9lamUzLwKBgQDy0mq5tB+tfK5H8DEu/cs5hkaJSO3Iug1h
|
||||
AJMdJ1GIlPTSB5/z+r5MMA/ufMwteQ2TOpbU44p32ZFAT83alAYSInt1STfj7/ZK
|
||||
3U8loiYVh5o9Uxzs5CHgRRNpLJwxlTEnctQCgIEJP5H0HxpP+6RomutAfkqCC8wp
|
||||
vhXEHCoXNQKBgAPBZA2tToxxUwVpvkJSN7X9/R5mloqgRKEdNKW2IllFN8GGgCCc
|
||||
GgVqdg/UlhM3byO89eSRGnpCfmLhhxwlx8qWokGya40DP8AfLA2byzuKxDodfHzc
|
||||
zMGaXH8pI2RBp29xP3isJybkf/ytM3z/VCFL9gkocWO9E9KAHiigj7hPAoGAbrsh
|
||||
zDml0HlxCIEyDJnT2RGwjN5jAQxHGZsnez344m37DuRHPv1zVk78lOb4PSxc0mz/
|
||||
Z2m0NV9T653449powlBTOHMBN8Kv8AfoFeNRtrO11I1YPXbzM9CMP4QGXl4IolKs
|
||||
988eCNeieU7NsvewS7uJ2Ek/NPqoScjTKDEnyJkCgYAXX/BzB0FtxW9Rbm3YAQrY
|
||||
kFh/R5aHpkuz18U3u961A62HSfSR19ZfQUqmguea1jfZvsidd3+OeepW6qeqCUFt
|
||||
PchZKTjdYpNRyyZ3HeMof4ciitns119tsnTcpGwknGgiiQUjeGd9dTPqwvOhkc0K
|
||||
Hwb1z80PO5jU95PTWdkPYQ==
|
||||
-----END PRIVATE KEY-----
|
||||
27
testdata/spiffe_end2end/intermediate_ca.pem
vendored
Normal file
27
testdata/spiffe_end2end/intermediate_ca.pem
vendored
Normal file
@@ -0,0 +1,27 @@
|
||||
-----BEGIN CERTIFICATE-----
|
||||
MIIEkzCCAnugAwIBAgIUScL7tRZAHT2l5ZGw+YblRNRRuO4wDQYJKoZIhvcNAQEL
|
||||
BQAwWjELMAkGA1UEBhMCVVMxCzAJBgNVBAgMAlZBMSEwHwYDVQQKDBhJbnRlcm5l
|
||||
dCBXaWRnaXRzIFB0eSBMdGQxGzAZBgNVBAMMEmZvby5iYXIuaG9vLmNhLmNvbTAe
|
||||
Fw0yNjAzMDkwNTI4MzdaFw0zNjAzMDYwNTI4MzdaMCcxJTAjBgNVBAMMHGludGVy
|
||||
bWVkaWF0ZWNlcnQuZXhhbXBsZS5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw
|
||||
ggEKAoIBAQDnXje+M6pAPFnrVe2XjBMSslqLQc/PBLMGplOloIwgoqcw3UnC8LfZ
|
||||
joYXT7dfjA0IOxIg4mj+XGiQvoNMaudWEjTwf0goRE6kBUCVy+mxVq1XHR9Oooc4
|
||||
9fGQZgx+YkIMGAZPgg6T4THdtQezPg4cEjx6b4C4x+pmWs0ZvoYPi0MvZCDSt4sN
|
||||
20sw9/mYH4wfZyEVBWpqJKUNjjwc5lzcweA0QkuO8LAZVQy9pwXeVhLEyCCtaDrn
|
||||
T4wRsiL2hRZ0s+RFHKIG6I88uv8ZAWzthladh19a5/C74vACtpU/UyNipJrTpyOP
|
||||
ePmhESAP3ut2arMryAvaDi4QLb2oQtG7AgMBAAGjgYMwgYAwDgYDVR0PAQH/BAQD
|
||||
AgGmMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEFBQcDATAPBgNVHRMBAf8EBTAD
|
||||
AQH/MB0GA1UdDgQWBBROacRArm/eG2joV3rxYZUe/WpdpDAfBgNVHSMEGDAWgBT8
|
||||
uO0DehVYJPPep8BBe5z90LtvzjANBgkqhkiG9w0BAQsFAAOCAgEAcGPtuw1yoTGp
|
||||
nOe1GxBmokrKQ+K2WTeSoAjAx1kkCTk+VCCzgZWFDZRCdIY94U2I2jviJbKttZmE
|
||||
TIRd3uHXhVQKH93paQxdo1xfhL4akSg9CCdeiqkUBZ0JCZKovm0UdSnz0VBEPRZ5
|
||||
jZ5WGxD/VnSTt6Hw4u6OjwV6GrZ8ld8ftqbfy34zWOnK2zdpE1gKUrpsWGOHUhd/
|
||||
e1wZklsJ/Vyu2L4y2hCWvmAG1NBJgE6AhQMpM9McbcKs4012VZczfV0xUIo1wD7c
|
||||
ccvhlz7KSIppAnXrvCrahCpv/vmpWnSExTuYmohW+LCvFSO89eSryfIQ+xHEb7Ck
|
||||
PPiwja7lWGr7KCFX7E98LMl6HX1P76snNXOyxM6++r2/KzGnb0xV84g8VGbdgzhN
|
||||
RUPRdoV89i0OwfNZlLMklNr0ilNTEYiWEjnD2bz1sHG6Ck5RK6tZfFew8JX+KA30
|
||||
WNs7s3YgKNS3s0/JJ3b7YrvByBQQnFGtVMNEk27RfGLd7dzNvlFtofX/d0GYyg9Y
|
||||
b5pQrVd78mUCDg7MWZCW6unk8BrJXF+d6nw0V3FgY03eGr3wOAGkSzJUdJdqtycx
|
||||
04JeL1n3Sl8r6mJJMJLzn1YAqDgM4Gt9W9corJFPCm2XnfUGjC/rDM7ACQYic8II
|
||||
J9QTW19kU+UwDdBp1lX+hb8AbA4otBM=
|
||||
-----END CERTIFICATE-----
|
||||
55
testdata/spiffe_end2end/intermediate_gen.sh
vendored
Executable file
55
testdata/spiffe_end2end/intermediate_gen.sh
vendored
Executable file
@@ -0,0 +1,55 @@
|
||||
#!/bin/bash
|
||||
# Copyright 2025 gRPC authors.
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
set -e
|
||||
|
||||
# Meant to be run from testdata/spiffe_end2end/
|
||||
# Sets up an intermediate ca, generates certificates, then copies then up and deletes unnecessary files
|
||||
|
||||
rm -rf intermediate_ca
|
||||
mkdir intermediate_ca
|
||||
cp intermediate.cnf intermediate_ca/
|
||||
cp spiffe-openssl.cnf intermediate_ca/
|
||||
pushd intermediate_ca
|
||||
|
||||
# Generating the intermediate CA
|
||||
openssl genrsa -out temp.rsa 2048
|
||||
openssl pkcs8 -topk8 -in temp.rsa -out intermediate_ca.key -nocrypt
|
||||
rm temp.rsa
|
||||
openssl req -key intermediate_ca.key -new -out temp.csr -config intermediate.cnf
|
||||
openssl x509 -req -days 3650 -in temp.csr -CA "../ca.pem" -CAkey "../ca.key" -CAcreateserial -out intermediate_ca.pem -extfile intermediate.cnf -extensions 'v3_req'
|
||||
|
||||
# Generating the leaf and chain
|
||||
openssl genrsa -out temp.rsa 2048
|
||||
openssl pkcs8 -topk8 -in temp.rsa -out leaf_signed_by_intermediate.key -nocrypt
|
||||
openssl req -new -key leaf_signed_by_intermediate.key -out spiffe-cert.csr \
|
||||
-subj /C=US/ST=CA/L=SVL/O=gRPC/CN=testserver/ \
|
||||
-config spiffe-openssl.cnf -reqexts spiffe_server_e2e
|
||||
openssl x509 -req -CA intermediate_ca.pem -CAkey intermediate_ca.key -CAcreateserial \
|
||||
-in spiffe-cert.csr -out leaf_signed_by_intermediate.pem -extensions spiffe_server_e2e \
|
||||
-extfile spiffe-openssl.cnf -days 3650 -sha256
|
||||
cat leaf_signed_by_intermediate.pem intermediate_ca.pem > leaf_and_intermediate_chain.pem
|
||||
|
||||
popd
|
||||
|
||||
# Copy files up to the higher directory
|
||||
cp "./intermediate_ca/leaf_signed_by_intermediate.key" ./
|
||||
cp "./intermediate_ca/leaf_signed_by_intermediate.pem" ./
|
||||
cp "./intermediate_ca/leaf_and_intermediate_chain.pem" ./
|
||||
cp "./intermediate_ca/intermediate_ca.key" ./
|
||||
cp "./intermediate_ca/intermediate_ca.pem" ./
|
||||
|
||||
rm ca.srl
|
||||
rm -rf intermediate_ca
|
||||
50
testdata/spiffe_end2end/leaf_and_intermediate_chain.pem
vendored
Normal file
50
testdata/spiffe_end2end/leaf_and_intermediate_chain.pem
vendored
Normal file
@@ -0,0 +1,50 @@
|
||||
-----BEGIN CERTIFICATE-----
|
||||
MIIDvjCCAqagAwIBAgIUSWu6PDuiG6sb3Xq6vlh6VJJaM8EwDQYJKoZIhvcNAQEL
|
||||
BQAwJzElMCMGA1UEAwwcaW50ZXJtZWRpYXRlY2VydC5leGFtcGxlLmNvbTAeFw0y
|
||||
NjAzMDkwNTI4MzdaFw0zNjAzMDYwNTI4MzdaMEwxCzAJBgNVBAYTAlVTMQswCQYD
|
||||
VQQIDAJDQTEMMAoGA1UEBwwDU1ZMMQ0wCwYDVQQKDARnUlBDMRMwEQYDVQQDDAp0
|
||||
ZXN0c2VydmVyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAn0RCm1Zy
|
||||
1skITm0HxKRPj0c4eI98kUay30ZsdgWR0BWv76+LoleJ8CYn5t7m1E2fvhTH7yye
|
||||
hiZLSMC3I9/653/wjhOSK3dnow43ErGgStGr22TdQPIiUAj9UNuQ9LhWJtTUwQXm
|
||||
ial5SZzMS+OfQhjiK6lxUFh6sDk8KTRqDVVF65RLYMhGyhSOn+aI8SXGoWu+3y/G
|
||||
UrOOLo8MlBN1YrK9Sgu4JZzYgdUAxs6PR8WSssoBykdq7Ak9Kr3/P1k0aF+eLEN+
|
||||
pjUgwC8z+Lx0xJcXZMKAHsGIFoFWP3hCEmtHWW7OzZ/FOeZARJ4EDg3u+cQr+Dqn
|
||||
11/Vi9ruZH12mwIDAQABo4G8MIG5MHcGA1UdEQRwMG6CECoudGVzdC5nb29nbGUu
|
||||
ZnKCGHdhdGVyem9vaS50ZXN0Lmdvb2dsZS5iZYISKi50ZXN0LnlvdXR1YmUuY29t
|
||||
hwTAqAEDhiZzcGlmZmU6Ly9leGFtcGxlLmNvbS93b3JrbG9hZC85ZWViY2NkMjAd
|
||||
BgNVHQ4EFgQUXaDeLUuKpyHPOFRSzjDft8OqIRIwHwYDVR0jBBgwFoAUTmnEQK5v
|
||||
3hto6Fd68WGVHv1qXaQwDQYJKoZIhvcNAQELBQADggEBABjU2ZTLcaMSM6uwbw48
|
||||
WrTMwxhCKhOWtirGxJkKzr/g6E5j7VMayWYWuDLDn+snWNOPuCEEFLOY15FYxvX8
|
||||
iVQ0uBYBNvbKmcLggm3eu3JleMGvHh4RnwJ7MprYB2UEHqGkD2p9CNm67eO4uqCh
|
||||
FpNj0kwrlL2nzO8jgJVnV8gn60UJ5OUA5q09HaDg0Eh6QNTVHL5V5WJPp2aGgTK8
|
||||
Ku/gIjjAanWlpk9A5jsHz5UD0I97+E3jn+ZJGHBEM9u6pQUyhwL/K9VirLqCLd/x
|
||||
UjCphAIfz1JN/+ZypSTyk+MDKU37hjbnk/uxh6ltv+Q3SnyRKM23FlDwG74jHLYJ
|
||||
nVI=
|
||||
-----END CERTIFICATE-----
|
||||
-----BEGIN CERTIFICATE-----
|
||||
MIIEkzCCAnugAwIBAgIUScL7tRZAHT2l5ZGw+YblRNRRuO4wDQYJKoZIhvcNAQEL
|
||||
BQAwWjELMAkGA1UEBhMCVVMxCzAJBgNVBAgMAlZBMSEwHwYDVQQKDBhJbnRlcm5l
|
||||
dCBXaWRnaXRzIFB0eSBMdGQxGzAZBgNVBAMMEmZvby5iYXIuaG9vLmNhLmNvbTAe
|
||||
Fw0yNjAzMDkwNTI4MzdaFw0zNjAzMDYwNTI4MzdaMCcxJTAjBgNVBAMMHGludGVy
|
||||
bWVkaWF0ZWNlcnQuZXhhbXBsZS5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw
|
||||
ggEKAoIBAQDnXje+M6pAPFnrVe2XjBMSslqLQc/PBLMGplOloIwgoqcw3UnC8LfZ
|
||||
joYXT7dfjA0IOxIg4mj+XGiQvoNMaudWEjTwf0goRE6kBUCVy+mxVq1XHR9Oooc4
|
||||
9fGQZgx+YkIMGAZPgg6T4THdtQezPg4cEjx6b4C4x+pmWs0ZvoYPi0MvZCDSt4sN
|
||||
20sw9/mYH4wfZyEVBWpqJKUNjjwc5lzcweA0QkuO8LAZVQy9pwXeVhLEyCCtaDrn
|
||||
T4wRsiL2hRZ0s+RFHKIG6I88uv8ZAWzthladh19a5/C74vACtpU/UyNipJrTpyOP
|
||||
ePmhESAP3ut2arMryAvaDi4QLb2oQtG7AgMBAAGjgYMwgYAwDgYDVR0PAQH/BAQD
|
||||
AgGmMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEFBQcDATAPBgNVHRMBAf8EBTAD
|
||||
AQH/MB0GA1UdDgQWBBROacRArm/eG2joV3rxYZUe/WpdpDAfBgNVHSMEGDAWgBT8
|
||||
uO0DehVYJPPep8BBe5z90LtvzjANBgkqhkiG9w0BAQsFAAOCAgEAcGPtuw1yoTGp
|
||||
nOe1GxBmokrKQ+K2WTeSoAjAx1kkCTk+VCCzgZWFDZRCdIY94U2I2jviJbKttZmE
|
||||
TIRd3uHXhVQKH93paQxdo1xfhL4akSg9CCdeiqkUBZ0JCZKovm0UdSnz0VBEPRZ5
|
||||
jZ5WGxD/VnSTt6Hw4u6OjwV6GrZ8ld8ftqbfy34zWOnK2zdpE1gKUrpsWGOHUhd/
|
||||
e1wZklsJ/Vyu2L4y2hCWvmAG1NBJgE6AhQMpM9McbcKs4012VZczfV0xUIo1wD7c
|
||||
ccvhlz7KSIppAnXrvCrahCpv/vmpWnSExTuYmohW+LCvFSO89eSryfIQ+xHEb7Ck
|
||||
PPiwja7lWGr7KCFX7E98LMl6HX1P76snNXOyxM6++r2/KzGnb0xV84g8VGbdgzhN
|
||||
RUPRdoV89i0OwfNZlLMklNr0ilNTEYiWEjnD2bz1sHG6Ck5RK6tZfFew8JX+KA30
|
||||
WNs7s3YgKNS3s0/JJ3b7YrvByBQQnFGtVMNEk27RfGLd7dzNvlFtofX/d0GYyg9Y
|
||||
b5pQrVd78mUCDg7MWZCW6unk8BrJXF+d6nw0V3FgY03eGr3wOAGkSzJUdJdqtycx
|
||||
04JeL1n3Sl8r6mJJMJLzn1YAqDgM4Gt9W9corJFPCm2XnfUGjC/rDM7ACQYic8II
|
||||
J9QTW19kU+UwDdBp1lX+hb8AbA4otBM=
|
||||
-----END CERTIFICATE-----
|
||||
28
testdata/spiffe_end2end/leaf_signed_by_intermediate.key
vendored
Normal file
28
testdata/spiffe_end2end/leaf_signed_by_intermediate.key
vendored
Normal file
@@ -0,0 +1,28 @@
|
||||
-----BEGIN PRIVATE KEY-----
|
||||
MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQCfREKbVnLWyQhO
|
||||
bQfEpE+PRzh4j3yRRrLfRmx2BZHQFa/vr4uiV4nwJifm3ubUTZ++FMfvLJ6GJktI
|
||||
wLcj3/rnf/COE5Ird2ejDjcSsaBK0avbZN1A8iJQCP1Q25D0uFYm1NTBBeaJqXlJ
|
||||
nMxL459CGOIrqXFQWHqwOTwpNGoNVUXrlEtgyEbKFI6f5ojxJcaha77fL8ZSs44u
|
||||
jwyUE3Visr1KC7glnNiB1QDGzo9HxZKyygHKR2rsCT0qvf8/WTRoX54sQ36mNSDA
|
||||
LzP4vHTElxdkwoAewYgWgVY/eEISa0dZbs7Nn8U55kBEngQODe75xCv4OqfXX9WL
|
||||
2u5kfXabAgMBAAECgf9AcpewyOJaQLNeJWtBrB9DTRNdfOuMiKcIliruxqeGU58g
|
||||
cYB3258uoXFxIPq5AUf4MUEoO60ZpUjkkA3XwmKfg+0ymln9iKlBboihvA+cSgyy
|
||||
11bW1J+4k+qrW89DEf9+05dqEpDiGmZF8ahuFprplgu2qNDcU4ksJRlsBNysdO9q
|
||||
w8HN25ERWniAzsuXuG+w9AGBFk2eNuumKmQUBJmeqYcJb45YsXhLM4k1rQOJlmYZ
|
||||
OI+HhHexRn7/iLOsZns+Sm9DXadWy7Gdf+WaU4AR4M9JoBGi4qG9LMP2NDVFvPr0
|
||||
S+nfsri+4Z08SvcgdG+sHPzsxwojSAeSm8EIIpECgYEAysvpoISbu0j3noNAjA81
|
||||
+0YyN3XQ/dSkogTtbJFE8Zm0YjpvMYwpO5oJFXnbE2ofAHNUXicpnO2gw0lna8Bp
|
||||
RmYfdjI8/w//+x9Mw3yBhBQ0YlDK4MC2A90G69/AsJsKqiqHOy6aQg0yeLLIVJn7
|
||||
bsAjOyUpuhpBzGQcG9bwZvMCgYEAyQzSU2tbxYiKiZcnrP87alPa/43XtUSsTILX
|
||||
EbmsWL9gMyqz3UOf0QQomUis0njbuQHi8MU+8ecQPG43AjAnpyHuwtgDUUV4EDPb
|
||||
IhGCE39Or6Jn9cNLkDpSdANCXE1Q+qjdvmaYChYpO/o4xR1036XUBz7qNYWXWj4O
|
||||
pmk267kCgYEAi923dA4Bmlno7lp32iFjiboQSE/ppCdUpKnhVk+azUbFMjo7FmEk
|
||||
zwad3UH95pX6a8UfGxDHkoQRrJ6jxZ0e/n7QlCRyDThrxDcCKpFkgkOtHWG7iude
|
||||
oat/ao8XxrYn1NUgD6FEoumXNceYg0DwOKIrqk8nSENzvhQNjuXfSCECgYAymveV
|
||||
58AByIyWdWWXNedOrCzDhoB1MAPufkCERagL7p/YQTdkylC/27wcWR6nG6SyvLbS
|
||||
w9NEMFT14QgXlOdmOjRO9vBe1I2UBnlx6dZD8hdsPgTM54ttkkCO0wMxGIT5kue9
|
||||
tTUv1MQsRJ9lfjSc1rC34i4xqp6eKGCnonQggQKBgQCBYfAGIrZy3OLbr3EybT7w
|
||||
lq5LXSnxRkVAXYAY9Ekrha2TjKZvnLWcPvej60wi9swf0756Oyz672XAoPe+cveJ
|
||||
mVhE3HurAHtUyC/PQhh8foqvO0dEtRrOdpCZIGv0mGflrHDzU8qHWBGuCtwmYsZU
|
||||
rJEMcQLW2d6IFQkizWc9+A==
|
||||
-----END PRIVATE KEY-----
|
||||
23
testdata/spiffe_end2end/leaf_signed_by_intermediate.pem
vendored
Normal file
23
testdata/spiffe_end2end/leaf_signed_by_intermediate.pem
vendored
Normal file
@@ -0,0 +1,23 @@
|
||||
-----BEGIN CERTIFICATE-----
|
||||
MIIDvjCCAqagAwIBAgIUSWu6PDuiG6sb3Xq6vlh6VJJaM8EwDQYJKoZIhvcNAQEL
|
||||
BQAwJzElMCMGA1UEAwwcaW50ZXJtZWRpYXRlY2VydC5leGFtcGxlLmNvbTAeFw0y
|
||||
NjAzMDkwNTI4MzdaFw0zNjAzMDYwNTI4MzdaMEwxCzAJBgNVBAYTAlVTMQswCQYD
|
||||
VQQIDAJDQTEMMAoGA1UEBwwDU1ZMMQ0wCwYDVQQKDARnUlBDMRMwEQYDVQQDDAp0
|
||||
ZXN0c2VydmVyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAn0RCm1Zy
|
||||
1skITm0HxKRPj0c4eI98kUay30ZsdgWR0BWv76+LoleJ8CYn5t7m1E2fvhTH7yye
|
||||
hiZLSMC3I9/653/wjhOSK3dnow43ErGgStGr22TdQPIiUAj9UNuQ9LhWJtTUwQXm
|
||||
ial5SZzMS+OfQhjiK6lxUFh6sDk8KTRqDVVF65RLYMhGyhSOn+aI8SXGoWu+3y/G
|
||||
UrOOLo8MlBN1YrK9Sgu4JZzYgdUAxs6PR8WSssoBykdq7Ak9Kr3/P1k0aF+eLEN+
|
||||
pjUgwC8z+Lx0xJcXZMKAHsGIFoFWP3hCEmtHWW7OzZ/FOeZARJ4EDg3u+cQr+Dqn
|
||||
11/Vi9ruZH12mwIDAQABo4G8MIG5MHcGA1UdEQRwMG6CECoudGVzdC5nb29nbGUu
|
||||
ZnKCGHdhdGVyem9vaS50ZXN0Lmdvb2dsZS5iZYISKi50ZXN0LnlvdXR1YmUuY29t
|
||||
hwTAqAEDhiZzcGlmZmU6Ly9leGFtcGxlLmNvbS93b3JrbG9hZC85ZWViY2NkMjAd
|
||||
BgNVHQ4EFgQUXaDeLUuKpyHPOFRSzjDft8OqIRIwHwYDVR0jBBgwFoAUTmnEQK5v
|
||||
3hto6Fd68WGVHv1qXaQwDQYJKoZIhvcNAQELBQADggEBABjU2ZTLcaMSM6uwbw48
|
||||
WrTMwxhCKhOWtirGxJkKzr/g6E5j7VMayWYWuDLDn+snWNOPuCEEFLOY15FYxvX8
|
||||
iVQ0uBYBNvbKmcLggm3eu3JleMGvHh4RnwJ7MprYB2UEHqGkD2p9CNm67eO4uqCh
|
||||
FpNj0kwrlL2nzO8jgJVnV8gn60UJ5OUA5q09HaDg0Eh6QNTVHL5V5WJPp2aGgTK8
|
||||
Ku/gIjjAanWlpk9A5jsHz5UD0I97+E3jn+ZJGHBEM9u6pQUyhwL/K9VirLqCLd/x
|
||||
UjCphAIfz1JN/+ZypSTyk+MDKU37hjbnk/uxh6ltv+Q3SnyRKM23FlDwG74jHLYJ
|
||||
nVI=
|
||||
-----END CERTIFICATE-----
|
||||
28
testdata/spiffe_end2end/server.key
vendored
Normal file
28
testdata/spiffe_end2end/server.key
vendored
Normal file
@@ -0,0 +1,28 @@
|
||||
-----BEGIN PRIVATE KEY-----
|
||||
MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQC7mwFKwCTD58lp
|
||||
Pq+aQUpum9+CADQxiiFY2B9zWGCkotIaZhtCA/ZVdy5Wn17T0AosLAeyxWsqg9OV
|
||||
cEBRgs7xvvZxXM8MUlfOjTNMgfFgI8VNYOK94Skwo/CTdNz1KkWLthkNwdL8vjWH
|
||||
KQgdqwp3HvuqYL0N+b27MPEQdImY+sqGWqWtHqFbTIPJcyyWPS1Wyw9jh+YwTo/w
|
||||
jPXW6mcODRNWv8ZZfbtOaQVNQ60t8U9sdJhESZ5XqQrWsTwulKxGw5mXl1K10iTW
|
||||
mX28k8QS9NsgtZKYyBwIFGcjc+19EiP46xDlXmWcE3YL+huogP7KDXuUoKIo/oRB
|
||||
xaYJ9mujAgMBAAECggEAEeoBO5QRbquJbgVQW1h0tQ8pTo6abUiVWph4mFkOEWqC
|
||||
yYaKf8lFEnAo+piJQ4yQDBvAOG/lhc/EunZXjfEBtc/YVIbaNoD+ZXjSNzIJTHbd
|
||||
9j+UJzGC72QYKtxz5O0+atLenZOug/fdwKRIZBzbCPjqayCFrPn2BhPsUPfv062l
|
||||
AzP2om5rrT1ZdXLNlEy7BXjMs1qljj1b3VmfWvnrsA5khq0DHYJoJ7rP0f/tKhBR
|
||||
t4+Gh7/6Wec4Qqoy10rco6Oa3OpIolKFJMYQ3enA2aaTIM7L7E+kVrRm62+OB7mn
|
||||
pkpkPMYN9IC52FqHSaWc16vftynr+PjbNbkcElk4gQKBgQDsnleyATqTNtX2qDH9
|
||||
eYv4I05hulbVyI1OgsiWKLHQooGuaHdReUwW/RuofSVo/owJXSIvqnldltyuQ9Da
|
||||
ZPYbOlpEl4twSRIx5To4w7zuYgpFr8643lPCpij+PLGPryvn2JuJAoNPU4rzEN7y
|
||||
1vxU2U7Bqoh/X0S9ZYpBwzIyQwKBgQDK+OhJZdBVVeta3Nip9Bli7XXhcZV++7ip
|
||||
JDxzIMrDqjYzY4sQDtkhpysuos2Mgp90C4HwhpDsfP2whVuypFLj6ChEspot/1DI
|
||||
rFo2KhEOVOXOfdTnLrtWlitSp38i2E2C5g53T9Jigyq8ssQfZwoqlVP7fOK+79FV
|
||||
CBJpIC27IQKBgEunTO6zCeFr1PlqSaF7rU8HKtaAV6c+2j9R/YRVOpU0gDYdXJkG
|
||||
KVfoUWGLsdxiFrAfwQBwhyFvTNvC/xH02eNWwunPclvSYSjm27iujMfDPPmO/o+J
|
||||
Nkq0CcNP8I26OlWEoiYqUYWZdoHE0SPfrQoL+Oxe9AmVkkrkHlJscK41AoGAB3Ut
|
||||
08SR6xDFHQmQTG5ToHbpJedufsPw/QX/0psZ2Cag5zJ5IZXqFHp387a3proF8dWa
|
||||
aKQJHydYiuvbeqze/tDA6gVF9Pq0lSsABY12IvirmPK2p+fnqj7KSLcuzLD16CFb
|
||||
1rZwHH6FS3mmCyFWFkp2U387NZjKMD2jr4knJQECgYEAxexweu0XMPRujIL4/ONO
|
||||
XjKf0N7/WJOaMt4cxP/po02taLSg+9Nw3/7rEM2sX6046mG3mPTKb2Aj6gpdmPIj
|
||||
DdpkFBoxgZy3/QBscm4Xmi6AOgmAVy0cNgnXLDbFY8pzUiaBaxpqtHlBxzxNk2UG
|
||||
3DB1bo79CURbSmdFaUklpkQ=
|
||||
-----END PRIVATE KEY-----
|
||||
29
testdata/spiffe_end2end/server_spiffe.pem
vendored
Normal file
29
testdata/spiffe_end2end/server_spiffe.pem
vendored
Normal file
@@ -0,0 +1,29 @@
|
||||
-----BEGIN CERTIFICATE-----
|
||||
MIIE+DCCAuCgAwIBAgIUCzY7jU+NrvxZf0WMdg/5AM5i8XYwDQYJKoZIhvcNAQEL
|
||||
BQAwWjELMAkGA1UEBhMCVVMxCzAJBgNVBAgMAlZBMSEwHwYDVQQKDBhJbnRlcm5l
|
||||
dCBXaWRnaXRzIFB0eSBMdGQxGzAZBgNVBAMMEmZvby5iYXIuaG9vLmNhLmNvbTAe
|
||||
Fw0yNjAzMDkwNTI4MjFaFw0zNjAzMDYwNTI4MjFaMFMxCzAJBgNVBAYTAlVTMQsw
|
||||
CQYDVQQIDAJDQTEMMAoGA1UEBwwDU1ZMMQ0wCwYDVQQKDARnUlBDMRowGAYDVQQD
|
||||
DBEqLnRlc3QuZ29vZ2xlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC
|
||||
ggEBALubAUrAJMPnyWk+r5pBSm6b34IANDGKIVjYH3NYYKSi0hpmG0ID9lV3Llaf
|
||||
XtPQCiwsB7LFayqD05VwQFGCzvG+9nFczwxSV86NM0yB8WAjxU1g4r3hKTCj8JN0
|
||||
3PUqRYu2GQ3B0vy+NYcpCB2rCnce+6pgvQ35vbsw8RB0iZj6yoZapa0eoVtMg8lz
|
||||
LJY9LVbLD2OH5jBOj/CM9dbqZw4NE1a/xll9u05pBU1DrS3xT2x0mERJnlepCtax
|
||||
PC6UrEbDmZeXUrXSJNaZfbyTxBL02yC1kpjIHAgUZyNz7X0SI/jrEOVeZZwTdgv6
|
||||
G6iA/soNe5Sgoij+hEHFpgn2a6MCAwEAAaOBvDCBuTB3BgNVHREEcDBughAqLnRl
|
||||
c3QuZ29vZ2xlLmZyghh3YXRlcnpvb2kudGVzdC5nb29nbGUuYmWCEioudGVzdC55
|
||||
b3V0dWJlLmNvbYcEwKgBA4Ymc3BpZmZlOi8vZXhhbXBsZS5jb20vd29ya2xvYWQv
|
||||
OWVlYmNjZDIwHQYDVR0OBBYEFBX+f5l5bG5acfhtDIBG57WD+zAtMB8GA1UdIwQY
|
||||
MBaAFPy47QN6FVgk896nwEF7nP3Qu2/OMA0GCSqGSIb3DQEBCwUAA4ICAQCWvSe3
|
||||
kD21ksNBbH5COlpLhKbbnnlrkBAzzZjeJfkdDROXXUWAepxubX81cd5aZwhucFWL
|
||||
bEL08D9+f+cUrseAafMxNXqBoK9fzJJq2v8fD27Ian63oAfcR5pG7EuvoJ99zwqL
|
||||
Bi3SYuakq+u59LfWOmq/ohSi9H9pFbSJHjmMi0CynfL6qYJKacJcEjDq8yJTC4t7
|
||||
/s8eJGz+w1sSIlpkgbnNva3MA2HrLVzdQwC7JzZ69FljX4JZH37PXTQfi6Ri1WJq
|
||||
G8OlEnk4NVt/pimiK5OLmhcfk7fbFL274A7rLzrHT1IZE6NUmDq9i8BwqnTNumMI
|
||||
mwNQWe7ZPO6SNyv8lVrcuZF/wRx4b5KP0OBqi9I5emjolU1n+OcfurClgkFgN46d
|
||||
GSBeIToQekBOWFm1Hb4a/nBMqaiLHnslnBbGsZGZ+miD8Rue/yqtCD10NjYJkaUC
|
||||
jHOSwZ3hNn1Po9S0HehKA9MZO/ES3MQHedqtP3K3HG52ZmKQ8NNKIQ34zSsgrNHP
|
||||
vZgWpmdvcUrnzh1Ft1oq4nLws3Y2F4/c7YUfVWzo+ydePy5eaYQaMjYdhosBJWHk
|
||||
3fMQJm+mkeLZmM2Akk5Zza68U6FuyBTyERbl60TV2pU7pZ5cqaOOO16/kfZTmYSq
|
||||
9g6wsjV7y0tVXlPir4ezSeI0SyYikuS9/v6Ycw==
|
||||
-----END CERTIFICATE-----
|
||||
16
testdata/spiffe_end2end/server_spiffebundle.json
vendored
Normal file
16
testdata/spiffe_end2end/server_spiffebundle.json
vendored
Normal file
@@ -0,0 +1,16 @@
|
||||
{
|
||||
"trust_domains": {
|
||||
"foo.bar.com": {
|
||||
"spiffe_sequence": 12035488,
|
||||
"keys": [
|
||||
{
|
||||
"kty": "RSA",
|
||||
"use": "x509-svid",
|
||||
"x5c": ["MIIFlTCCA32gAwIBAgIUZ4e1KRtWw0c8V5NnA9VEoUMvzq4wDQYJKoZIhvcNAQELBQAwWjELMAkGA1UEBhMCVVMxCzAJBgNVBAgMAlZBMSEwHwYDVQQKDBhJbnRlcm5ldCBXaWRnaXRzIFB0eSBMdGQxGzAZBgNVBAMMEmZvby5iYXIuaG9vLmNhLmNvbTAeFw0yNjAzMDkwNTI4MjBaFw0zNjAzMDYwNTI4MjBaMFoxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJWQTEhMB8GA1UECgwYSW50ZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMRswGQYDVQQDDBJmb28uYmFyLmhvby5jYS5jb20wggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDZRezL1GWM/0umgcLNGI9fsp0sabLUN1rUTwXjCGHvGAt9cPY1xK6P6+/QXeBkYogmwC3Udhwl+8x3AOu2FKP9QeveW+hB4N3SCtY4D+nGxPWnL1Yjh0170tkVRPkh89wPX4XdtAcIgZjjNgPH9wR3eWH8E3cDRvxjosy4e9aw0/VTHb0lZ2Ko6mY8x2bJNFUExmuh157b//yHdcL8O1K1h13o6YSqSlnLmnaSHpHA5/21erSjszE3ZjiPZFR6cl/RDjpJRKrh/eQAAeg7XO00VokrvZnK07mZ2nNyp4z1yCV4fwWCdBMfFfUSm0EgN8D65JxGj1He5bm4LVv6WuWj+cqgAzRhHjp8iZsmLFKvAoXSg1eJ+mG8vw5P9ZVd38M8N2DtifvmCkE1fln84oQj42wDgNQuwSafbGQIhNYrnsgbf+2lNj5IIYm/ScUcexbmCmKyOZfNcVQNAF26vQOvibBDOFyDW2qdi2tIGJgTPhkJPbDqKJx4UqNxIuoam28PifmK51Cn4i9rWOpQ2nM7JGX1Q3IE6S5iaVnogp2+SSh3PhktxQOK9IUX7ysX9eVQAdN8lnKgaIZuyYOx9H9jWValZ/dCLa2Y/BuFslx4NRVLtoJkUIakdTepo83ZrrSs3c4DSEIJJkgVPBmBkua3RdYB1Cw+A8T0C8nvExyJbwIDAQABo1MwUTAdBgNVHQ4EFgQU/LjtA3oVWCTz3qfAQXuc/dC7b84wHwYDVR0jBBgwFoAU/LjtA3oVWCTz3qfAQXuc/dC7b84wDwYDVR0TAQH/BAUwAwEB/zANBgkqhkiG9w0BAQsFAAOCAgEAZFJDbhKL1M16Ya7eAvrgUWI9vbC4xm/68HzIGuQLeP9yr7QMfk5wzh9umYcGWs/hkz2jg/88PbPUEP35psTw+dZGtnQwi/0icM9w7m0HZrDx8vMYvX5AoEaPb5PqbjwhBxzd2Hpv/Y+PLLRO9uh1Xeh95J4yp5t/xOPyimljKLTam+rpj7BevYftlSXuIWrR6sldIt9I1zT5CfcBSefmSVo2WtgLdqfOBIAD73OMbcxEPDiTF4/q8S1qHeA8eNUXc5IrWEI2NirhpvR0ZXMyjY1gJoZ4XqPFSXg+1oi9qpbjMhKU5J+Rm8brv/HmACaP90hSPXjuRl2Tp/NJ6idV1heNd4MdTeAlH+deQ+UQ/rFo6HY95S3ltdcaDX8V7WdpRUQddv2DS5VPPi60LJuOdxKB+XFtjdLUtxwOw3Hoj91YWZLuMu2xzVeASeA6FsB0vZwQdqn8FX1BQNSIEHGs7tieV7N0AlLavQBpyRYfhgKOL9Utbl4Cp6C6k42uFo/tFREUdzgtt0JqT+/NMJRA6rOJYHVUWNeG2ggGpuCtHXkwktC4JBnUwnvdVZX3sXPslmiFzMO6S/+PesHA0TclifTZNOETHphF8efGsRFL/lkhcBRkZKBVOkWKdKMUnXPgDKLyu/e1WQXCXmyTjv8FEiG2Ni8U4P0c2PldooYVjw4="],
|
||||
"n": "2UXsy9RljP9LpoHCzRiPX7KdLGmy1Dda1E8F4whh7xgLfXD2NcSuj-vv0F3gZGKIJsAt1HYcJfvMdwDrthSj_UHr3lvoQeDd0grWOA_pxsT1py9WI4dNe9LZFUT5IfPcD1-F3bQHCIGY4zYDx_cEd3lh_BN3A0b8Y6LMuHvWsNP1Ux29JWdiqOpmPMdmyTRVBMZrodee2__8h3XC_DtStYdd6OmEqkpZy5p2kh6RwOf9tXq0o7MxN2Y4j2RUenJf0Q46SUSq4f3kAAHoO1ztNFaJK72ZytO5mdpzcqeM9cgleH8FgnQTHxX1EptBIDfA-uScRo9R3uW5uC1b-lrlo_nKoAM0YR46fImbJixSrwKF0oNXifphvL8OT_WVXd_DPDdg7Yn75gpBNX5Z_OKEI-NsA4DULsEmn2xkCITWK57IG3_tpTY-SCGJv0nFHHsW5gpisjmXzXFUDQBdur0Dr4mwQzhcg1tqnYtrSBiYEz4ZCT2w6iiceFKjcSLqGptvD4n5iudQp-Iva1jqUNpzOyRl9UNyBOkuYmlZ6IKdvkkodz4ZLcUDivSFF-8rF_XlUAHTfJZyoGiGbsmDsfR_Y1lWpWf3Qi2tmPwbhbJceDUVS7aCZFCGpHU3qaPN2a60rN3OA0hCCSZIFTwZgZLmt0XWAdQsPgPE9AvJ7xMciW8",
|
||||
"e": "AQAB"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
28
testdata/spiffe_end2end/spiffe-openssl.cnf
vendored
Normal file
28
testdata/spiffe_end2end/spiffe-openssl.cnf
vendored
Normal file
@@ -0,0 +1,28 @@
|
||||
[spiffe_client]
|
||||
subjectAltName = @alt_names
|
||||
|
||||
[spiffe_client_multi]
|
||||
subjectAltName = @alt_names_multi
|
||||
|
||||
[spiffe_server_e2e]
|
||||
subjectAltName = @alt_names_server_e2e
|
||||
|
||||
[spiffe_client_e2e]
|
||||
subjectAltName = @alt_names_client_e2e
|
||||
|
||||
[alt_names]
|
||||
URI = spiffe://foo.bar.com/client/workload/1
|
||||
|
||||
[alt_names_multi]
|
||||
URI.1 = spiffe://foo.bar.com/client/workload/1
|
||||
URI.2 = spiffe://foo.bar.com/client/workload/2
|
||||
|
||||
[alt_names_server_e2e]
|
||||
DNS.1 = *.test.google.fr
|
||||
DNS.2 = waterzooi.test.google.be
|
||||
DNS.3 = *.test.youtube.com
|
||||
IP.1 = "192.168.1.3"
|
||||
URI = spiffe://example.com/workload/9eebccd2
|
||||
|
||||
[alt_names_client_e2e]
|
||||
URI = spiffe://foo.bar.com/9eebccd2-12bf-40a6-b262-65fe0487d453
|
||||
42
testdata/testdata.go
vendored
Normal file
42
testdata/testdata.go
vendored
Normal file
@@ -0,0 +1,42 @@
|
||||
/*
|
||||
* Copyright 2017 gRPC authors.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*
|
||||
*/
|
||||
|
||||
package testdata
|
||||
|
||||
import (
|
||||
"path/filepath"
|
||||
"runtime"
|
||||
)
|
||||
|
||||
// basepath is the root directory of this package.
|
||||
var basepath string
|
||||
|
||||
func init() {
|
||||
_, currentFile, _, _ := runtime.Caller(0)
|
||||
basepath = filepath.Dir(currentFile)
|
||||
}
|
||||
|
||||
// Path returns the absolute path the given relative file or directory path,
|
||||
// relative to the google.golang.org/grpc/testdata directory in the user's GOPATH.
|
||||
// If rel is already absolute, it is returned unmodified.
|
||||
func Path(rel string) string {
|
||||
if filepath.IsAbs(rel) {
|
||||
return rel
|
||||
}
|
||||
|
||||
return filepath.Join(basepath, rel)
|
||||
}
|
||||
6
testdata/x509/README.md
vendored
Normal file
6
testdata/x509/README.md
vendored
Normal file
@@ -0,0 +1,6 @@
|
||||
This directory contains x509 certificates and associated private keys used in
|
||||
gRPC-Go tests.
|
||||
|
||||
How were these test certs/keys generated ?
|
||||
------------------------------------------
|
||||
Run `./create.sh`
|
||||
32
testdata/x509/client1_cert.pem
vendored
Normal file
32
testdata/x509/client1_cert.pem
vendored
Normal file
@@ -0,0 +1,32 @@
|
||||
-----BEGIN CERTIFICATE-----
|
||||
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
|
||||
Bn/aYes=
|
||||
-----END CERTIFICATE-----
|
||||
51
testdata/x509/client1_key.pem
vendored
Normal file
51
testdata/x509/client1_key.pem
vendored
Normal file
@@ -0,0 +1,51 @@
|
||||
-----BEGIN RSA PRIVATE KEY-----
|
||||
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
|
||||
-----END RSA PRIVATE KEY-----
|
||||
32
testdata/x509/client2_cert.pem
vendored
Normal file
32
testdata/x509/client2_cert.pem
vendored
Normal file
@@ -0,0 +1,32 @@
|
||||
-----BEGIN CERTIFICATE-----
|
||||
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
|
||||
kKizg2s=
|
||||
-----END CERTIFICATE-----
|
||||
51
testdata/x509/client2_key.pem
vendored
Normal file
51
testdata/x509/client2_key.pem
vendored
Normal file
@@ -0,0 +1,51 @@
|
||||
-----BEGIN RSA PRIVATE KEY-----
|
||||
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
|
||||
-----END RSA PRIVATE KEY-----
|
||||
35
testdata/x509/client_ca_cert.pem
vendored
Normal file
35
testdata/x509/client_ca_cert.pem
vendored
Normal file
@@ -0,0 +1,35 @@
|
||||
-----BEGIN CERTIFICATE-----
|
||||
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
|
||||
louEQ0EV
|
||||
-----END CERTIFICATE-----
|
||||
52
testdata/x509/client_ca_key.pem
vendored
Normal file
52
testdata/x509/client_ca_key.pem
vendored
Normal file
@@ -0,0 +1,52 @@
|
||||
-----BEGIN PRIVATE KEY-----
|
||||
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
|
||||
c/xqN5lRsGXGduw76PipTrLpy3/LkZDL
|
||||
-----END PRIVATE KEY-----
|
||||
33
testdata/x509/client_with_spiffe_cert.pem
vendored
Normal file
33
testdata/x509/client_with_spiffe_cert.pem
vendored
Normal file
@@ -0,0 +1,33 @@
|
||||
-----BEGIN CERTIFICATE-----
|
||||
MIIFxzCCA6+gAwIBAgICA+gwDQYJKoZIhvcNAQELBQAwUDELMAkGA1UEBhMCVVMx
|
||||
CzAJBgNVBAgMAkNBMQwwCgYDVQQHDANTVkwxDTALBgNVBAoMBGdSUEMxFzAVBgNV
|
||||
BAMMDnRlc3QtY2xpZW50X2NhMB4XDTIzMDUyMjA1MDA1NVoXDTMzMDUxOTA1MDA1
|
||||
NVowTjELMAkGA1UEBhMCVVMxCzAJBgNVBAgMAkNBMQwwCgYDVQQHDANTVkwxDTAL
|
||||
BgNVBAoMBGdSUEMxFTATBgNVBAMMDHRlc3QtY2xpZW50MTCCAiIwDQYJKoZIhvcN
|
||||
AQEBBQADggIPADCCAgoCggIBANXyLXGYzQFwLGwjzkeuo/y41voDH1Y9J+ee4qJU
|
||||
OFuMKKXx5ai7n7dik4//J12OqJbbr416cFkKmcojwwbAdncXMV58EF82Bt8QRov0
|
||||
Vtoio/wxlyRlxDlVYwr56W+0EVP9Q+kzA/dTnMgOQYIeSix96CUQRy8XDu1YX3rk
|
||||
fiUkND9xxuQw8OXi3LXguv/lilLVC/lXiXwa0RWEgMZZU2S1/lAElAG3aZuuWULG
|
||||
K+PpKPuqkcptbUPCvNN1eUs9/D82aoFuqRCmpTC+7bUO+SJSggpUHcgTbXT9i6OO
|
||||
9eR0ijcaQjtb0Y6ro+Cv60YOnlGC8It3KoY2SxioyqdceRUohqs4T4hjBEckzz11
|
||||
AC0Pj0Gp4NJPcOY68EjhD5rvncn76RRr3z2XZpd+2Nz+Fldxk/aaejfdgqs9lo1g
|
||||
C+aP+nk9oqSpFAc+rpHsblLZehUur/FHhenn1pYWqkSJsAG0sFW4sDHATRIfva3c
|
||||
HNHB5kBzruGymywBGO0xOw7+s5XzPiNnbXT5FBY1rKG7RwlqdtDh6LWJRHmEblWV
|
||||
tPHNiY+rrStv0rN7Hk/YKcSXd5JiTjk3GXjO1YJJVEraEWHlxzdGy+xu/m0iJLed
|
||||
pxZwuxxdZ/Q2+Ht+X9pO2DsW8BQFbddCwbooxKygwSlmHCN1gRSWqWMZY5nzsxxY
|
||||
tic9AgMBAAGjgawwgakwDAYDVR0TAQH/BAIwADAdBgNVHQ4EFgQUyiXne0d3g9zN
|
||||
gjhCdl2d9ykxIfgwDgYDVR0PAQH/BAQDAgXgMBYGA1UdJQEB/wQMMAoGCCsGAQUF
|
||||
BwMCMDEGA1UdEQQqMCiGJnNwaWZmZTovL2Zvby5iYXIuY29tL2NsaWVudC93b3Jr
|
||||
bG9hZC8xMB8GA1UdIwQYMBaAFOr3a0MblN9W9Opu7VsDn3crpoDCMA0GCSqGSIb3
|
||||
DQEBCwUAA4ICAQB3pt3mLXDDcReko9eTFahkNyU2zGP7CSi1RcgfP1aJDLBTjePb
|
||||
JUhoY14tSpOGSliXWscXbNveW+Yk+tB411r8SJuXIkaYZM2BJQDWFzL7aLfAQSx5
|
||||
rf8tHVyKO89uBoQtgEnxZp9BFhBp/b2y5DLrZWjM6W9s21C9S9UIFjD8UwrKicNH
|
||||
HGxIC6AZ6yc0x2Nsq/KW1IZ6HDueZRB4tud75wwkPVpS5fb+XqIJEBP7lgYrJjGp
|
||||
aLLxV2vn1kX2/qbH31hhWVpNyPkpFsT+IbkPFLDyQoZKHbewD6M56+KBRTTENETQ
|
||||
hFLgJB0HiICJ2I6cqw1UbDJMJFkcnThsuI8Wg9dxZ+OffYeZ5bnFCVIg0WUi9oMK
|
||||
JDXZAqYDwBaQHyNszaYzZ5VE2Gd/K8PEDevW4RblI+vAOamIM5w1DjQHWf7n1byt
|
||||
nGwnxt4IQ5vwlrdX3FDcEkhacHdcniX/FTpYrfOistPh+QpBAvA92DG1CbAf2nKY
|
||||
yXLx+Ho7tUEBGioU4XvRHccwumfatf5z+JO/EvIi2yWd1tanl5J3o/sSs9ixJfx4
|
||||
aSuM+zAwf8EM+YGqYMCZ896+T6/r7NAg+YIDYu1K5b5QqYyPanqNqUf9VTR4oQ4v
|
||||
+jdb5PkujXbjENvkAhNbUyUbQJ+IU0KHm3/sdhRPN5tuc9C+BTSQvlmKkw==
|
||||
-----END CERTIFICATE-----
|
||||
52
testdata/x509/client_with_spiffe_key.pem
vendored
Normal file
52
testdata/x509/client_with_spiffe_key.pem
vendored
Normal file
@@ -0,0 +1,52 @@
|
||||
-----BEGIN PRIVATE KEY-----
|
||||
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
|
||||
eSCMKThlBQ57WubHTi2TbFBVKph/rP0=
|
||||
-----END PRIVATE KEY-----
|
||||
17
testdata/x509/client_with_spiffe_openssl.cnf
vendored
Normal file
17
testdata/x509/client_with_spiffe_openssl.cnf
vendored
Normal file
@@ -0,0 +1,17 @@
|
||||
[req]
|
||||
distinguished_name = req_distinguished_name
|
||||
attributes = req_attributes
|
||||
|
||||
[req_distinguished_name]
|
||||
|
||||
[req_attributes]
|
||||
|
||||
[test_client]
|
||||
basicConstraints = critical,CA:FALSE
|
||||
subjectKeyIdentifier = hash
|
||||
keyUsage = critical,nonRepudiation,digitalSignature,keyEncipherment
|
||||
extendedKeyUsage = critical,clientAuth
|
||||
subjectAltName = @alt_names
|
||||
|
||||
[alt_names]
|
||||
URI = spiffe://foo.bar.com/client/workload/1
|
||||
151
testdata/x509/create.sh
vendored
Executable file
151
testdata/x509/create.sh
vendored
Executable file
@@ -0,0 +1,151 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Create the server CA certs.
|
||||
openssl req -x509 \
|
||||
-newkey rsa:4096 \
|
||||
-nodes \
|
||||
-days 3650 \
|
||||
-keyout server_ca_key.pem \
|
||||
-out server_ca_cert.pem \
|
||||
-subj /C=US/ST=CA/L=SVL/O=gRPC/CN=test-server_ca/ \
|
||||
-config ./openssl.cnf \
|
||||
-extensions test_ca \
|
||||
-sha256
|
||||
|
||||
# Create the client CA certs.
|
||||
openssl req -x509 \
|
||||
-newkey rsa:4096 \
|
||||
-nodes \
|
||||
-days 3650 \
|
||||
-keyout client_ca_key.pem \
|
||||
-out client_ca_cert.pem \
|
||||
-subj /C=US/ST=CA/L=SVL/O=gRPC/CN=test-client_ca/ \
|
||||
-config ./openssl.cnf \
|
||||
-extensions test_ca \
|
||||
-sha256
|
||||
|
||||
# Generate two server certs.
|
||||
openssl genrsa -out server1_key.pem 4096
|
||||
openssl req -new \
|
||||
-key server1_key.pem \
|
||||
-days 3650 \
|
||||
-out server1_csr.pem \
|
||||
-subj /C=US/ST=CA/L=SVL/O=gRPC/CN=test-server1/ \
|
||||
-config ./openssl.cnf \
|
||||
-reqexts test_server
|
||||
openssl x509 -req \
|
||||
-in server1_csr.pem \
|
||||
-CAkey server_ca_key.pem \
|
||||
-CA server_ca_cert.pem \
|
||||
-days 3650 \
|
||||
-set_serial 1000 \
|
||||
-out server1_cert.pem \
|
||||
-extfile ./openssl.cnf \
|
||||
-extensions test_server \
|
||||
-sha256
|
||||
openssl verify -verbose -CAfile server_ca_cert.pem server1_cert.pem
|
||||
|
||||
openssl genrsa -out server2_key.pem 4096
|
||||
openssl req -new \
|
||||
-key server2_key.pem \
|
||||
-days 3650 \
|
||||
-out server2_csr.pem \
|
||||
-subj /C=US/ST=CA/L=SVL/O=gRPC/CN=test-server2/ \
|
||||
-config ./openssl.cnf \
|
||||
-reqexts test_server
|
||||
openssl x509 -req \
|
||||
-in server2_csr.pem \
|
||||
-CAkey server_ca_key.pem \
|
||||
-CA server_ca_cert.pem \
|
||||
-days 3650 \
|
||||
-set_serial 1000 \
|
||||
-out server2_cert.pem \
|
||||
-extfile ./openssl.cnf \
|
||||
-extensions test_server \
|
||||
-sha256
|
||||
openssl verify -verbose -CAfile server_ca_cert.pem server2_cert.pem
|
||||
|
||||
# Generate two client certs.
|
||||
openssl genrsa -out client1_key.pem 4096
|
||||
openssl req -new \
|
||||
-key client1_key.pem \
|
||||
-days 3650 \
|
||||
-out client1_csr.pem \
|
||||
-subj /C=US/ST=CA/L=SVL/O=gRPC/CN=test-client1/ \
|
||||
-config ./openssl.cnf \
|
||||
-reqexts test_client
|
||||
openssl x509 -req \
|
||||
-in client1_csr.pem \
|
||||
-CAkey client_ca_key.pem \
|
||||
-CA client_ca_cert.pem \
|
||||
-days 3650 \
|
||||
-set_serial 1000 \
|
||||
-out client1_cert.pem \
|
||||
-extfile ./openssl.cnf \
|
||||
-extensions test_client \
|
||||
-sha256
|
||||
openssl verify -verbose -CAfile client_ca_cert.pem client1_cert.pem
|
||||
|
||||
openssl genrsa -out client2_key.pem 4096
|
||||
openssl req -new \
|
||||
-key client2_key.pem \
|
||||
-days 3650 \
|
||||
-out client2_csr.pem \
|
||||
-subj /C=US/ST=CA/L=SVL/O=gRPC/CN=test-client2/ \
|
||||
-config ./openssl.cnf \
|
||||
-reqexts test_client
|
||||
openssl x509 -req \
|
||||
-in client2_csr.pem \
|
||||
-CAkey client_ca_key.pem \
|
||||
-CA client_ca_cert.pem \
|
||||
-days 3650 \
|
||||
-set_serial 1000 \
|
||||
-out client2_cert.pem \
|
||||
-extfile ./openssl.cnf \
|
||||
-extensions test_client \
|
||||
-sha256
|
||||
openssl verify -verbose -CAfile client_ca_cert.pem client2_cert.pem
|
||||
|
||||
# Generate a cert with SPIFFE ID.
|
||||
openssl req -x509 \
|
||||
-newkey rsa:4096 \
|
||||
-keyout spiffe_key.pem \
|
||||
-out spiffe_cert.pem \
|
||||
-nodes \
|
||||
-days 3650 \
|
||||
-subj /C=US/ST=CA/L=SVL/O=gRPC/CN=test-client1/ \
|
||||
-addext "subjectAltName = URI:spiffe://foo.bar.com/client/workload/1" \
|
||||
-sha256
|
||||
|
||||
# Generate a cert with SPIFFE ID and another SAN URI field(which doesn't meet SPIFFE specs).
|
||||
openssl req -x509 \
|
||||
-newkey rsa:4096 \
|
||||
-keyout multiple_uri_key.pem \
|
||||
-out multiple_uri_cert.pem \
|
||||
-nodes \
|
||||
-days 3650 \
|
||||
-subj /C=US/ST=CA/L=SVL/O=gRPC/CN=test-client1/ \
|
||||
-addext "subjectAltName = URI:spiffe://foo.bar.com/client/workload/1, URI:https://bar.baz.com/client" \
|
||||
-sha256
|
||||
|
||||
# Generate a cert with SPIFFE ID using client_with_spiffe_openssl.cnf
|
||||
openssl req -new \
|
||||
-key client_with_spiffe_key.pem \
|
||||
-out client_with_spiffe_csr.pem \
|
||||
-subj /C=US/ST=CA/L=SVL/O=gRPC/CN=test-client1/ \
|
||||
-config ./client_with_spiffe_openssl.cnf \
|
||||
-reqexts test_client
|
||||
openssl x509 -req \
|
||||
-in client_with_spiffe_csr.pem \
|
||||
-CAkey client_ca_key.pem \
|
||||
-CA client_ca_cert.pem \
|
||||
-days 3650 \
|
||||
-set_serial 1000 \
|
||||
-out client_with_spiffe_cert.pem \
|
||||
-extfile ./client_with_spiffe_openssl.cnf \
|
||||
-extensions test_client \
|
||||
-sha256
|
||||
openssl verify -verbose -CAfile client_with_spiffe_cert.pem
|
||||
|
||||
# Cleanup the CSRs.
|
||||
rm *_csr.pem
|
||||
34
testdata/x509/multiple_uri_cert.pem
vendored
Normal file
34
testdata/x509/multiple_uri_cert.pem
vendored
Normal file
@@ -0,0 +1,34 @@
|
||||
-----BEGIN CERTIFICATE-----
|
||||
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
|
||||
g58=
|
||||
-----END CERTIFICATE-----
|
||||
52
testdata/x509/multiple_uri_key.pem
vendored
Normal file
52
testdata/x509/multiple_uri_key.pem
vendored
Normal file
@@ -0,0 +1,52 @@
|
||||
-----BEGIN PRIVATE KEY-----
|
||||
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
|
||||
XHot6Ki4FhjC4ks5oT9m2q6TerUyIg8Z
|
||||
-----END PRIVATE KEY-----
|
||||
28
testdata/x509/openssl.cnf
vendored
Normal file
28
testdata/x509/openssl.cnf
vendored
Normal file
@@ -0,0 +1,28 @@
|
||||
[req]
|
||||
distinguished_name = req_distinguished_name
|
||||
attributes = req_attributes
|
||||
|
||||
[req_distinguished_name]
|
||||
|
||||
[req_attributes]
|
||||
|
||||
[test_ca]
|
||||
basicConstraints = critical,CA:TRUE
|
||||
subjectKeyIdentifier = hash
|
||||
authorityKeyIdentifier = keyid:always,issuer:always
|
||||
keyUsage = critical,keyCertSign
|
||||
|
||||
[test_server]
|
||||
basicConstraints = critical,CA:FALSE
|
||||
subjectKeyIdentifier = hash
|
||||
keyUsage = critical,digitalSignature,keyEncipherment,keyAgreement
|
||||
subjectAltName = @server_alt_names
|
||||
|
||||
[server_alt_names]
|
||||
DNS.1 = *.test.example.com
|
||||
|
||||
[test_client]
|
||||
basicConstraints = critical,CA:FALSE
|
||||
subjectKeyIdentifier = hash
|
||||
keyUsage = critical,nonRepudiation,digitalSignature,keyEncipherment
|
||||
extendedKeyUsage = critical,clientAuth
|
||||
32
testdata/x509/server1_cert.pem
vendored
Normal file
32
testdata/x509/server1_cert.pem
vendored
Normal file
@@ -0,0 +1,32 @@
|
||||
-----BEGIN CERTIFICATE-----
|
||||
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
|
||||
6zW3ZjSyDhQoFNR1
|
||||
-----END CERTIFICATE-----
|
||||
51
testdata/x509/server1_key.pem
vendored
Normal file
51
testdata/x509/server1_key.pem
vendored
Normal file
@@ -0,0 +1,51 @@
|
||||
-----BEGIN RSA PRIVATE KEY-----
|
||||
MIIJKQIBAAKCAgEAq2TjvY0Y9xCEMv1TrCxhYY5pyEDDldf9ruVQGH/KjBX6oP9J
|
||||
EJuyl4F+I10w2heH8s+DJ49aECGyRPZdpIlnlxgPpWkj1DnmUWcXNHtDVvDsEtoP
|
||||
arzcEmStRIbIOfEf4t1Bzb4aruuPU8ikgMFokO113xT1tyk/qsf5L1DIZDDk6eI8
|
||||
IKxSufHzKb/eUCEp2fY5Zcur4XVq+KbwA3l1CPR+8AjaQxB2zAqBjYxuzkT3fZY+
|
||||
2PAtt7zQDtG0c8iuq+x1Uihplq/uDeWIp6SKwG4kYsy1NfeEFy3lqfZ4q7dD3TVs
|
||||
RBd4xatOh6Rz4OdSyZDlPCRdq1aIT7+wxaDzQo3Ja3yu6UjgBMXyCjzsmXx27Jv+
|
||||
O9QteNNF0Np7rDfiA1mOr2NkfapJUiItXcnLQZp3JFUkNXITwvPwSIheRuGBuMvx
|
||||
+k0bxyM37nywrdM0O4/jzQD8+L/0jUGg9hNI8IPofUo9AnAXYZlWaCN6kXfbz9Ea
|
||||
OXRt9pjjnxFFhlp/J1uUGkiEOwsEFGYMyQWHhKCECA7ChAGOwRmkKYV5/PM+YnJt
|
||||
+WgF2YGKp+sRc/y3cniMHM/n6qFhlHEeKTSKCc5bDIO1BBJRrYlMmgT8RPxuQ7zx
|
||||
csvuGQCUX54tVXxqjihdGHnKN/Vzg+8n9l+vzSZglg686UDwx73/4DuNmvcCAwEA
|
||||
AQKCAgEAknXlUv42vjGD9pqZnMBT+uyaooANYoevBXx5ZGYXbHv/rwJXqnSSOXtz
|
||||
kb651zRSfQAswGp0eOKClwG8ZbTxK6FpBV2CO4G6ugcRQkyu76Vy5m0mzXxTxvf3
|
||||
RF60zSaqq8+MwsbXwHAVC3CielBMDcSNfDNKAdmiyUqXOoKaq1tI0j/8R6NaEgGa
|
||||
XCvUSr78J4CL7dwMpd4TqiXlZeKtSxi7PF0kPjjce2Hi8VV2/pbaspvoWrNrLd6Q
|
||||
IIm83VA5SzsFyk40ZIs0LvXdP/yQgP3d4/uwQkyfuLsEzaeL2JkDyg0z1kAEeU35
|
||||
DlpOl3q1OP+zlCAzVw3b7+ILqeXu2KOLPBCoRTo2wWNKutxcExmA0oIfMSgyb/P9
|
||||
36bNsdmT6b/6C9ZeJpsXZWedx7bmlEYg1patfk1CgD6WMynsl+fQ34F658v/JWzY
|
||||
b8JpqAG+2ov4j4EyRnwK267/6u/Yw4CvQw+8giKIDMv6W81b0GWpCBT7PkTKgUaW
|
||||
1Hq46z6xZ/NttiTU6qMsgUskFheU7IuO1KHl1kpLBERio9S87ZxkjLGfvxl4+sS7
|
||||
7OdgIVsM1d50RYy4pipNplQXw998kitPvNFcSOK5vnxqW5sz4SRzVAUl5sAqJ5GC
|
||||
0MPqq/I+H84BBQwwviQ9WsBuA1+YW6NxfY/mldAzAjg3/yUMwokCggEBANTyvgnw
|
||||
3SjBOKzg56QXRs1L2eqQzqtDzyOn2BXlMvT3bJFdqOHROhqqD0oSSbYZuCoJAJPh
|
||||
/W2bqengGSbsGwKKLHDN0yPWR12QVq3y9gbK/L6Qktjp2zDhHqNgr+4SSSl0gMMF
|
||||
bz6Nzn+0SO6C3m+M6hAgfsuizIhSCxBSSLccFSIT0ZiYRzq7rN8FlirpSIhd9cQ5
|
||||
B3q41lebUHpfciPr7K+psmCXO9NqtSvXtcMA/n7GyIGPBVDp8kMUwzuH9OVOkZkK
|
||||
Z1a42uuYKs/zgnbXV7kCZ6iBQkt7A2Scv/IIwdeaKxfTv87e8UqMkYPuf4wgqLq1
|
||||
USoMoHdz6JmQnw0CggEBAM4LfX4PIIGT+OQG5kn54ZcsqerPljPj19EBe8U3jyf3
|
||||
OzxDkSX0f2fmBVDjqj8QRO/PcXQbGUXWhJN1DvvuJITE93Y5Pj8DJX3CfLEnjE+b
|
||||
+sfuSxNawH9NwvwNt42NWDleMAgfMot3J+MwlXb31BWixCMj41Vl4VrkHEzX/M6R
|
||||
aAWcTqeY59KumtOvZO/4U98VvNyOipLHWcWZuwJLzeUjvyZ+hJQ6kBGJJYNezYm/
|
||||
qhHZ5k4bz8HAUSgih+Yb3DNmREk3YqIM4Skq843YdF8SEnFw/4b7PKMfmBXy3X72
|
||||
f51wdCiSkIm9o+/QLaduExQd7AhmFO8avZa5bRNNwRMCggEAKY/DBX+sOoMTw7IV
|
||||
o9IjMHhobL6ch5Kxf/0HUKauPl94IhsMlh5W39NnLobJOjBk4FdndHV8GAN0sz/Y
|
||||
yN72GpXLPKz/U5RD04ATWtn7qLG/iJYBAzMJY83cQ/jf/XA2NVAWvXl3D9dvgT83
|
||||
qM2ECnOPT1x4QthgYQ7aN/JHXO2vNjp2AvldlZoBkHmvqGpljLACAq06x3oB45Fd
|
||||
sLSmO1qVlGdjeDSsKYQ/HfJ4+DlecnHrulWmrPcsIGmR/TF427Rs+FiueJ+VorvN
|
||||
R074nKdE6MgOYTXxMXgt3lo1oFCTPLhLRtg+LGsY3vr2f7Bx1nCdXet7juBuBUJr
|
||||
GGXAlQKCAQEAxNVHMfijdgX022kX8A2Ni4x4Wj+q3rFHR3viUDnOQUC2TtDBRX/3
|
||||
gjrEU0zaI1qYcHs8h80nbIcMqY1HHjaWnltHh6IRq8KGu0fjNJ1yNc7tWLd08u1c
|
||||
PYD8xysXcVtYr50hx3B+KatP6IJOFpOUAIM4WdV74+XqzZhizKn88R0JQWrb3NF+
|
||||
jM6OS7EffPs+rDuo6w4kpSlZwiIk+4GNFNv8THrKjowPeyEIPCKBuZjmkB0YHQAG
|
||||
jbH6FZw/NPzidBu7GjKVv/cL1fcZKiVgrj2mbsai5MD3YWHaOQWEwTgcGzwFS4kQ
|
||||
GPWYOY0nP+4wvaQECtXyI6To/qbu42UBDwKCAQAd+/H4mepB8cgchZobFco6yTt3
|
||||
qgS1D9sOFgWYZLkxIuQTQH0C1cLHXIiqf0NrJAOBbaJ+vVuCrqv2MUASaxKoDK7h
|
||||
1W413yKIELWbTk7yEttw0M0T2PXmI5dNdKuw5I5hw+MmjLOFmyRzvX870ihDnM4F
|
||||
MISxV7K45t1EHjMsz66fMc8BIkophwK3/7FSok5XhYdLQdQS9Rshv0PXQmffkVUM
|
||||
UTlrwgH/3WGRhkFbmcdBMlawHQGvjiyZ+Gz+wF1uhzEYweT6wUfaHZePxX0hXqom
|
||||
WVS6ojlUji6NNJqFN8DB4q8V5/EShj4fpdjenDap5IxFgDSxgSCShR2FGTCW
|
||||
-----END RSA PRIVATE KEY-----
|
||||
32
testdata/x509/server2_cert.pem
vendored
Normal file
32
testdata/x509/server2_cert.pem
vendored
Normal file
@@ -0,0 +1,32 @@
|
||||
-----BEGIN CERTIFICATE-----
|
||||
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
|
||||
4ugkg86X1370IY84
|
||||
-----END CERTIFICATE-----
|
||||
51
testdata/x509/server2_key.pem
vendored
Normal file
51
testdata/x509/server2_key.pem
vendored
Normal file
@@ -0,0 +1,51 @@
|
||||
-----BEGIN RSA PRIVATE KEY-----
|
||||
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
|
||||
-----END RSA PRIVATE KEY-----
|
||||
35
testdata/x509/server_ca_cert.pem
vendored
Normal file
35
testdata/x509/server_ca_cert.pem
vendored
Normal file
@@ -0,0 +1,35 @@
|
||||
-----BEGIN CERTIFICATE-----
|
||||
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
|
||||
GPxPuBsN
|
||||
-----END CERTIFICATE-----
|
||||
52
testdata/x509/server_ca_key.pem
vendored
Normal file
52
testdata/x509/server_ca_key.pem
vendored
Normal file
@@ -0,0 +1,52 @@
|
||||
-----BEGIN PRIVATE KEY-----
|
||||
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
|
||||
JxRWkMCYLEbAZXWJXEKHyqaiIAOpkw==
|
||||
-----END PRIVATE KEY-----
|
||||
33
testdata/x509/spiffe_cert.pem
vendored
Normal file
33
testdata/x509/spiffe_cert.pem
vendored
Normal file
@@ -0,0 +1,33 @@
|
||||
-----BEGIN CERTIFICATE-----
|
||||
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
|
||||
GA91fn0891b5eEW8BJHXX0jri0aN8g==
|
||||
-----END CERTIFICATE-----
|
||||
52
testdata/x509/spiffe_key.pem
vendored
Normal file
52
testdata/x509/spiffe_key.pem
vendored
Normal file
@@ -0,0 +1,52 @@
|
||||
-----BEGIN PRIVATE KEY-----
|
||||
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
|
||||
Io+0lEzXxTbCbBP/iyizjo62XTgpdQ==
|
||||
-----END PRIVATE KEY-----
|
||||
Reference in New Issue
Block a user