Merge pull request #7 from owncloud/oidc-standard-claims

Oidc Standard Claims as Account Data
This commit is contained in:
Alex Unger
2020-02-13 15:26:47 +01:00
committed by GitHub
11 changed files with 489 additions and 72 deletions
+6
View File
@@ -4,6 +4,8 @@ IMPORT := github.com/owncloud/$(NAME)
BIN := bin
DIST := dist
HUGO := hugo
PROTO_VERSION := v0
PROTO_SRC := pkg/proto/$(PROTO_VERSION)/*.proto
ifeq ($(OS), Windows_NT)
EXECUTABLE := $(NAME).exe
@@ -153,3 +155,7 @@ docs: docs-copy docs-build
.PHONY: watch
watch:
go run github.com/cespare/reflex -c reflex.conf
.PHONY: pb
pb:
protoc --go_out=. --micro_out=. $(PROTO_SRC)
+3 -18
View File
@@ -3,28 +3,13 @@ module github.com/owncloud/ocis-accounts
go 1.13
require (
github.com/coreos/etcd v3.3.18+incompatible // indirect
github.com/golang/groupcache v0.0.0-20200121045136-8c9f03a8e57e // indirect
github.com/golang/protobuf v1.3.2
github.com/grpc-ecosystem/grpc-gateway v1.9.4 // indirect
github.com/json-iterator/go v1.1.9 // indirect
github.com/lucas-clemente/quic-go v0.14.1 // indirect
github.com/micro/cli/v2 v2.1.1
github.com/micro/go-micro v1.18.0
github.com/miekg/dns v1.1.27 // indirect
github.com/nats-io/nats-server/v2 v2.1.2 // indirect
github.com/micro/go-micro/v2 v2.0.0
github.com/oklog/run v1.1.0
github.com/owncloud/ocis-hello v0.0.0-20200114105804-61741477dcec
github.com/owncloud/ocis-pkg v1.3.0
github.com/pkg/errors v0.9.1 // indirect
github.com/restic/calens v0.2.0 // indirect
github.com/tmc/grpc-websocket-proxy v0.0.0-20200122045848-3419fae592fc // indirect
go.uber.org/zap v1.13.0 // indirect
golang.org/x/crypto v0.0.0-20200117160349-530e935923ad // indirect
golang.org/x/lint v0.0.0-20191125180803-fdd1cda4f05f // indirect
golang.org/x/net v0.0.0-20200114155413-6afb5195e5aa // indirect
golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e // indirect
golang.org/x/tools v0.0.0-20191216173652-a0e659d51361 // indirect
google.golang.org/genproto v0.0.0-20191216164720-4f79533eabd1 // indirect
google.golang.org/grpc v1.26.0 // indirect
github.com/owncloud/ocis-pkg/v2 v2.0.1
github.com/restic/calens v0.2.0
)
+36
View File
@@ -5,9 +5,12 @@ cloud.google.com/go v0.39.0/go.mod h1:rVLT6fkc8chs9sfPtFc1SBH6em7n+ZoXaG+87tDISt
cloud.google.com/go v0.44.1/go.mod h1:iSa0KzasP4Uvy3f1mN/7PiObzGgflwredwwASm/v6AU=
cloud.google.com/go v0.44.2/go.mod h1:60680Gw3Yr4ikxnPRS/oxxkBccT6SA1yMk63TGekxKY=
cloud.google.com/go v0.45.1/go.mod h1:RpBamKRgapWJb87xiFSdk4g1CME7QZg3uwTez+TSTjc=
cloud.google.com/go v0.46.3/go.mod h1:a6bKKbmY7er1mI7TEI4lsAkts/mkhTSZK8w33B4RAg0=
cloud.google.com/go v0.50.0/go.mod h1:r9sluTvynVuxRIOHXQEHMFffphuXHOMZMycpNR5e6To=
cloud.google.com/go/bigquery v1.0.1/go.mod h1:i/xbL2UlR5RvWAURpBYZTtm/cXjCha9lbfbpx4poX+o=
cloud.google.com/go/datastore v1.0.0/go.mod h1:LXYbyblFSglQ5pkeyhO+Qmw7ukd3C+pD7TKLgZqpHYE=
cloud.google.com/go/pubsub v1.0.1/go.mod h1:R0Gpsv3s54REJCy4fxDixWD93lHJMoZTyQ2kNxGRt3I=
cloud.google.com/go/storage v1.0.0/go.mod h1:IhtSnM/ZTZV8YYJWCY8RULGVqBDmpoyjwiyrjsg+URw=
contrib.go.opencensus.io/exporter/aws v0.0.0-20181029163544-2befc13012d0/go.mod h1:uu1P0UCM/6RbsMrgPa98ll8ZcHM858i/AD06a9aLRCA=
contrib.go.opencensus.io/exporter/jaeger v0.2.0 h1:nhTv/Ry3lGmqbJ/JGvCjWxBl5ozRfqo86Ngz59UAlfk=
contrib.go.opencensus.io/exporter/jaeger v0.2.0/go.mod h1:ukdzwIYYHgZ7QYtwVFQUjiT28BJHiMhTERo32s6qVgM=
@@ -19,6 +22,7 @@ contrib.go.opencensus.io/exporter/zipkin v0.1.1 h1:PR+1zWqY8ceXs1qDQQIlgXe+sdiwC
contrib.go.opencensus.io/exporter/zipkin v0.1.1/go.mod h1:GMvdSl3eJ2gapOaLKzTKE3qDgUkJ86k9k3yY2eqwkzc=
contrib.go.opencensus.io/integrations/ocsql v0.1.4/go.mod h1:8DsSdjz3F+APR+0z0WkU1aRorQCFfRxvqjUUPMbF3fE=
contrib.go.opencensus.io/resource v0.1.1/go.mod h1:F361eGI91LCmW1I/Saf+rX0+OFcigGlFvXwEGEnkRLA=
dmitri.shuralyov.com/gpu/mtl v0.0.0-20190408044501-666a987793e9/go.mod h1:H6x//7gZCb22OMCxBHrMx7a5I7Hp++hsVxbQ4BYO7hU=
github.com/Azure/azure-amqp-common-go/v2 v2.1.0/go.mod h1:R8rea+gJRuJR6QxTir/XuEd+YuKoUiazDC/N96FiDEU=
github.com/Azure/azure-pipeline-go v0.1.8/go.mod h1:XA1kFWRVhSK+KNFiOhfv83Fv8L9achrP7OxIzeTn1Yg=
github.com/Azure/azure-pipeline-go v0.1.9/go.mod h1:XA1kFWRVhSK+KNFiOhfv83Fv8L9achrP7OxIzeTn1Yg=
@@ -120,6 +124,7 @@ github.com/bradfitz/iter v0.0.0-20140124041915-454541ec3da2/go.mod h1:PyRFw1Lt2w
github.com/bradfitz/iter v0.0.0-20190303215204-33e6a9893b0c/go.mod h1:PyRFw1Lt2wKX4ZVSQ2mk+PeDa1rxyObEDlApuIsUKuo=
github.com/bwmarrin/discordgo v0.19.0/go.mod h1:O9S4p+ofTFwB02em7jkpkV8M3R0/PUVOwN61zSZ0r4Q=
github.com/bwmarrin/discordgo v0.20.1/go.mod h1:O9S4p+ofTFwB02em7jkpkV8M3R0/PUVOwN61zSZ0r4Q=
github.com/bwmarrin/discordgo v0.20.2/go.mod h1:O9S4p+ofTFwB02em7jkpkV8M3R0/PUVOwN61zSZ0r4Q=
github.com/cenkalti/backoff v2.2.1+incompatible/go.mod h1:90ReRw6GdpyfrHakVjL/QHaoyV4aDUVVkXQJJJ3NXXM=
github.com/cenkalti/backoff/v3 v3.0.0/go.mod h1:cIeZDE3IrqwwJl6VUwCN6trj1oXrTS4rc0ij+ULvLYs=
github.com/census-instrumentation/opencensus-proto v0.2.0/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU=
@@ -221,12 +226,14 @@ github.com/gliderlabs/ssh v0.2.2/go.mod h1:U7qILu1NlMHj9FlMhZLlkCdDnU1DBEAqr0aev
github.com/glycerine/go-unsnap-stream v0.0.0-20180323001048-9f0cb55181dd/go.mod h1:/20jfyN9Y5QPEAprSgKAUr+glWDY39ZiUEAYOEv5dsE=
github.com/glycerine/goconvey v0.0.0-20180728074245-46e3a41ad493/go.mod h1:Ogl1Tioa0aV7gstGFO7KhffUsb9M4ydbEbbxpcEDc24=
github.com/go-acme/lego/v3 v3.1.0/go.mod h1:074uqt+JS6plx+c9Xaiz6+L+GBb+7itGtzfcDM2AhEE=
github.com/go-acme/lego/v3 v3.3.0/go.mod h1:iGSY2vQrvQs3WezicSB/oVbO2eCrD88dpWPwb1qLqu0=
github.com/go-chi/chi v4.0.2+incompatible h1:maB6vn6FqCxrpz4FqWdh4+lwpyZIQS7YEAUcHlgXVRs=
github.com/go-chi/chi v4.0.2+incompatible/go.mod h1:eB3wogJHnLi3x/kFX2A+IbTBlXxmMeXJVKy9tTv1XzQ=
github.com/go-chi/render v1.0.1 h1:4/5tis2cKaNdnv9zFLfXzcquC9HbeZgCnxGnKrltBS8=
github.com/go-chi/render v1.0.1/go.mod h1:pq4Rr7HbnsdaeHagklXub+p6Wd16Af5l9koip1OvJns=
github.com/go-cmd/cmd v1.0.5/go.mod h1:y8q8qlK5wQibcw63djSl/ntiHUHXHGdCkPk0j4QeW4s=
github.com/go-errors/errors v1.0.1/go.mod h1:f4zRHt4oKfwPJE5k8C9vpYG+aDHdBFUsgrm6/TyX73Q=
github.com/go-gl/glfw/v3.3/glfw v0.0.0-20191125211704-12ad95a8df72/go.mod h1:tQ2UAYgL5IevRw8kRxooKSPJfGvJ9fJQFa0TUsXzTg8=
github.com/go-ini/ini v1.25.4/go.mod h1:ByCAeIL28uOIIG0E3PJtZPDL8WnHpFKFOtgjp+3Ies8=
github.com/go-ini/ini v1.44.0/go.mod h1:ByCAeIL28uOIIG0E3PJtZPDL8WnHpFKFOtgjp+3Ies8=
github.com/go-kit/kit v0.8.0/go.mod h1:xBxKIO96dXMWWy0MnWVtmwkA9/13aqxPnvrjFYMA2as=
@@ -244,12 +251,14 @@ github.com/go-openapi/swag v0.0.0-20160704191624-1d0bd113de87/go.mod h1:DXUve3Dp
github.com/go-playground/locales v0.12.1/go.mod h1:IUMDtCfWo/w/mtMfIE/IG2K+Ey3ygWanZIBtBW0W2TM=
github.com/go-playground/locales v0.13.0/go.mod h1:taPMhCMXrRLJO55olJkUXHZBHCxTMfnGwq/HNwmWNS8=
github.com/go-playground/universal-translator v0.16.0/go.mod h1:1AnU7NaIRDWWzGEKwgtJRd2xk99HeFyHw3yid4rvQIY=
github.com/go-playground/universal-translator v0.17.0/go.mod h1:UkSxE5sNxxRwHyU+Scu5vgOQjsIJAF8j9muTVoKLVtA=
github.com/go-redsync/redsync v1.3.1/go.mod h1:qxZwM5JOimfq8y98Wk2+c8dKtxJgG5/yIl2ODz2E5Dk=
github.com/go-sql-driver/mysql v1.4.1/go.mod h1:zAC/RDZ24gD3HViQzih4MyKcchzm+sOG5ZlKdlhCg5w=
github.com/go-stack/stack v1.8.0/go.mod h1:v0f6uXyyMGvRgIKkXu+yp6POWl0qKG85gN/melR3HDY=
github.com/go-stomp/stomp v2.0.3+incompatible/go.mod h1:VqCtqNZv1226A1/79yh+rMiFUcfY3R109np+7ke4n0c=
github.com/go-telegram-bot-api/telegram-bot-api v4.6.4+incompatible/go.mod h1:qf9acutJ8cwBUhm1bqgz6Bei9/C/c93FPDljKWwsOgM=
github.com/go-test/deep v1.0.1/go.mod h1:wGDj63lr65AM2AQyKZd/NYHGb0R+1RLqB8NKt3aSFNA=
github.com/go-test/deep v1.0.2-0.20181118220953-042da051cf31 h1:28FVBuwkwowZMjbA7M0wXsI6t3PYulRTMio3SO+eKCM=
github.com/go-test/deep v1.0.2-0.20181118220953-042da051cf31/go.mod h1:wGDj63lr65AM2AQyKZd/NYHGb0R+1RLqB8NKt3aSFNA=
github.com/godbus/dbus v0.0.0-20190422162347-ade71ed3457e/go.mod h1:bBOAhwG1umN6/6ZUMtDFBMQR8jRg9O75tm9K00oMsK4=
github.com/gofrs/uuid v3.2.0+incompatible/go.mod h1:b2aQJv3Z4Fp6yNu3cdSllBxTCLRxnplIgP/c0N/04lM=
@@ -435,6 +444,7 @@ github.com/leodido/go-urn v1.1.0/go.mod h1:+cyI34gQWZcE1eQU7NVgKkkzdXDQHr1dBMtdA
github.com/leodido/go-urn v1.2.0/go.mod h1:+8+nEpDfqqsY+g338gtMEUOtuK+4dEMhiQEgxpxOKII=
github.com/lib/pq v1.1.1/go.mod h1:5WUZQaWbwv1U+lTReE5YruASi9Al49XbQIvNi/34Woo=
github.com/lib/pq v1.2.0/go.mod h1:5WUZQaWbwv1U+lTReE5YruASi9Al49XbQIvNi/34Woo=
github.com/lib/pq v1.3.0/go.mod h1:5WUZQaWbwv1U+lTReE5YruASi9Al49XbQIvNi/34Woo=
github.com/linode/linodego v0.10.0/go.mod h1:cziNP7pbvE3mXIPneHj0oRY8L1WtGEIKlZ8LANE4eXA=
github.com/liquidweb/liquidweb-go v1.6.0/go.mod h1:UDcVnAMDkZxpw4Y7NOHkqoeiGacVLEIG/i5J9cyixzQ=
github.com/lucas-clemente/quic-go v0.12.1/go.mod h1:UXJJPE4RfFef/xPO5wQm0tITK8gNfqwTxjbE7s3Vb8s=
@@ -465,6 +475,7 @@ github.com/matttproud/golang_protobuf_extensions v1.0.1 h1:4hp9jkHxhMHkqkrB3Ix0j
github.com/matttproud/golang_protobuf_extensions v1.0.1/go.mod h1:D8He9yQNgCq6Z5Ld7szi9bcBfOoFv/3dc6xSMkL2PC0=
github.com/mholt/certmagic v0.7.5/go.mod h1:91uJzK5K8IWtYQqTi5R2tsxV1pCde+wdGfaRaOZi6aQ=
github.com/mholt/certmagic v0.8.3/go.mod h1:91uJzK5K8IWtYQqTi5R2tsxV1pCde+wdGfaRaOZi6aQ=
github.com/mholt/certmagic v0.9.1/go.mod h1:nu8jbsbtwK4205EDH/ZUMTKsfYpJA1Q7MKXHfgTihNw=
github.com/micro/cli v0.2.0 h1:ut3rV5JWqZjsXIa2MvGF+qMUP8DAUTvHX9Br5gO4afA=
github.com/micro/cli v0.2.0/go.mod h1:jRT9gmfVKWSS6pkKcXQ8YhUyj6bzwxK8Fp5b0Y7qNnk=
github.com/micro/cli/v2 v2.1.1 h1:uFw0SMIKmGuyHIm8lXns/NOn7V62bM5y7DnlxUM+BEQ=
@@ -473,11 +484,16 @@ github.com/micro/go-micro v1.16.0/go.mod h1:A0F58bHLh2m0LAI9QyhvmbN8c1cxhAZo3cM6
github.com/micro/go-micro v1.17.1/go.mod h1:klwUJL1gkdY1MHFyz+fFJXn52dKcty4hoe95Mp571AA=
github.com/micro/go-micro v1.18.0 h1:gP70EZVHpJuUIT0YWth192JmlIci+qMOEByHm83XE9E=
github.com/micro/go-micro v1.18.0/go.mod h1:klwUJL1gkdY1MHFyz+fFJXn52dKcty4hoe95Mp571AA=
github.com/micro/go-micro/v2 v2.0.0 h1:bMx549RwJ9Yuiui8cDVlfYhVNP8I8KBJTMyLthEXpRw=
github.com/micro/go-micro/v2 v2.0.0/go.mod h1:v7QP5UhKRt37ixjJe8DouWmg0/eE6dltr5h0idJ9BpE=
github.com/micro/go-plugins v1.5.1 h1:swcFD7ynCTUo98APqIEIbPu2XMd6yVGTnI8PqdnCwOQ=
github.com/micro/go-plugins v1.5.1/go.mod h1:jcxejzJCAMH731cQHbS/hncyKe0rxAbzKkibj8glad4=
github.com/micro/go-plugins/wrapper/trace/opencensus/v2 v2.0.1 h1:7IkXfl94MdLZQwk0lNmu9Cg5WP42Zak9EtQMeN4SvVs=
github.com/micro/go-plugins/wrapper/trace/opencensus/v2 v2.0.1/go.mod h1:QrkcwcDtIs2hIJpIEhozekyf6Rfz5C36kFI8+zzCpX0=
github.com/micro/mdns v0.3.0 h1:bYycYe+98AXR3s8Nq5qvt6C573uFTDPIYzJemWON0QE=
github.com/micro/mdns v0.3.0/go.mod h1:KJ0dW7KmicXU2BV++qkLlmHYcVv7/hHnbtguSWt9Aoc=
github.com/micro/micro v1.16.0/go.mod h1:TO5Ng0KidbfRYIxVM4Q3deZ0A+qwRyP9WeXp+k2fWNA=
github.com/micro/protoc-gen-micro v1.0.0 h1:qKh5S3I1RfenhIs5mqDFJLwRlRDlgin7XWiUKZbpwLM=
github.com/micro/protoc-gen-micro v1.0.0/go.mod h1:C8ij4DJhapBmypcT00AXdb0cZ675/3PqUO02buWWqbE=
github.com/miekg/dns v1.0.14/go.mod h1:W1PPwlIAgtquWBMBEV9nkV9Cazfe8ScdGz/Lj7v3Nrg=
github.com/miekg/dns v1.1.3/go.mod h1:W1PPwlIAgtquWBMBEV9nkV9Cazfe8ScdGz/Lj7v3Nrg=
@@ -539,7 +555,9 @@ github.com/nats-io/nuid v1.0.1/go.mod h1:19wcPz3Ph3q0Jbyiqsd0kePYG7A95tJPxeL+1OS
github.com/nats-io/stan.go v0.5.0/go.mod h1:dYqB+vMN3C2F9pT1FRQpg9eHbjPj6mP0yYuyBNuXHZE=
github.com/nbio/st v0.0.0-20140626010706-e9e8d9816f32/go.mod h1:9wM+0iRr9ahx58uYLpLIr5fm8diHn0JbqRycJi6w0Ms=
github.com/nlopes/slack v0.6.0/go.mod h1:JzQ9m3PMAqcpeCam7UaHSuBuupz7CmpjehYMayT6YOk=
github.com/nlopes/slack v0.6.1-0.20191106133607-d06c2a2b3249/go.mod h1:JzQ9m3PMAqcpeCam7UaHSuBuupz7CmpjehYMayT6YOk=
github.com/nrdcg/auroradns v1.0.0/go.mod h1:6JPXKzIRzZzMqtTDgueIhTi6rFf1QvYE/HzqidhOhjw=
github.com/nrdcg/dnspod-go v0.3.0/go.mod h1:vZSoFSFeQVm2gWLMkyX61LZ8HI3BaqtHZWgPTGKr6KQ=
github.com/nrdcg/goinwx v0.6.1/go.mod h1:XPiut7enlbEdntAqalBIqcYcTEVhpv/dKWgDCX2SwKQ=
github.com/nrdcg/namesilo v0.2.1/go.mod h1:lwMvfQTyYq+BbjJd30ylEG4GPSS6PII0Tia4rRpRiyw=
github.com/nsf/termbox-go v0.0.0-20190121233118-02980233997d/go.mod h1:IuKpRQcYE1Tfu+oAQqaLisqDeXgjyyltCfsaoYN18NQ=
@@ -578,6 +596,8 @@ github.com/owncloud/ocis-hello v0.0.0-20200114105804-61741477dcec/go.mod h1:hrXq
github.com/owncloud/ocis-pkg v1.2.1-0.20191217084055-eab942498596/go.mod h1:Wo0QfOmhadh2vNcUoQIsw2yaOT3zeftk+xaOOwP3y88=
github.com/owncloud/ocis-pkg v1.3.0 h1:2fkgvfd/spTjschuulYMHRuzxkCGGXae9ocebVYkm74=
github.com/owncloud/ocis-pkg v1.3.0/go.mod h1:Wo0QfOmhadh2vNcUoQIsw2yaOT3zeftk+xaOOwP3y88=
github.com/owncloud/ocis-pkg/v2 v2.0.1 h1:3ISEtfjAz4pDFczTggIJwKuft3bVsAp1C7dFY9BBPEs=
github.com/owncloud/ocis-pkg/v2 v2.0.1/go.mod h1:7bVnn3VUaqdmvpMkXF0QVEF1fRugs35hSkuVTAq9yjk=
github.com/oxtoacart/bpool v0.0.0-20190530202638-03653db5a59c h1:rp5dCmg/yLR3mgFuSOe4oEnDDmGLROTvMragMUXpTQw=
github.com/oxtoacart/bpool v0.0.0-20190530202638-03653db5a59c/go.mod h1:X07ZCGwUbLaax7L0S3Tw4hpejzu63ZrrQiUe6W0hcy0=
github.com/pascaldekloe/goe v0.0.0-20180627143212-57f6aae5913c/go.mod h1:lzWF7FIEvWOWxwDKqyGYQf6ZUaNfKdP144TG7ZOy1lc=
@@ -784,18 +804,25 @@ golang.org/x/crypto v0.0.0-20191108234033-bd318be0434a/go.mod h1:LzIPMQfyMNhhGPh
golang.org/x/crypto v0.0.0-20200117160349-530e935923ad h1:Jh8cai0fqIK+f6nG0UgPW5wFk8wmiMhM3AyciDBdtQg=
golang.org/x/crypto v0.0.0-20200117160349-530e935923ad/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA=
golang.org/x/exp v0.0.0-20190306152737-a1d7652674e8/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA=
golang.org/x/exp v0.0.0-20190510132918-efd6b22b2522/go.mod h1:ZjyILWgesfNpC6sMxTJOJm9Kp84zZh5NQWvqDGG3Qr8=
golang.org/x/exp v0.0.0-20190829153037-c13cbed26979/go.mod h1:86+5VVa7VpoJ4kLfm080zCjGlMRFzhUhsZKEZO7MGek=
golang.org/x/exp v0.0.0-20191129062945-2f5052295587/go.mod h1:2RIsYlXP63K8oxa1u096TMicItID8zy7Y6sNkU49FU4=
golang.org/x/image v0.0.0-20190227222117-0694c2d4d067/go.mod h1:kZ7UVZpmo3dzQBMxlp+ypCbDeSB+sBbTgSJuh5dn5js=
golang.org/x/image v0.0.0-20190802002840-cff245a6509b/go.mod h1:FeLwcggjj3mMvU+oOTbSwawSJRM1uh48EjtB4UJZlP0=
golang.org/x/lint v0.0.0-20181026193005-c67002cb31c3/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE=
golang.org/x/lint v0.0.0-20190227174305-5b3e6a55c961/go.mod h1:wehouNa3lNwaWXcvxsM5YxQ5yQlVC4a0KAMCusXpPoU=
golang.org/x/lint v0.0.0-20190301231843-5614ed5bae6f/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE=
golang.org/x/lint v0.0.0-20190313153728-d0100b6bd8b3/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc=
golang.org/x/lint v0.0.0-20190409202823-959b441ac422/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc=
golang.org/x/lint v0.0.0-20190909230951-414d861bb4ac/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc=
golang.org/x/lint v0.0.0-20190930215403-16217165b5de/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc=
golang.org/x/lint v0.0.0-20191125180803-fdd1cda4f05f h1:J5lckAjkw6qYlOZNj90mLYNTEKDvWeuc1yieZ8qUzUE=
golang.org/x/lint v0.0.0-20191125180803-fdd1cda4f05f/go.mod h1:5qLYkcX4OjUUV8bRuDixDT3tpyyb+LUpUlRWLxfhWrs=
golang.org/x/mobile v0.0.0-20190312151609-d3739f865fa6/go.mod h1:z+o9i4GpDbdi3rU15maQ/Ox0txvL9dWGYEHz965HBQE=
golang.org/x/mobile v0.0.0-20190719004257-d2bd2a29d028/go.mod h1:E/iHnbuqvinMTCcRqshq8CkpyQDoeVncDDYHnLhea+o=
golang.org/x/mod v0.0.0-20190513183733-4bf6d317e70e/go.mod h1:mXi4GBBbnImb6dmsKGUJ2LatrhH/nqhxcFungHvyanc=
golang.org/x/mod v0.1.0/go.mod h1:0QHyrYULN0/3qlju5TqG8bIK38QM8yzMo5ekMj3DlcY=
golang.org/x/mod v0.1.1-0.20191105210325-c90efee705ee/go.mod h1:QqPTAvyqsEbceGzBzNggFXnrqF1CaUcvgkdR5Ot7KZg=
golang.org/x/net v0.0.0-20170114055629-f2499483f923/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
golang.org/x/net v0.0.0-20180611182652-db08ff08e862/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
@@ -826,6 +853,7 @@ golang.org/x/net v0.0.0-20190930134127-c5a3c61f89f3/go.mod h1:z5CRVTTTmAJ677TzLL
golang.org/x/net v0.0.0-20191004110552-13f9640d40b9/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
golang.org/x/net v0.0.0-20191011234655-491137f69257/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
golang.org/x/net v0.0.0-20191014212845-da9a3fd4c582/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
golang.org/x/net v0.0.0-20191027093000-83d349e8ac1a/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
golang.org/x/net v0.0.0-20191028085509-fe3aa8a45271/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
golang.org/x/net v0.0.0-20191109021931-daa7c04131f5 h1:bHNaocaoJxYBo5cw41UyTMLjYlb8wPY7+WFrnklbHOM=
golang.org/x/net v0.0.0-20191109021931-daa7c04131f5/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
@@ -914,8 +942,11 @@ golang.org/x/tools v0.0.0-20190606124116-d0a3d012864b/go.mod h1:/rFqwRUd4F7ZHNgw
golang.org/x/tools v0.0.0-20190621195816-6e04913cbbac/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc=
golang.org/x/tools v0.0.0-20190628153133-6cdbf07be9d0/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc=
golang.org/x/tools v0.0.0-20190729092621-ff9f1409240a/go.mod h1:jcCCGcm9btYwXyDqrUWc6MKQKKGJCWEQ3AfLSRIbEuI=
golang.org/x/tools v0.0.0-20190816200558-6889da9d5479/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
golang.org/x/tools v0.0.0-20190828213141-aed303cbaa74/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
golang.org/x/tools v0.0.0-20190907020128-2ca718005c18/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
golang.org/x/tools v0.0.0-20190911174233-4f2ddba30aff/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
golang.org/x/tools v0.0.0-20191012152004-8de300cfc20a/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
golang.org/x/tools v0.0.0-20191029041327-9cc4af7d6b2c/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
golang.org/x/tools v0.0.0-20191029190741-b9c20aec41a5 h1:hKsoRgsbwY1NafxrwTs+k64bikrLBkAgPir1TNCj3Zs=
golang.org/x/tools v0.0.0-20191029190741-b9c20aec41a5/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
@@ -934,6 +965,7 @@ google.golang.org/api v0.8.0/go.mod h1:o4eAsZoiT+ibD93RtjEohWalFOjRDx6CVaqeizhEn
google.golang.org/api v0.9.0/go.mod h1:o4eAsZoiT+ibD93RtjEohWalFOjRDx6CVaqeizhEnKg=
google.golang.org/api v0.13.0 h1:Q3Ui3V3/CVinFWFiW39Iw0kMuVrRzYX0wN6OPFp0lTA=
google.golang.org/api v0.13.0/go.mod h1:iLdEw5Ide6rF15KTC1Kkl0iskquN2gFfn9o9XIsbkAI=
google.golang.org/api v0.14.0/go.mod h1:iLdEw5Ide6rF15KTC1Kkl0iskquN2gFfn9o9XIsbkAI=
google.golang.org/appengine v1.1.0/go.mod h1:EbEs0AVv82hx2wNQdGPgUI5lhzA/G0D9YwlJXL52JkM=
google.golang.org/appengine v1.4.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4=
google.golang.org/appengine v1.5.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4=
@@ -950,10 +982,13 @@ google.golang.org/genproto v0.0.0-20190530194941-fb225487d101/go.mod h1:z3L6/3dT
google.golang.org/genproto v0.0.0-20190620144150-6af8c5fc6601/go.mod h1:z3L6/3dTEVtUr6QSP8miRzeRqwQOioJ9I66odjN4I7s=
google.golang.org/genproto v0.0.0-20190801165951-fa694d86fc64/go.mod h1:DMBHOl98Agz4BDEuKkezgsaosCRResVns1a3J2ZsMNc=
google.golang.org/genproto v0.0.0-20190819201941-24fa4b261c55/go.mod h1:DMBHOl98Agz4BDEuKkezgsaosCRResVns1a3J2ZsMNc=
google.golang.org/genproto v0.0.0-20190911173649-1774047e7e51/go.mod h1:IbNlFCBrqXvoKpeg0TB2l7cyZUmoaFKYIwrEpbDKLA8=
google.golang.org/genproto v0.0.0-20191108220845-16a3f7862a1a h1:Ob5/580gVHBJZgXnff1cZDbG+xLtMVE5mDRTe+nIsX4=
google.golang.org/genproto v0.0.0-20191108220845-16a3f7862a1a/go.mod h1:n3cpQtvxv34hfy77yVDNjmbRyujviMdxYliBSkLhpCc=
google.golang.org/genproto v0.0.0-20191216164720-4f79533eabd1 h1:aQktFqmDE2yjveXJlVIfslDFmFnUXSqG0i6KRcJAeMc=
google.golang.org/genproto v0.0.0-20191216164720-4f79533eabd1/go.mod h1:n3cpQtvxv34hfy77yVDNjmbRyujviMdxYliBSkLhpCc=
google.golang.org/genproto v0.0.0-20200115191322-ca5a22157cba h1:pRj9OXZbwNtbtZtOB4dLwfK4u+EVRMvP+e9zKkg2grM=
google.golang.org/genproto v0.0.0-20200115191322-ca5a22157cba/go.mod h1:n3cpQtvxv34hfy77yVDNjmbRyujviMdxYliBSkLhpCc=
google.golang.org/grpc v1.14.0/go.mod h1:yo6s7OP7yaDglbqo1J04qKzAhqBH6lvTonzMVmEdcZw=
google.golang.org/grpc v1.17.0/go.mod h1:6QZJwpn2B+Zp71q/5VxRsJ6NXXVCE5NRUHRo+f3cWCs=
google.golang.org/grpc v1.19.0/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c=
@@ -983,6 +1018,7 @@ gopkg.in/fsnotify.v1 v1.4.7/go.mod h1:Tz8NjZHkW78fSQdbUxIjBTcgA1z1m8ZHf0WmKUhAMy
gopkg.in/gcfg.v1 v1.2.3/go.mod h1:yesOnuUOFQAhST5vPY4nbZsb/huCgGGXlipJsBn0b3o=
gopkg.in/go-playground/assert.v1 v1.2.1/go.mod h1:9RXL0bg/zibRAgZUYszZSwO/z8Y/a8bDuhia5mkpMnE=
gopkg.in/go-playground/validator.v9 v9.30.0/go.mod h1:+c9/zcJMFNgbLvly1L1V+PpxWdVbfP1avr/N00E2vyQ=
gopkg.in/go-playground/validator.v9 v9.31.0/go.mod h1:+c9/zcJMFNgbLvly1L1V+PpxWdVbfP1avr/N00E2vyQ=
gopkg.in/gomail.v2 v2.0.0-20160411212932-81ebce5c23df/go.mod h1:LRQQ+SO6ZHR7tOkpBDuZnXENFzX8qRjMDMyPD6BRkCw=
gopkg.in/h2non/gock.v1 v1.0.15/go.mod h1:sX4zAkdYX1TRGJ2JY156cFspQn4yRWn6p9EMdODlynE=
gopkg.in/inf.v0 v0.9.1/go.mod h1:cWUDdTG/fYaXco+Dcufb5Vnc6Gp2YChqWtbxRZE0mXw=
+10
View File
@@ -9,6 +9,11 @@ import (
"github.com/oklog/run"
"github.com/owncloud/ocis-accounts/pkg/config"
"github.com/owncloud/ocis-accounts/pkg/micro/grpc"
oclog "github.com/owncloud/ocis-pkg/v2/log"
)
var (
logger oclog.Logger
)
// Server is the entry point for the server command.
@@ -59,12 +64,17 @@ func Server(cfg *config.Config) *cli.Command {
Destination: &cfg.Server.Address,
},
},
Before: func(c *cli.Context) error {
logger = oclog.NewLogger(oclog.Name(cfg.Server.Name))
return nil
},
Action: func(c *cli.Context) error {
gr := run.Group{}
ctx, cancel := context.WithCancel(context.Background())
defer cancel()
service := grpc.NewService(
grpc.Logger(logger),
grpc.Context(ctx),
grpc.Config(cfg),
grpc.Name(cfg.Server.Name),
+2 -1
View File
@@ -3,7 +3,7 @@ package grpc
import (
"github.com/owncloud/ocis-accounts/pkg/proto/v0"
svc "github.com/owncloud/ocis-accounts/pkg/service/v0"
"github.com/owncloud/ocis-pkg/service/grpc"
"github.com/owncloud/ocis-pkg/v2/service/grpc"
)
// NewService initializes a new go-micro service ready to run
@@ -15,6 +15,7 @@ func NewService(opts ...Option) grpc.Service {
grpc.Context(options.Context),
grpc.Address(options.Address),
grpc.Namespace(options.Namespace),
grpc.Logger(options.Logger),
)
hdlr := svc.New(options.Config)
+1 -1
View File
@@ -4,7 +4,7 @@ import (
"context"
"github.com/owncloud/ocis-accounts/pkg/config"
"github.com/owncloud/ocis-pkg/log"
"github.com/owncloud/ocis-pkg/v2/log"
)
// Option defines a single option function.
+382 -34
View File
@@ -5,9 +5,10 @@ package proto
import (
fmt "fmt"
math "math"
proto "github.com/golang/protobuf/proto"
_ "github.com/golang/protobuf/ptypes/empty"
math "math"
)
// Reference imports to suppress errors if they are not otherwise used.
@@ -116,11 +117,11 @@ func (m *Payload) GetAccount() *Account {
}
type Account struct {
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
DateOfBirth string `protobuf:"bytes,2,opt,name=dateOfBirth,proto3" json:"dateOfBirth,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
StandardClaims *StandardClaims `protobuf:"bytes,1,opt,name=standard_claims,json=standardClaims,proto3" json:"standard_claims,omitempty"`
Identities []*IdHistory `protobuf:"bytes,2,rep,name=identities,proto3" json:"identities,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *Account) Reset() { *m = Account{} }
@@ -148,16 +149,334 @@ func (m *Account) XXX_DiscardUnknown() {
var xxx_messageInfo_Account proto.InternalMessageInfo
func (m *Account) GetName() string {
func (m *Account) GetStandardClaims() *StandardClaims {
if m != nil {
return m.StandardClaims
}
return nil
}
func (m *Account) GetIdentities() []*IdHistory {
if m != nil {
return m.Identities
}
return nil
}
// OIDC standard claims https://openid.net/specs/openid-connect-core-1_0.html#StandardClaims
type StandardClaims struct {
Sub string `protobuf:"bytes,1,opt,name=sub,proto3" json:"sub,omitempty"`
Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
GivenName string `protobuf:"bytes,3,opt,name=given_name,json=givenName,proto3" json:"given_name,omitempty"`
FamilyName string `protobuf:"bytes,4,opt,name=family_name,json=familyName,proto3" json:"family_name,omitempty"`
MiddleName string `protobuf:"bytes,5,opt,name=middle_name,json=middleName,proto3" json:"middle_name,omitempty"`
Nickname string `protobuf:"bytes,6,opt,name=nickname,proto3" json:"nickname,omitempty"`
PreferredUsername string `protobuf:"bytes,7,opt,name=preferred_username,json=preferredUsername,proto3" json:"preferred_username,omitempty"`
Profile string `protobuf:"bytes,8,opt,name=profile,proto3" json:"profile,omitempty"`
Picture string `protobuf:"bytes,9,opt,name=picture,proto3" json:"picture,omitempty"`
Website string `protobuf:"bytes,10,opt,name=website,proto3" json:"website,omitempty"`
Email string `protobuf:"bytes,11,opt,name=email,proto3" json:"email,omitempty"`
EmailVerified bool `protobuf:"varint,12,opt,name=email_verified,json=emailVerified,proto3" json:"email_verified,omitempty"`
Gender string `protobuf:"bytes,13,opt,name=gender,proto3" json:"gender,omitempty"`
Birthdate string `protobuf:"bytes,14,opt,name=birthdate,proto3" json:"birthdate,omitempty"`
Zoneinfo string `protobuf:"bytes,15,opt,name=zoneinfo,proto3" json:"zoneinfo,omitempty"`
Locale string `protobuf:"bytes,16,opt,name=locale,proto3" json:"locale,omitempty"`
PhoneNumber string `protobuf:"bytes,17,opt,name=phone_number,json=phoneNumber,proto3" json:"phone_number,omitempty"`
PhoneNumberVerified bool `protobuf:"varint,18,opt,name=phone_number_verified,json=phoneNumberVerified,proto3" json:"phone_number_verified,omitempty"`
UpdatedAt int32 `protobuf:"varint,19,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
Address *Address `protobuf:"bytes,20,opt,name=address,proto3" json:"address,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *StandardClaims) Reset() { *m = StandardClaims{} }
func (m *StandardClaims) String() string { return proto.CompactTextString(m) }
func (*StandardClaims) ProtoMessage() {}
func (*StandardClaims) Descriptor() ([]byte, []int) {
return fileDescriptor_e3c84319968a576b, []int{3}
}
func (m *StandardClaims) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_StandardClaims.Unmarshal(m, b)
}
func (m *StandardClaims) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_StandardClaims.Marshal(b, m, deterministic)
}
func (m *StandardClaims) XXX_Merge(src proto.Message) {
xxx_messageInfo_StandardClaims.Merge(m, src)
}
func (m *StandardClaims) XXX_Size() int {
return xxx_messageInfo_StandardClaims.Size(m)
}
func (m *StandardClaims) XXX_DiscardUnknown() {
xxx_messageInfo_StandardClaims.DiscardUnknown(m)
}
var xxx_messageInfo_StandardClaims proto.InternalMessageInfo
func (m *StandardClaims) GetSub() string {
if m != nil {
return m.Sub
}
return ""
}
func (m *StandardClaims) GetName() string {
if m != nil {
return m.Name
}
return ""
}
func (m *Account) GetDateOfBirth() string {
func (m *StandardClaims) GetGivenName() string {
if m != nil {
return m.DateOfBirth
return m.GivenName
}
return ""
}
func (m *StandardClaims) GetFamilyName() string {
if m != nil {
return m.FamilyName
}
return ""
}
func (m *StandardClaims) GetMiddleName() string {
if m != nil {
return m.MiddleName
}
return ""
}
func (m *StandardClaims) GetNickname() string {
if m != nil {
return m.Nickname
}
return ""
}
func (m *StandardClaims) GetPreferredUsername() string {
if m != nil {
return m.PreferredUsername
}
return ""
}
func (m *StandardClaims) GetProfile() string {
if m != nil {
return m.Profile
}
return ""
}
func (m *StandardClaims) GetPicture() string {
if m != nil {
return m.Picture
}
return ""
}
func (m *StandardClaims) GetWebsite() string {
if m != nil {
return m.Website
}
return ""
}
func (m *StandardClaims) GetEmail() string {
if m != nil {
return m.Email
}
return ""
}
func (m *StandardClaims) GetEmailVerified() bool {
if m != nil {
return m.EmailVerified
}
return false
}
func (m *StandardClaims) GetGender() string {
if m != nil {
return m.Gender
}
return ""
}
func (m *StandardClaims) GetBirthdate() string {
if m != nil {
return m.Birthdate
}
return ""
}
func (m *StandardClaims) GetZoneinfo() string {
if m != nil {
return m.Zoneinfo
}
return ""
}
func (m *StandardClaims) GetLocale() string {
if m != nil {
return m.Locale
}
return ""
}
func (m *StandardClaims) GetPhoneNumber() string {
if m != nil {
return m.PhoneNumber
}
return ""
}
func (m *StandardClaims) GetPhoneNumberVerified() bool {
if m != nil {
return m.PhoneNumberVerified
}
return false
}
func (m *StandardClaims) GetUpdatedAt() int32 {
if m != nil {
return m.UpdatedAt
}
return 0
}
func (m *StandardClaims) GetAddress() *Address {
if m != nil {
return m.Address
}
return nil
}
type Address struct {
Formatted string `protobuf:"bytes,1,opt,name=formatted,proto3" json:"formatted,omitempty"`
StreetAddress string `protobuf:"bytes,2,opt,name=street_address,json=streetAddress,proto3" json:"street_address,omitempty"`
Locality string `protobuf:"bytes,3,opt,name=locality,proto3" json:"locality,omitempty"`
Region string `protobuf:"bytes,4,opt,name=region,proto3" json:"region,omitempty"`
PostalCode string `protobuf:"bytes,5,opt,name=postal_code,json=postalCode,proto3" json:"postal_code,omitempty"`
Country string `protobuf:"bytes,6,opt,name=country,proto3" json:"country,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *Address) Reset() { *m = Address{} }
func (m *Address) String() string { return proto.CompactTextString(m) }
func (*Address) ProtoMessage() {}
func (*Address) Descriptor() ([]byte, []int) {
return fileDescriptor_e3c84319968a576b, []int{4}
}
func (m *Address) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_Address.Unmarshal(m, b)
}
func (m *Address) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_Address.Marshal(b, m, deterministic)
}
func (m *Address) XXX_Merge(src proto.Message) {
xxx_messageInfo_Address.Merge(m, src)
}
func (m *Address) XXX_Size() int {
return xxx_messageInfo_Address.Size(m)
}
func (m *Address) XXX_DiscardUnknown() {
xxx_messageInfo_Address.DiscardUnknown(m)
}
var xxx_messageInfo_Address proto.InternalMessageInfo
func (m *Address) GetFormatted() string {
if m != nil {
return m.Formatted
}
return ""
}
func (m *Address) GetStreetAddress() string {
if m != nil {
return m.StreetAddress
}
return ""
}
func (m *Address) GetLocality() string {
if m != nil {
return m.Locality
}
return ""
}
func (m *Address) GetRegion() string {
if m != nil {
return m.Region
}
return ""
}
func (m *Address) GetPostalCode() string {
if m != nil {
return m.PostalCode
}
return ""
}
func (m *Address) GetCountry() string {
if m != nil {
return m.Country
}
return ""
}
type IdHistory struct {
Sub string `protobuf:"bytes,1,opt,name=sub,proto3" json:"sub,omitempty"`
Iss string `protobuf:"bytes,2,opt,name=iss,proto3" json:"iss,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *IdHistory) Reset() { *m = IdHistory{} }
func (m *IdHistory) String() string { return proto.CompactTextString(m) }
func (*IdHistory) ProtoMessage() {}
func (*IdHistory) Descriptor() ([]byte, []int) {
return fileDescriptor_e3c84319968a576b, []int{5}
}
func (m *IdHistory) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_IdHistory.Unmarshal(m, b)
}
func (m *IdHistory) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_IdHistory.Marshal(b, m, deterministic)
}
func (m *IdHistory) XXX_Merge(src proto.Message) {
xxx_messageInfo_IdHistory.Merge(m, src)
}
func (m *IdHistory) XXX_Size() int {
return xxx_messageInfo_IdHistory.Size(m)
}
func (m *IdHistory) XXX_DiscardUnknown() {
xxx_messageInfo_IdHistory.DiscardUnknown(m)
}
var xxx_messageInfo_IdHistory proto.InternalMessageInfo
func (m *IdHistory) GetSub() string {
if m != nil {
return m.Sub
}
return ""
}
func (m *IdHistory) GetIss() string {
if m != nil {
return m.Iss
}
return ""
}
@@ -173,7 +492,7 @@ func (m *Phoenix) Reset() { *m = Phoenix{} }
func (m *Phoenix) String() string { return proto.CompactTextString(m) }
func (*Phoenix) ProtoMessage() {}
func (*Phoenix) Descriptor() ([]byte, []int) {
return fileDescriptor_e3c84319968a576b, []int{3}
return fileDescriptor_e3c84319968a576b, []int{6}
}
func (m *Phoenix) XXX_Unmarshal(b []byte) error {
@@ -212,7 +531,7 @@ func (m *Query) Reset() { *m = Query{} }
func (m *Query) String() string { return proto.CompactTextString(m) }
func (*Query) ProtoMessage() {}
func (*Query) Descriptor() ([]byte, []int) {
return fileDescriptor_e3c84319968a576b, []int{4}
return fileDescriptor_e3c84319968a576b, []int{7}
}
func (m *Query) XXX_Unmarshal(b []byte) error {
@@ -251,7 +570,7 @@ func (m *Records) Reset() { *m = Records{} }
func (m *Records) String() string { return proto.CompactTextString(m) }
func (*Records) ProtoMessage() {}
func (*Records) Descriptor() ([]byte, []int) {
return fileDescriptor_e3c84319968a576b, []int{5}
return fileDescriptor_e3c84319968a576b, []int{8}
}
func (m *Records) XXX_Unmarshal(b []byte) error {
@@ -283,6 +602,9 @@ func init() {
proto.RegisterType((*Record)(nil), "settings.Record")
proto.RegisterType((*Payload)(nil), "settings.Payload")
proto.RegisterType((*Account)(nil), "settings.Account")
proto.RegisterType((*StandardClaims)(nil), "settings.StandardClaims")
proto.RegisterType((*Address)(nil), "settings.Address")
proto.RegisterType((*IdHistory)(nil), "settings.IdHistory")
proto.RegisterType((*Phoenix)(nil), "settings.Phoenix")
proto.RegisterType((*Query)(nil), "settings.Query")
proto.RegisterType((*Records)(nil), "settings.Records")
@@ -291,26 +613,52 @@ func init() {
func init() { proto.RegisterFile("pkg/proto/v0/accounts.proto", fileDescriptor_e3c84319968a576b) }
var fileDescriptor_e3c84319968a576b = []byte{
// 327 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x6c, 0x91, 0x41, 0x4f, 0xc2, 0x40,
0x10, 0x85, 0x53, 0x0b, 0xac, 0x0c, 0x07, 0x60, 0x62, 0x0c, 0xc2, 0xc1, 0xa6, 0xa7, 0xaa, 0x49,
0xab, 0x18, 0xcf, 0x46, 0x12, 0xc3, 0xc5, 0x44, 0x5d, 0x6e, 0xde, 0x6a, 0x19, 0x4a, 0x03, 0x74,
0x9b, 0x76, 0x21, 0xf6, 0xa7, 0xf8, 0x6f, 0x0d, 0xbb, 0x5d, 0x51, 0xeb, 0xa9, 0xd3, 0xf7, 0xbe,
0x99, 0x7d, 0x99, 0x81, 0x51, 0xb6, 0x8a, 0x83, 0x2c, 0x17, 0x52, 0x04, 0xbb, 0xeb, 0x20, 0x8c,
0x22, 0xb1, 0x4d, 0x65, 0xe1, 0x2b, 0x05, 0x8f, 0x0b, 0x92, 0x32, 0x49, 0xe3, 0x62, 0x38, 0x8a,
0x85, 0x88, 0xd7, 0xa4, 0xc9, 0xf7, 0xed, 0x22, 0xa0, 0x4d, 0x26, 0x4b, 0x8d, 0xb9, 0x53, 0x68,
0x71, 0x8a, 0x44, 0x3e, 0xc7, 0x1e, 0xd8, 0x2b, 0x2a, 0x07, 0x96, 0x63, 0x79, 0x6d, 0xbe, 0x2f,
0xf1, 0x0a, 0x58, 0x16, 0x96, 0x6b, 0x11, 0xce, 0x07, 0x47, 0x8e, 0xe5, 0x75, 0xc6, 0x7d, 0xdf,
0x0c, 0xf5, 0x5f, 0xb4, 0xc1, 0x0d, 0xe1, 0x46, 0xc0, 0x2a, 0x4d, 0xf5, 0x2d, 0x05, 0xa5, 0xc9,
0x87, 0x9a, 0xf6, 0xbb, 0x4f, 0x1b, 0xdc, 0x10, 0x7b, 0xb8, 0x4a, 0x5e, 0x7f, 0xe4, 0x41, 0x1b,
0xdc, 0x10, 0xee, 0x3d, 0xb0, 0x4a, 0x43, 0x84, 0x46, 0x1a, 0x6e, 0xa8, 0xca, 0xab, 0x6a, 0x74,
0xa0, 0x33, 0x0f, 0x25, 0x3d, 0x2f, 0x26, 0x49, 0x2e, 0x97, 0x6a, 0x5e, 0x9b, 0xff, 0x94, 0xdc,
0x73, 0x60, 0x55, 0x02, 0x3c, 0x81, 0xa6, 0x5c, 0xd2, 0xf7, 0x04, 0xfd, 0xe3, 0x9e, 0x41, 0xf3,
0x75, 0x4b, 0x79, 0x59, 0x5f, 0x87, 0x7b, 0x07, 0x4c, 0xaf, 0xaa, 0xc0, 0x4b, 0x60, 0xb9, 0x2e,
0x07, 0x96, 0x63, 0x7b, 0x9d, 0x71, 0xef, 0x10, 0x5a, 0x33, 0xdc, 0x00, 0xe3, 0x4f, 0x0b, 0xba,
0xb3, 0xca, 0x9c, 0x51, 0xbe, 0x4b, 0x22, 0xc2, 0x0b, 0xb0, 0x67, 0x24, 0xb1, 0xd6, 0x35, 0xac,
0x29, 0xe8, 0x81, 0x3d, 0x25, 0x89, 0xdd, 0x83, 0xa1, 0xf2, 0xfd, 0x43, 0xde, 0x40, 0xe3, 0x29,
0x29, 0x24, 0x9e, 0xfa, 0xfa, 0xe0, 0xbe, 0x39, 0xb8, 0xff, 0xb8, 0x3f, 0xf8, 0xb0, 0xff, 0xb7,
0xa3, 0x98, 0xb0, 0xb7, 0xa6, 0x86, 0x5a, 0xea, 0x73, 0xfb, 0x15, 0x00, 0x00, 0xff, 0xff, 0x06,
0x2e, 0xab, 0xa7, 0x53, 0x02, 0x00, 0x00,
// 748 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x6c, 0x54, 0x5f, 0x8f, 0xdb, 0x44,
0x10, 0x97, 0x9b, 0xcb, 0x39, 0x99, 0xf4, 0xfe, 0xed, 0x95, 0x6a, 0x49, 0xa9, 0x1a, 0x2c, 0x21,
0x05, 0x10, 0x09, 0x5c, 0xc5, 0x07, 0x38, 0x2a, 0x54, 0x90, 0x50, 0x05, 0x3e, 0xc1, 0x03, 0x2f,
0x96, 0xe3, 0x9d, 0xe4, 0x56, 0x67, 0x7b, 0xad, 0xdd, 0x75, 0x20, 0xbc, 0xf1, 0x31, 0xf8, 0x30,
0x7c, 0x31, 0x9e, 0xd0, 0xce, 0xae, 0x9d, 0x4b, 0xd3, 0xa7, 0xec, 0xef, 0xcf, 0x4c, 0xc6, 0xa3,
0x99, 0x81, 0x17, 0xcd, 0xc3, 0x66, 0xd9, 0x68, 0x65, 0xd5, 0x72, 0xfb, 0xf5, 0x32, 0x2f, 0x0a,
0xd5, 0xd6, 0xd6, 0x2c, 0x88, 0x61, 0x23, 0x83, 0xd6, 0xca, 0x7a, 0x63, 0xa6, 0x2f, 0x36, 0x4a,
0x6d, 0x4a, 0xf4, 0xce, 0x55, 0xbb, 0x5e, 0x62, 0xd5, 0xd8, 0x9d, 0xb7, 0x25, 0x6f, 0xe1, 0x34,
0xc5, 0x42, 0x69, 0xc1, 0x2e, 0x61, 0xf0, 0x80, 0x3b, 0x1e, 0xcd, 0xa2, 0xf9, 0x38, 0x75, 0x4f,
0xf6, 0x25, 0xc4, 0x4d, 0xbe, 0x2b, 0x55, 0x2e, 0xf8, 0x93, 0x59, 0x34, 0x9f, 0xdc, 0x5c, 0x2d,
0xba, 0xa4, 0x8b, 0x9f, 0xbd, 0x90, 0x76, 0x8e, 0xa4, 0x80, 0x38, 0x70, 0x14, 0x77, 0xaf, 0xb0,
0x96, 0x7f, 0x52, 0xb6, 0xc3, 0x38, 0x2f, 0xa4, 0x9d, 0xc3, 0x99, 0x43, 0xe5, 0xc7, 0x7f, 0x72,
0xeb, 0x85, 0xb4, 0x73, 0x24, 0x7f, 0x47, 0x10, 0x07, 0x92, 0xdd, 0xc2, 0x85, 0xb1, 0x79, 0x2d,
0x72, 0x2d, 0xb2, 0xa2, 0xcc, 0x65, 0x65, 0xc2, 0xbf, 0xf1, 0x7d, 0x82, 0xbb, 0x60, 0x78, 0x43,
0x7a, 0x7a, 0x6e, 0x0e, 0x30, 0x7b, 0x0d, 0x20, 0x05, 0xd6, 0x56, 0x5a, 0x89, 0x86, 0x3f, 0x99,
0x0d, 0xe6, 0x93, 0x9b, 0xeb, 0x7d, 0xf4, 0x8f, 0xe2, 0x07, 0x69, 0xac, 0xd2, 0xbb, 0xf4, 0x91,
0x2d, 0xf9, 0xef, 0x04, 0xce, 0x0f, 0xf3, 0xba, 0xd6, 0x99, 0x76, 0xd5, 0xb5, 0xce, 0xb4, 0x2b,
0xc6, 0xe0, 0xa4, 0xce, 0x2b, 0xa4, 0x4f, 0x1a, 0xa7, 0xf4, 0x66, 0x2f, 0x01, 0x36, 0x72, 0x8b,
0x75, 0x46, 0xca, 0x80, 0x94, 0x31, 0x31, 0xef, 0x9c, 0xfc, 0x0a, 0x26, 0xeb, 0xbc, 0x92, 0xe5,
0xce, 0xeb, 0x27, 0xa4, 0x83, 0xa7, 0x3a, 0x43, 0x25, 0x85, 0x28, 0xd1, 0x1b, 0x86, 0xde, 0xe0,
0x29, 0x32, 0x4c, 0x61, 0x54, 0xcb, 0xe2, 0x81, 0xd4, 0x53, 0x52, 0x7b, 0xcc, 0xbe, 0x02, 0xd6,
0x68, 0x5c, 0xa3, 0xd6, 0x28, 0xb2, 0xd6, 0xa0, 0x26, 0x57, 0x4c, 0xae, 0xab, 0x5e, 0xf9, 0x35,
0x08, 0x8c, 0x43, 0xdc, 0x68, 0xb5, 0x96, 0x25, 0xf2, 0x11, 0x79, 0x3a, 0x48, 0x8a, 0x2c, 0x6c,
0xab, 0x91, 0x8f, 0x83, 0xe2, 0xa1, 0x53, 0xfe, 0xc0, 0x95, 0x91, 0x16, 0x39, 0x78, 0x25, 0x40,
0xf6, 0x0c, 0x86, 0x58, 0xe5, 0xb2, 0xe4, 0x13, 0xe2, 0x3d, 0x60, 0x9f, 0xc1, 0x39, 0x3d, 0xb2,
0x2d, 0x6a, 0xb9, 0x96, 0x28, 0xf8, 0xd3, 0x59, 0x34, 0x1f, 0xa5, 0x67, 0xc4, 0xfe, 0x16, 0x48,
0xf6, 0x1c, 0x4e, 0x37, 0x58, 0x0b, 0xd4, 0xfc, 0x8c, 0xa2, 0x03, 0x62, 0x9f, 0xc0, 0x78, 0x25,
0xb5, 0xbd, 0x17, 0xb9, 0x45, 0x7e, 0xee, 0xbb, 0xd9, 0x13, 0xae, 0x17, 0x7f, 0xa9, 0x1a, 0x65,
0xbd, 0x56, 0xfc, 0xc2, 0xf7, 0xa2, 0xc3, 0x2e, 0x63, 0xa9, 0x8a, 0xbc, 0x44, 0x7e, 0xe9, 0x33,
0x7a, 0xc4, 0x3e, 0x85, 0xa7, 0xcd, 0xbd, 0xaa, 0x31, 0xab, 0xdb, 0x6a, 0x85, 0x9a, 0x5f, 0x91,
0x3a, 0x21, 0xee, 0x1d, 0x51, 0xec, 0x06, 0x3e, 0x7a, 0x6c, 0xd9, 0x97, 0xce, 0xa8, 0xf4, 0xeb,
0x47, 0xde, 0xfe, 0x03, 0x5e, 0x02, 0xb4, 0x8d, 0x2b, 0x4a, 0x64, 0xb9, 0xe5, 0xd7, 0xb3, 0x68,
0x3e, 0x4c, 0xc7, 0x81, 0xb9, 0xb5, 0xb4, 0x00, 0x42, 0x68, 0x34, 0x86, 0x3f, 0x3b, 0x5a, 0x00,
0x2f, 0xa4, 0x9d, 0x23, 0xf9, 0xd7, 0x2d, 0x80, 0x7f, 0xbb, 0x06, 0xac, 0x95, 0xae, 0x72, 0x6b,
0x51, 0x84, 0xd9, 0xdb, 0x13, 0xae, 0xbb, 0xc6, 0x6a, 0x44, 0x9b, 0x75, 0xd9, 0xfd, 0x2c, 0x9e,
0x79, 0xb6, 0x4b, 0x32, 0x85, 0x11, 0x7d, 0xbd, 0xb4, 0xbb, 0x30, 0x92, 0x3d, 0x76, 0x7d, 0xd2,
0xb8, 0x91, 0xaa, 0x0e, 0xc3, 0x18, 0x90, 0x1b, 0xc4, 0x46, 0x19, 0x9b, 0x97, 0x59, 0xa1, 0x44,
0x3f, 0x88, 0x9e, 0x7a, 0xa3, 0x04, 0x4d, 0x02, 0xed, 0xa8, 0xde, 0x85, 0x39, 0xec, 0x60, 0xb2,
0x84, 0x71, 0xbf, 0x55, 0x1f, 0x58, 0x9b, 0x4b, 0x18, 0xc8, 0xbe, 0x52, 0xf7, 0x4c, 0x5e, 0x41,
0x1c, 0x4e, 0x86, 0x9b, 0x22, 0x7b, 0x8f, 0x15, 0x86, 0x00, 0x0f, 0x92, 0x8f, 0x61, 0xf8, 0x4b,
0x8b, 0x3e, 0xdb, 0xe1, 0xfd, 0x4a, 0xbe, 0x85, 0xd8, 0xdf, 0x36, 0xc3, 0xbe, 0x80, 0x58, 0xfb,
0x27, 0x8f, 0x68, 0xcd, 0x2f, 0xf7, 0x4d, 0xf6, 0x9e, 0xb4, 0x33, 0xdc, 0xfc, 0x13, 0xc1, 0xc5,
0x5d, 0x10, 0xef, 0x50, 0x6f, 0x65, 0x81, 0xec, 0x73, 0x18, 0xdc, 0xa1, 0x65, 0x47, 0x51, 0xd3,
0x23, 0x86, 0xcd, 0x61, 0xf0, 0x16, 0x2d, 0xbb, 0xd8, 0x0b, 0x54, 0xdf, 0x07, 0x9c, 0xdf, 0xc0,
0xc9, 0x4f, 0xd2, 0x58, 0xf6, 0x7c, 0xe1, 0x2f, 0xf4, 0xa2, 0xbb, 0xd0, 0x8b, 0xef, 0xdd, 0x85,
0x9e, 0x5e, 0xbd, 0x1f, 0x61, 0xbe, 0x8b, 0x7f, 0x1f, 0x7a, 0xd3, 0x29, 0xfd, 0xbc, 0xfe, 0x3f,
0x00, 0x00, 0xff, 0xff, 0x89, 0x43, 0x0c, 0x13, 0x04, 0x06, 0x00, 0x00,
}
+5 -12
View File
@@ -5,16 +5,15 @@ package proto
import (
fmt "fmt"
math "math"
proto "github.com/golang/protobuf/proto"
empty "github.com/golang/protobuf/ptypes/empty"
math "math"
)
import (
context "context"
client "github.com/micro/go-micro/client"
server "github.com/micro/go-micro/server"
client "github.com/micro/go-micro/v2/client"
server "github.com/micro/go-micro/v2/server"
)
// Reference imports to suppress errors if they are not otherwise used.
@@ -47,12 +46,6 @@ type settingsService struct {
}
func NewSettingsService(name string, c client.Client) SettingsService {
if c == nil {
c = client.NewClient()
}
if len(name) == 0 {
name = "settings"
}
return &settingsService{
c: c,
name: name,
+41 -3
View File
@@ -21,8 +21,46 @@ message Payload {
}
message Account {
string name = 1;
string dateOfBirth = 2;
StandardClaims standard_claims = 1;
repeated IdHistory identities = 2; // keep track of every identity of a given user
}
// OIDC standard claims https://openid.net/specs/openid-connect-core-1_0.html#StandardClaims
message StandardClaims {
string sub = 1;
string name = 2;
string given_name = 3;
string family_name = 4;
string middle_name = 5;
string nickname = 6;
string preferred_username = 7;
string profile = 8;
string picture = 9;
string website = 10;
string email = 11;
bool email_verified = 12;
string gender = 13;
string birthdate = 14;
string zoneinfo = 15;
string locale = 16;
string phone_number = 17;
bool phone_number_verified = 18;
int32 updated_at = 19;
Address address = 20;
}
message Address {
string formatted = 1;
string street_address = 2;
string locality = 3;
string region = 4;
string postal_code = 5;
string country = 6;
}
message IdHistory {
string sub = 1;
string iss = 2;
}
message Phoenix {
@@ -35,4 +73,4 @@ message Query {
message Records {
repeated Record records = 1;
}
}
+1 -1
View File
@@ -7,7 +7,7 @@ import (
"github.com/owncloud/ocis-accounts/pkg/account"
"github.com/owncloud/ocis-accounts/pkg/config"
"github.com/owncloud/ocis-accounts/pkg/proto/v0"
olog "github.com/owncloud/ocis-pkg/log"
olog "github.com/owncloud/ocis-pkg/v2/log"
)
// New returns a new instance of Service
+2 -2
View File
@@ -13,7 +13,7 @@ import (
"github.com/owncloud/ocis-accounts/pkg/account"
"github.com/owncloud/ocis-accounts/pkg/config"
"github.com/owncloud/ocis-accounts/pkg/proto/v0"
olog "github.com/owncloud/ocis-pkg/log"
olog "github.com/owncloud/ocis-pkg/v2/log"
)
var (
@@ -34,7 +34,7 @@ type Store struct {
// New creates a new store
func New(cfg *config.Config) account.Manager {
s := Store{
Logger: olog.NewLogger(olog.Name("ocis-accounts")),
Logger: olog.NewLogger(olog.Name(cfg.Server.Name)),
}
dest := filepath.Join(cfg.MountPath, StoreName)