From e37e9abe1dd6139f1b57ab3c8d924a306be5ee75 Mon Sep 17 00:00:00 2001 From: Simon Mayer Date: Fri, 10 Jul 2026 08:33:06 +0200 Subject: [PATCH] Add OAuth Provider OIDC --- docs/docs.json | 5 ++++ go/api/v1/common.pb.go | 9 +++++-- js/api/v1/common_pb.d.ts | 8 +++++- js/api/v1/common_pb.js | 8 +++++- js/api/v1/common_pb.ts | 9 ++++++- proto/api/v1/common.proto | 2 ++ python/metalstackcloud/api/v1/common_pb2.py | 28 ++++++++++---------- python/metalstackcloud/api/v1/common_pb2.pyi | 2 ++ 8 files changed, 52 insertions(+), 19 deletions(-) diff --git a/docs/docs.json b/docs/docs.json index 66f32466..98161cec 100644 --- a/docs/docs.json +++ b/docs/docs.json @@ -103,6 +103,11 @@ "name": "O_AUTH_PROVIDER_GOOGLE", "number": "3", "description": "O_AUTH_PROVIDER_GOOGLE specifies google as oauth login provider" + }, + { + "name": "O_AUTH_PROVIDER_OIDC", + "number": "4", + "description": "O_AUTH_PROVIDER_OIDC specifies a generic OIDC as oauth login provider" } ] }, diff --git a/go/api/v1/common.pb.go b/go/api/v1/common.pb.go index b2c2e4d3..1c5dba5a 100644 --- a/go/api/v1/common.pb.go +++ b/go/api/v1/common.pb.go @@ -34,6 +34,8 @@ const ( OAuthProvider_O_AUTH_PROVIDER_AZURE OAuthProvider = 2 // O_AUTH_PROVIDER_GOOGLE specifies google as oauth login provider OAuthProvider_O_AUTH_PROVIDER_GOOGLE OAuthProvider = 3 + // O_AUTH_PROVIDER_OIDC specifies a generic OIDC as oauth login provider + OAuthProvider_O_AUTH_PROVIDER_OIDC OAuthProvider = 4 ) // Enum value maps for OAuthProvider. @@ -43,12 +45,14 @@ var ( 1: "O_AUTH_PROVIDER_GITHUB", 2: "O_AUTH_PROVIDER_AZURE", 3: "O_AUTH_PROVIDER_GOOGLE", + 4: "O_AUTH_PROVIDER_OIDC", } OAuthProvider_value = map[string]int32{ "O_AUTH_PROVIDER_UNSPECIFIED": 0, "O_AUTH_PROVIDER_GITHUB": 1, "O_AUTH_PROVIDER_AZURE": 2, "O_AUTH_PROVIDER_GOOGLE": 3, + "O_AUTH_PROVIDER_OIDC": 4, } ) @@ -557,12 +561,13 @@ const file_api_v1_common_proto_rawDesc = "" + "\x04page\x18\x01 \x01(\x04H\x00R\x04page\x88\x01\x01\x12\x19\n" + "\x05count\x18\x02 \x01(\x04H\x01R\x05count\x88\x01\x01B\a\n" + "\x05_pageB\b\n" + - "\x06_count*\x83\x01\n" + + "\x06_count*\x9d\x01\n" + "\rOAuthProvider\x12\x1f\n" + "\x1bO_AUTH_PROVIDER_UNSPECIFIED\x10\x00\x12\x1a\n" + "\x16O_AUTH_PROVIDER_GITHUB\x10\x01\x12\x19\n" + "\x15O_AUTH_PROVIDER_AZURE\x10\x02\x12\x1a\n" + - "\x16O_AUTH_PROVIDER_GOOGLE\x10\x03*\x87\x01\n" + + "\x16O_AUTH_PROVIDER_GOOGLE\x10\x03\x12\x18\n" + + "\x14O_AUTH_PROVIDER_OIDC\x10\x04*\x87\x01\n" + "\n" + "TenantRole\x12\x1b\n" + "\x17TENANT_ROLE_UNSPECIFIED\x10\x00\x12\x15\n" + diff --git a/js/api/v1/common_pb.d.ts b/js/api/v1/common_pb.d.ts index 345d574a..4928bc8f 100644 --- a/js/api/v1/common_pb.d.ts +++ b/js/api/v1/common_pb.d.ts @@ -59,7 +59,13 @@ export declare enum OAuthProvider { * * @generated from enum value: O_AUTH_PROVIDER_GOOGLE = 3; */ - GOOGLE = 3 + GOOGLE = 3, + /** + * O_AUTH_PROVIDER_OIDC specifies a generic OIDC as oauth login provider + * + * @generated from enum value: O_AUTH_PROVIDER_OIDC = 4; + */ + OIDC = 4 } /** * Describes the enum api.v1.OAuthProvider. diff --git a/js/api/v1/common_pb.js b/js/api/v1/common_pb.js index 6c4819d9..a1c6ecea 100644 --- a/js/api/v1/common_pb.js +++ b/js/api/v1/common_pb.js @@ -6,7 +6,7 @@ import { file_google_protobuf_descriptor } from "@bufbuild/protobuf/wkt"; /** * Describes the file api/v1/common.proto. */ -export const file_api_v1_common = /*@__PURE__*/ fileDesc("ChNhcGkvdjEvY29tbW9uLnByb3RvEgZhcGkudjEiQgoGUGFnaW5nEhEKBHBhZ2UYASABKARIAIgBARISCgVjb3VudBgCIAEoBEgBiAEBQgcKBV9wYWdlQggKBl9jb3VudCqDAQoNT0F1dGhQcm92aWRlchIfChtPX0FVVEhfUFJPVklERVJfVU5TUEVDSUZJRUQQABIaChZPX0FVVEhfUFJPVklERVJfR0lUSFVCEAESGQoVT19BVVRIX1BST1ZJREVSX0FaVVJFEAISGgoWT19BVVRIX1BST1ZJREVSX0dPT0dMRRADKocBCgpUZW5hbnRSb2xlEhsKF1RFTkFOVF9ST0xFX1VOU1BFQ0lGSUVEEAASFQoRVEVOQU5UX1JPTEVfT1dORVIQARIWChJURU5BTlRfUk9MRV9FRElUT1IQAhIWChJURU5BTlRfUk9MRV9WSUVXRVIQAxIVChFURU5BTlRfUk9MRV9HVUVTVBAEKnUKC1Byb2plY3RSb2xlEhwKGFBST0pFQ1RfUk9MRV9VTlNQRUNJRklFRBAAEhYKElBST0pFQ1RfUk9MRV9PV05FUhABEhcKE1BST0pFQ1RfUk9MRV9FRElUT1IQAhIXChNQUk9KRUNUX1JPTEVfVklFV0VSEAMqVQoJQWRtaW5Sb2xlEhoKFkFETUlOX1JPTEVfVU5TUEVDSUZJRUQQABIVChFBRE1JTl9ST0xFX0VESVRPUhABEhUKEUFETUlOX1JPTEVfVklFV0VSEAIqVAoKVmlzaWJpbGl0eRIaChZWSVNJQklMSVRZX1VOU1BFQ0lGSUVEEAASFQoRVklTSUJJTElUWV9QVUJMSUMQARITCg9WSVNJQklMSVRZX1NFTEYQAypTCgpDaGFyZ2VhYmxlEhoKFkNIQVJHRUFCTEVfVU5TUEVDSUZJRUQQABITCg9DSEFSR0VBQkxFX1RSVUUQARIUChBDSEFSR0VBQkxFX0ZBTFNFEAIqUgoIQXVkaXRpbmcSGAoUQVVESVRJTkdfVU5TUEVDSUZJRUQQABIVChFBVURJVElOR19JTkNMVURFRBABEhUKEUFVRElUSU5HX0VYQ0xVREVEEAI6VwoMdGVuYW50X3JvbGVzEh4uZ29vZ2xlLnByb3RvYnVmLk1ldGhvZE9wdGlvbnMYuI4DIAMoDjISLmFwaS52MS5UZW5hbnRSb2xlUgt0ZW5hbnRSb2xlczpaCg1wcm9qZWN0X3JvbGVzEh4uZ29vZ2xlLnByb3RvYnVmLk1ldGhvZE9wdGlvbnMYuY4DIAMoDjITLmFwaS52MS5Qcm9qZWN0Um9sZVIMcHJvamVjdFJvbGVzOlQKC2FkbWluX3JvbGVzEh4uZ29vZ2xlLnByb3RvYnVmLk1ldGhvZE9wdGlvbnMYuo4DIAMoDjIRLmFwaS52MS5BZG1pblJvbGVSCmFkbWluUm9sZXM6VAoKdmlzaWJpbGl0eRIeLmdvb2dsZS5wcm90b2J1Zi5NZXRob2RPcHRpb25zGLuOAyABKA4yEi5hcGkudjEuVmlzaWJpbGl0eVIKdmlzaWJpbGl0eTpUCgpjaGFyZ2VhYmxlEh4uZ29vZ2xlLnByb3RvYnVmLk1ldGhvZE9wdGlvbnMYvI4DIAEoDjISLmFwaS52MS5DaGFyZ2VhYmxlUgpjaGFyZ2VhYmxlOk4KCGF1ZGl0aW5nEh4uZ29vZ2xlLnByb3RvYnVmLk1ldGhvZE9wdGlvbnMYvY4DIAEoDjIQLmFwaS52MS5BdWRpdGluZ1IIYXVkaXRpbmdChAEKCmNvbS5hcGkudjFCC0NvbW1vblByb3RvUAFaMGdpdGh1Yi5jb20vbWV0YWwtc3RhY2stY2xvdWQvYXBpL2dvL2FwaS92MTthcGl2MaICA0FYWKoCBkFwaS5WMcoCBkFwaVxWMeICEkFwaVxWMVxHUEJNZXRhZGF0YeoCB0FwaTo6VjFiBnByb3RvMw", [file_google_protobuf_descriptor]); +export const file_api_v1_common = /*@__PURE__*/ fileDesc("ChNhcGkvdjEvY29tbW9uLnByb3RvEgZhcGkudjEiQgoGUGFnaW5nEhEKBHBhZ2UYASABKARIAIgBARISCgVjb3VudBgCIAEoBEgBiAEBQgcKBV9wYWdlQggKBl9jb3VudCqdAQoNT0F1dGhQcm92aWRlchIfChtPX0FVVEhfUFJPVklERVJfVU5TUEVDSUZJRUQQABIaChZPX0FVVEhfUFJPVklERVJfR0lUSFVCEAESGQoVT19BVVRIX1BST1ZJREVSX0FaVVJFEAISGgoWT19BVVRIX1BST1ZJREVSX0dPT0dMRRADEhgKFE9fQVVUSF9QUk9WSURFUl9PSURDEAQqhwEKClRlbmFudFJvbGUSGwoXVEVOQU5UX1JPTEVfVU5TUEVDSUZJRUQQABIVChFURU5BTlRfUk9MRV9PV05FUhABEhYKElRFTkFOVF9ST0xFX0VESVRPUhACEhYKElRFTkFOVF9ST0xFX1ZJRVdFUhADEhUKEVRFTkFOVF9ST0xFX0dVRVNUEAQqdQoLUHJvamVjdFJvbGUSHAoYUFJPSkVDVF9ST0xFX1VOU1BFQ0lGSUVEEAASFgoSUFJPSkVDVF9ST0xFX09XTkVSEAESFwoTUFJPSkVDVF9ST0xFX0VESVRPUhACEhcKE1BST0pFQ1RfUk9MRV9WSUVXRVIQAypVCglBZG1pblJvbGUSGgoWQURNSU5fUk9MRV9VTlNQRUNJRklFRBAAEhUKEUFETUlOX1JPTEVfRURJVE9SEAESFQoRQURNSU5fUk9MRV9WSUVXRVIQAipUCgpWaXNpYmlsaXR5EhoKFlZJU0lCSUxJVFlfVU5TUEVDSUZJRUQQABIVChFWSVNJQklMSVRZX1BVQkxJQxABEhMKD1ZJU0lCSUxJVFlfU0VMRhADKlMKCkNoYXJnZWFibGUSGgoWQ0hBUkdFQUJMRV9VTlNQRUNJRklFRBAAEhMKD0NIQVJHRUFCTEVfVFJVRRABEhQKEENIQVJHRUFCTEVfRkFMU0UQAipSCghBdWRpdGluZxIYChRBVURJVElOR19VTlNQRUNJRklFRBAAEhUKEUFVRElUSU5HX0lOQ0xVREVEEAESFQoRQVVESVRJTkdfRVhDTFVERUQQAjpXCgx0ZW5hbnRfcm9sZXMSHi5nb29nbGUucHJvdG9idWYuTWV0aG9kT3B0aW9ucxi4jgMgAygOMhIuYXBpLnYxLlRlbmFudFJvbGVSC3RlbmFudFJvbGVzOloKDXByb2plY3Rfcm9sZXMSHi5nb29nbGUucHJvdG9idWYuTWV0aG9kT3B0aW9ucxi5jgMgAygOMhMuYXBpLnYxLlByb2plY3RSb2xlUgxwcm9qZWN0Um9sZXM6VAoLYWRtaW5fcm9sZXMSHi5nb29nbGUucHJvdG9idWYuTWV0aG9kT3B0aW9ucxi6jgMgAygOMhEuYXBpLnYxLkFkbWluUm9sZVIKYWRtaW5Sb2xlczpUCgp2aXNpYmlsaXR5Eh4uZ29vZ2xlLnByb3RvYnVmLk1ldGhvZE9wdGlvbnMYu44DIAEoDjISLmFwaS52MS5WaXNpYmlsaXR5Ugp2aXNpYmlsaXR5OlQKCmNoYXJnZWFibGUSHi5nb29nbGUucHJvdG9idWYuTWV0aG9kT3B0aW9ucxi8jgMgASgOMhIuYXBpLnYxLkNoYXJnZWFibGVSCmNoYXJnZWFibGU6TgoIYXVkaXRpbmcSHi5nb29nbGUucHJvdG9idWYuTWV0aG9kT3B0aW9ucxi9jgMgASgOMhAuYXBpLnYxLkF1ZGl0aW5nUghhdWRpdGluZ0KEAQoKY29tLmFwaS52MUILQ29tbW9uUHJvdG9QAVowZ2l0aHViLmNvbS9tZXRhbC1zdGFjay1jbG91ZC9hcGkvZ28vYXBpL3YxO2FwaXYxogIDQVhYqgIGQXBpLlYxygIGQXBpXFYx4gISQXBpXFYxXEdQQk1ldGFkYXRh6gIHQXBpOjpWMWIGcHJvdG8z", [file_google_protobuf_descriptor]); /** * Describes the message api.v1.Paging. * Use `create(PagingSchema)` to create a new message. @@ -43,6 +43,12 @@ export var OAuthProvider; * @generated from enum value: O_AUTH_PROVIDER_GOOGLE = 3; */ OAuthProvider[OAuthProvider["GOOGLE"] = 3] = "GOOGLE"; + /** + * O_AUTH_PROVIDER_OIDC specifies a generic OIDC as oauth login provider + * + * @generated from enum value: O_AUTH_PROVIDER_OIDC = 4; + */ + OAuthProvider[OAuthProvider["OIDC"] = 4] = "OIDC"; })(OAuthProvider || (OAuthProvider = {})); /** * Describes the enum api.v1.OAuthProvider. diff --git a/js/api/v1/common_pb.ts b/js/api/v1/common_pb.ts index 8ccf84b4..106384fd 100644 --- a/js/api/v1/common_pb.ts +++ b/js/api/v1/common_pb.ts @@ -12,7 +12,7 @@ import type { Message } from "@bufbuild/protobuf"; * Describes the file api/v1/common.proto. */ export const file_api_v1_common: GenFile = /*@__PURE__*/ - fileDesc("ChNhcGkvdjEvY29tbW9uLnByb3RvEgZhcGkudjEiQgoGUGFnaW5nEhEKBHBhZ2UYASABKARIAIgBARISCgVjb3VudBgCIAEoBEgBiAEBQgcKBV9wYWdlQggKBl9jb3VudCqDAQoNT0F1dGhQcm92aWRlchIfChtPX0FVVEhfUFJPVklERVJfVU5TUEVDSUZJRUQQABIaChZPX0FVVEhfUFJPVklERVJfR0lUSFVCEAESGQoVT19BVVRIX1BST1ZJREVSX0FaVVJFEAISGgoWT19BVVRIX1BST1ZJREVSX0dPT0dMRRADKocBCgpUZW5hbnRSb2xlEhsKF1RFTkFOVF9ST0xFX1VOU1BFQ0lGSUVEEAASFQoRVEVOQU5UX1JPTEVfT1dORVIQARIWChJURU5BTlRfUk9MRV9FRElUT1IQAhIWChJURU5BTlRfUk9MRV9WSUVXRVIQAxIVChFURU5BTlRfUk9MRV9HVUVTVBAEKnUKC1Byb2plY3RSb2xlEhwKGFBST0pFQ1RfUk9MRV9VTlNQRUNJRklFRBAAEhYKElBST0pFQ1RfUk9MRV9PV05FUhABEhcKE1BST0pFQ1RfUk9MRV9FRElUT1IQAhIXChNQUk9KRUNUX1JPTEVfVklFV0VSEAMqVQoJQWRtaW5Sb2xlEhoKFkFETUlOX1JPTEVfVU5TUEVDSUZJRUQQABIVChFBRE1JTl9ST0xFX0VESVRPUhABEhUKEUFETUlOX1JPTEVfVklFV0VSEAIqVAoKVmlzaWJpbGl0eRIaChZWSVNJQklMSVRZX1VOU1BFQ0lGSUVEEAASFQoRVklTSUJJTElUWV9QVUJMSUMQARITCg9WSVNJQklMSVRZX1NFTEYQAypTCgpDaGFyZ2VhYmxlEhoKFkNIQVJHRUFCTEVfVU5TUEVDSUZJRUQQABITCg9DSEFSR0VBQkxFX1RSVUUQARIUChBDSEFSR0VBQkxFX0ZBTFNFEAIqUgoIQXVkaXRpbmcSGAoUQVVESVRJTkdfVU5TUEVDSUZJRUQQABIVChFBVURJVElOR19JTkNMVURFRBABEhUKEUFVRElUSU5HX0VYQ0xVREVEEAI6VwoMdGVuYW50X3JvbGVzEh4uZ29vZ2xlLnByb3RvYnVmLk1ldGhvZE9wdGlvbnMYuI4DIAMoDjISLmFwaS52MS5UZW5hbnRSb2xlUgt0ZW5hbnRSb2xlczpaCg1wcm9qZWN0X3JvbGVzEh4uZ29vZ2xlLnByb3RvYnVmLk1ldGhvZE9wdGlvbnMYuY4DIAMoDjITLmFwaS52MS5Qcm9qZWN0Um9sZVIMcHJvamVjdFJvbGVzOlQKC2FkbWluX3JvbGVzEh4uZ29vZ2xlLnByb3RvYnVmLk1ldGhvZE9wdGlvbnMYuo4DIAMoDjIRLmFwaS52MS5BZG1pblJvbGVSCmFkbWluUm9sZXM6VAoKdmlzaWJpbGl0eRIeLmdvb2dsZS5wcm90b2J1Zi5NZXRob2RPcHRpb25zGLuOAyABKA4yEi5hcGkudjEuVmlzaWJpbGl0eVIKdmlzaWJpbGl0eTpUCgpjaGFyZ2VhYmxlEh4uZ29vZ2xlLnByb3RvYnVmLk1ldGhvZE9wdGlvbnMYvI4DIAEoDjISLmFwaS52MS5DaGFyZ2VhYmxlUgpjaGFyZ2VhYmxlOk4KCGF1ZGl0aW5nEh4uZ29vZ2xlLnByb3RvYnVmLk1ldGhvZE9wdGlvbnMYvY4DIAEoDjIQLmFwaS52MS5BdWRpdGluZ1IIYXVkaXRpbmdChAEKCmNvbS5hcGkudjFCC0NvbW1vblByb3RvUAFaMGdpdGh1Yi5jb20vbWV0YWwtc3RhY2stY2xvdWQvYXBpL2dvL2FwaS92MTthcGl2MaICA0FYWKoCBkFwaS5WMcoCBkFwaVxWMeICEkFwaVxWMVxHUEJNZXRhZGF0YeoCB0FwaTo6VjFiBnByb3RvMw", [file_google_protobuf_descriptor]); + fileDesc("ChNhcGkvdjEvY29tbW9uLnByb3RvEgZhcGkudjEiQgoGUGFnaW5nEhEKBHBhZ2UYASABKARIAIgBARISCgVjb3VudBgCIAEoBEgBiAEBQgcKBV9wYWdlQggKBl9jb3VudCqdAQoNT0F1dGhQcm92aWRlchIfChtPX0FVVEhfUFJPVklERVJfVU5TUEVDSUZJRUQQABIaChZPX0FVVEhfUFJPVklERVJfR0lUSFVCEAESGQoVT19BVVRIX1BST1ZJREVSX0FaVVJFEAISGgoWT19BVVRIX1BST1ZJREVSX0dPT0dMRRADEhgKFE9fQVVUSF9QUk9WSURFUl9PSURDEAQqhwEKClRlbmFudFJvbGUSGwoXVEVOQU5UX1JPTEVfVU5TUEVDSUZJRUQQABIVChFURU5BTlRfUk9MRV9PV05FUhABEhYKElRFTkFOVF9ST0xFX0VESVRPUhACEhYKElRFTkFOVF9ST0xFX1ZJRVdFUhADEhUKEVRFTkFOVF9ST0xFX0dVRVNUEAQqdQoLUHJvamVjdFJvbGUSHAoYUFJPSkVDVF9ST0xFX1VOU1BFQ0lGSUVEEAASFgoSUFJPSkVDVF9ST0xFX09XTkVSEAESFwoTUFJPSkVDVF9ST0xFX0VESVRPUhACEhcKE1BST0pFQ1RfUk9MRV9WSUVXRVIQAypVCglBZG1pblJvbGUSGgoWQURNSU5fUk9MRV9VTlNQRUNJRklFRBAAEhUKEUFETUlOX1JPTEVfRURJVE9SEAESFQoRQURNSU5fUk9MRV9WSUVXRVIQAipUCgpWaXNpYmlsaXR5EhoKFlZJU0lCSUxJVFlfVU5TUEVDSUZJRUQQABIVChFWSVNJQklMSVRZX1BVQkxJQxABEhMKD1ZJU0lCSUxJVFlfU0VMRhADKlMKCkNoYXJnZWFibGUSGgoWQ0hBUkdFQUJMRV9VTlNQRUNJRklFRBAAEhMKD0NIQVJHRUFCTEVfVFJVRRABEhQKEENIQVJHRUFCTEVfRkFMU0UQAipSCghBdWRpdGluZxIYChRBVURJVElOR19VTlNQRUNJRklFRBAAEhUKEUFVRElUSU5HX0lOQ0xVREVEEAESFQoRQVVESVRJTkdfRVhDTFVERUQQAjpXCgx0ZW5hbnRfcm9sZXMSHi5nb29nbGUucHJvdG9idWYuTWV0aG9kT3B0aW9ucxi4jgMgAygOMhIuYXBpLnYxLlRlbmFudFJvbGVSC3RlbmFudFJvbGVzOloKDXByb2plY3Rfcm9sZXMSHi5nb29nbGUucHJvdG9idWYuTWV0aG9kT3B0aW9ucxi5jgMgAygOMhMuYXBpLnYxLlByb2plY3RSb2xlUgxwcm9qZWN0Um9sZXM6VAoLYWRtaW5fcm9sZXMSHi5nb29nbGUucHJvdG9idWYuTWV0aG9kT3B0aW9ucxi6jgMgAygOMhEuYXBpLnYxLkFkbWluUm9sZVIKYWRtaW5Sb2xlczpUCgp2aXNpYmlsaXR5Eh4uZ29vZ2xlLnByb3RvYnVmLk1ldGhvZE9wdGlvbnMYu44DIAEoDjISLmFwaS52MS5WaXNpYmlsaXR5Ugp2aXNpYmlsaXR5OlQKCmNoYXJnZWFibGUSHi5nb29nbGUucHJvdG9idWYuTWV0aG9kT3B0aW9ucxi8jgMgASgOMhIuYXBpLnYxLkNoYXJnZWFibGVSCmNoYXJnZWFibGU6TgoIYXVkaXRpbmcSHi5nb29nbGUucHJvdG9idWYuTWV0aG9kT3B0aW9ucxi9jgMgASgOMhAuYXBpLnYxLkF1ZGl0aW5nUghhdWRpdGluZ0KEAQoKY29tLmFwaS52MUILQ29tbW9uUHJvdG9QAVowZ2l0aHViLmNvbS9tZXRhbC1zdGFjay1jbG91ZC9hcGkvZ28vYXBpL3YxO2FwaXYxogIDQVhYqgIGQXBpLlYxygIGQXBpXFYx4gISQXBpXFYxXEdQQk1ldGFkYXRh6gIHQXBpOjpWMWIGcHJvdG8z", [file_google_protobuf_descriptor]); /** * Paging defines paging for methods with a lot of results @@ -76,6 +76,13 @@ export enum OAuthProvider { * @generated from enum value: O_AUTH_PROVIDER_GOOGLE = 3; */ GOOGLE = 3, + + /** + * O_AUTH_PROVIDER_OIDC specifies a generic OIDC as oauth login provider + * + * @generated from enum value: O_AUTH_PROVIDER_OIDC = 4; + */ + OIDC = 4, } /** diff --git a/proto/api/v1/common.proto b/proto/api/v1/common.proto index 319f2c4d..d80abea1 100644 --- a/proto/api/v1/common.proto +++ b/proto/api/v1/common.proto @@ -14,6 +14,8 @@ enum OAuthProvider { O_AUTH_PROVIDER_AZURE = 2; // O_AUTH_PROVIDER_GOOGLE specifies google as oauth login provider O_AUTH_PROVIDER_GOOGLE = 3; + // O_AUTH_PROVIDER_OIDC specifies a generic OIDC as oauth login provider + O_AUTH_PROVIDER_OIDC = 4; } // TenantRole specifies what role a logged in user needs to call this tenant scoped service diff --git a/python/metalstackcloud/api/v1/common_pb2.py b/python/metalstackcloud/api/v1/common_pb2.py index b62b9ff8..b7c3fbf4 100644 --- a/python/metalstackcloud/api/v1/common_pb2.py +++ b/python/metalstackcloud/api/v1/common_pb2.py @@ -25,7 +25,7 @@ from google.protobuf import descriptor_pb2 as google_dot_protobuf_dot_descriptor__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x13\x61pi/v1/common.proto\x12\x06\x61pi.v1\x1a google/protobuf/descriptor.proto\"O\n\x06Paging\x12\x17\n\x04page\x18\x01 \x01(\x04H\x00R\x04page\x88\x01\x01\x12\x19\n\x05\x63ount\x18\x02 \x01(\x04H\x01R\x05\x63ount\x88\x01\x01\x42\x07\n\x05_pageB\x08\n\x06_count*\x83\x01\n\rOAuthProvider\x12\x1f\n\x1bO_AUTH_PROVIDER_UNSPECIFIED\x10\x00\x12\x1a\n\x16O_AUTH_PROVIDER_GITHUB\x10\x01\x12\x19\n\x15O_AUTH_PROVIDER_AZURE\x10\x02\x12\x1a\n\x16O_AUTH_PROVIDER_GOOGLE\x10\x03*\x87\x01\n\nTenantRole\x12\x1b\n\x17TENANT_ROLE_UNSPECIFIED\x10\x00\x12\x15\n\x11TENANT_ROLE_OWNER\x10\x01\x12\x16\n\x12TENANT_ROLE_EDITOR\x10\x02\x12\x16\n\x12TENANT_ROLE_VIEWER\x10\x03\x12\x15\n\x11TENANT_ROLE_GUEST\x10\x04*u\n\x0bProjectRole\x12\x1c\n\x18PROJECT_ROLE_UNSPECIFIED\x10\x00\x12\x16\n\x12PROJECT_ROLE_OWNER\x10\x01\x12\x17\n\x13PROJECT_ROLE_EDITOR\x10\x02\x12\x17\n\x13PROJECT_ROLE_VIEWER\x10\x03*U\n\tAdminRole\x12\x1a\n\x16\x41\x44MIN_ROLE_UNSPECIFIED\x10\x00\x12\x15\n\x11\x41\x44MIN_ROLE_EDITOR\x10\x01\x12\x15\n\x11\x41\x44MIN_ROLE_VIEWER\x10\x02*T\n\nVisibility\x12\x1a\n\x16VISIBILITY_UNSPECIFIED\x10\x00\x12\x15\n\x11VISIBILITY_PUBLIC\x10\x01\x12\x13\n\x0fVISIBILITY_SELF\x10\x03*S\n\nChargeable\x12\x1a\n\x16\x43HARGEABLE_UNSPECIFIED\x10\x00\x12\x13\n\x0f\x43HARGEABLE_TRUE\x10\x01\x12\x14\n\x10\x43HARGEABLE_FALSE\x10\x02*R\n\x08\x41uditing\x12\x18\n\x14\x41UDITING_UNSPECIFIED\x10\x00\x12\x15\n\x11\x41UDITING_INCLUDED\x10\x01\x12\x15\n\x11\x41UDITING_EXCLUDED\x10\x02:W\n\x0ctenant_roles\x12\x1e.google.protobuf.MethodOptions\x18\xb8\x8e\x03 \x03(\x0e\x32\x12.api.v1.TenantRoleR\x0btenantRoles:Z\n\rproject_roles\x12\x1e.google.protobuf.MethodOptions\x18\xb9\x8e\x03 \x03(\x0e\x32\x13.api.v1.ProjectRoleR\x0cprojectRoles:T\n\x0b\x61\x64min_roles\x12\x1e.google.protobuf.MethodOptions\x18\xba\x8e\x03 \x03(\x0e\x32\x11.api.v1.AdminRoleR\nadminRoles:T\n\nvisibility\x12\x1e.google.protobuf.MethodOptions\x18\xbb\x8e\x03 \x01(\x0e\x32\x12.api.v1.VisibilityR\nvisibility:T\n\nchargeable\x12\x1e.google.protobuf.MethodOptions\x18\xbc\x8e\x03 \x01(\x0e\x32\x12.api.v1.ChargeableR\nchargeable:N\n\x08\x61uditing\x12\x1e.google.protobuf.MethodOptions\x18\xbd\x8e\x03 \x01(\x0e\x32\x10.api.v1.AuditingR\x08\x61uditingB\x84\x01\n\ncom.api.v1B\x0b\x43ommonProtoP\x01Z0github.com/metal-stack-cloud/api/go/api/v1;apiv1\xa2\x02\x03\x41XX\xaa\x02\x06\x41pi.V1\xca\x02\x06\x41pi\\V1\xe2\x02\x12\x41pi\\V1\\GPBMetadata\xea\x02\x07\x41pi::V1b\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x13\x61pi/v1/common.proto\x12\x06\x61pi.v1\x1a google/protobuf/descriptor.proto\"O\n\x06Paging\x12\x17\n\x04page\x18\x01 \x01(\x04H\x00R\x04page\x88\x01\x01\x12\x19\n\x05\x63ount\x18\x02 \x01(\x04H\x01R\x05\x63ount\x88\x01\x01\x42\x07\n\x05_pageB\x08\n\x06_count*\x9d\x01\n\rOAuthProvider\x12\x1f\n\x1bO_AUTH_PROVIDER_UNSPECIFIED\x10\x00\x12\x1a\n\x16O_AUTH_PROVIDER_GITHUB\x10\x01\x12\x19\n\x15O_AUTH_PROVIDER_AZURE\x10\x02\x12\x1a\n\x16O_AUTH_PROVIDER_GOOGLE\x10\x03\x12\x18\n\x14O_AUTH_PROVIDER_OIDC\x10\x04*\x87\x01\n\nTenantRole\x12\x1b\n\x17TENANT_ROLE_UNSPECIFIED\x10\x00\x12\x15\n\x11TENANT_ROLE_OWNER\x10\x01\x12\x16\n\x12TENANT_ROLE_EDITOR\x10\x02\x12\x16\n\x12TENANT_ROLE_VIEWER\x10\x03\x12\x15\n\x11TENANT_ROLE_GUEST\x10\x04*u\n\x0bProjectRole\x12\x1c\n\x18PROJECT_ROLE_UNSPECIFIED\x10\x00\x12\x16\n\x12PROJECT_ROLE_OWNER\x10\x01\x12\x17\n\x13PROJECT_ROLE_EDITOR\x10\x02\x12\x17\n\x13PROJECT_ROLE_VIEWER\x10\x03*U\n\tAdminRole\x12\x1a\n\x16\x41\x44MIN_ROLE_UNSPECIFIED\x10\x00\x12\x15\n\x11\x41\x44MIN_ROLE_EDITOR\x10\x01\x12\x15\n\x11\x41\x44MIN_ROLE_VIEWER\x10\x02*T\n\nVisibility\x12\x1a\n\x16VISIBILITY_UNSPECIFIED\x10\x00\x12\x15\n\x11VISIBILITY_PUBLIC\x10\x01\x12\x13\n\x0fVISIBILITY_SELF\x10\x03*S\n\nChargeable\x12\x1a\n\x16\x43HARGEABLE_UNSPECIFIED\x10\x00\x12\x13\n\x0f\x43HARGEABLE_TRUE\x10\x01\x12\x14\n\x10\x43HARGEABLE_FALSE\x10\x02*R\n\x08\x41uditing\x12\x18\n\x14\x41UDITING_UNSPECIFIED\x10\x00\x12\x15\n\x11\x41UDITING_INCLUDED\x10\x01\x12\x15\n\x11\x41UDITING_EXCLUDED\x10\x02:W\n\x0ctenant_roles\x12\x1e.google.protobuf.MethodOptions\x18\xb8\x8e\x03 \x03(\x0e\x32\x12.api.v1.TenantRoleR\x0btenantRoles:Z\n\rproject_roles\x12\x1e.google.protobuf.MethodOptions\x18\xb9\x8e\x03 \x03(\x0e\x32\x13.api.v1.ProjectRoleR\x0cprojectRoles:T\n\x0b\x61\x64min_roles\x12\x1e.google.protobuf.MethodOptions\x18\xba\x8e\x03 \x03(\x0e\x32\x11.api.v1.AdminRoleR\nadminRoles:T\n\nvisibility\x12\x1e.google.protobuf.MethodOptions\x18\xbb\x8e\x03 \x01(\x0e\x32\x12.api.v1.VisibilityR\nvisibility:T\n\nchargeable\x12\x1e.google.protobuf.MethodOptions\x18\xbc\x8e\x03 \x01(\x0e\x32\x12.api.v1.ChargeableR\nchargeable:N\n\x08\x61uditing\x12\x1e.google.protobuf.MethodOptions\x18\xbd\x8e\x03 \x01(\x0e\x32\x10.api.v1.AuditingR\x08\x61uditingB\x84\x01\n\ncom.api.v1B\x0b\x43ommonProtoP\x01Z0github.com/metal-stack-cloud/api/go/api/v1;apiv1\xa2\x02\x03\x41XX\xaa\x02\x06\x41pi.V1\xca\x02\x06\x41pi\\V1\xe2\x02\x12\x41pi\\V1\\GPBMetadata\xea\x02\x07\x41pi::V1b\x06proto3') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) @@ -34,19 +34,19 @@ _globals['DESCRIPTOR']._loaded_options = None _globals['DESCRIPTOR']._serialized_options = b'\n\ncom.api.v1B\013CommonProtoP\001Z0github.com/metal-stack-cloud/api/go/api/v1;apiv1\242\002\003AXX\252\002\006Api.V1\312\002\006Api\\V1\342\002\022Api\\V1\\GPBMetadata\352\002\007Api::V1' _globals['_OAUTHPROVIDER']._serialized_start=147 - _globals['_OAUTHPROVIDER']._serialized_end=278 - _globals['_TENANTROLE']._serialized_start=281 - _globals['_TENANTROLE']._serialized_end=416 - _globals['_PROJECTROLE']._serialized_start=418 - _globals['_PROJECTROLE']._serialized_end=535 - _globals['_ADMINROLE']._serialized_start=537 - _globals['_ADMINROLE']._serialized_end=622 - _globals['_VISIBILITY']._serialized_start=624 - _globals['_VISIBILITY']._serialized_end=708 - _globals['_CHARGEABLE']._serialized_start=710 - _globals['_CHARGEABLE']._serialized_end=793 - _globals['_AUDITING']._serialized_start=795 - _globals['_AUDITING']._serialized_end=877 + _globals['_OAUTHPROVIDER']._serialized_end=304 + _globals['_TENANTROLE']._serialized_start=307 + _globals['_TENANTROLE']._serialized_end=442 + _globals['_PROJECTROLE']._serialized_start=444 + _globals['_PROJECTROLE']._serialized_end=561 + _globals['_ADMINROLE']._serialized_start=563 + _globals['_ADMINROLE']._serialized_end=648 + _globals['_VISIBILITY']._serialized_start=650 + _globals['_VISIBILITY']._serialized_end=734 + _globals['_CHARGEABLE']._serialized_start=736 + _globals['_CHARGEABLE']._serialized_end=819 + _globals['_AUDITING']._serialized_start=821 + _globals['_AUDITING']._serialized_end=903 _globals['_PAGING']._serialized_start=65 _globals['_PAGING']._serialized_end=144 # @@protoc_insertion_point(module_scope) diff --git a/python/metalstackcloud/api/v1/common_pb2.pyi b/python/metalstackcloud/api/v1/common_pb2.pyi index eab9ce02..cd971e32 100644 --- a/python/metalstackcloud/api/v1/common_pb2.pyi +++ b/python/metalstackcloud/api/v1/common_pb2.pyi @@ -12,6 +12,7 @@ class OAuthProvider(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): O_AUTH_PROVIDER_GITHUB: _ClassVar[OAuthProvider] O_AUTH_PROVIDER_AZURE: _ClassVar[OAuthProvider] O_AUTH_PROVIDER_GOOGLE: _ClassVar[OAuthProvider] + O_AUTH_PROVIDER_OIDC: _ClassVar[OAuthProvider] class TenantRole(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): __slots__ = () @@ -55,6 +56,7 @@ O_AUTH_PROVIDER_UNSPECIFIED: OAuthProvider O_AUTH_PROVIDER_GITHUB: OAuthProvider O_AUTH_PROVIDER_AZURE: OAuthProvider O_AUTH_PROVIDER_GOOGLE: OAuthProvider +O_AUTH_PROVIDER_OIDC: OAuthProvider TENANT_ROLE_UNSPECIFIED: TenantRole TENANT_ROLE_OWNER: TenantRole TENANT_ROLE_EDITOR: TenantRole