Directories ¶
Path | Synopsis |
---|---|
api
|
|
swagger/docs
Package docs IAM API Server API.
|
Package docs IAM API Server API. |
cmd
|
|
iam-apiserver
apiserver is the api server for iam-apiserver service.
|
apiserver is the api server for iam-apiserver service. |
iam-authz-server
authzserver is the server for iam-authz-server.
|
authzserver is the server for iam-authz-server. |
iam-pump
pump is iam analytics purger that moves the data generated by your iam-authz-server nodes to any back-end.
|
pump is iam analytics purger that moves the data generated by your iam-authz-server nodes to any back-end. |
iamctl
iamctl is the command line tool for iam platform.
|
iamctl is the command line tool for iam platform. |
examples
|
|
internal
|
|
apiserver
Package apiserver does all of the work necessary to create a iam APIServer.
|
Package apiserver does all of the work necessary to create a iam APIServer. |
apiserver/config
Package config defines configuration for iam-apiserver.
|
Package config defines configuration for iam-apiserver. |
apiserver/controller/v1/cache
Package cache defines a cache service which can return all secrets and policies.
|
Package cache defines a cache service which can return all secrets and policies. |
apiserver/controller/v1/policy
Package policy implements the policy handlers.
|
Package policy implements the policy handlers. |
apiserver/controller/v1/secret
Package secret implements the secret handlers.
|
Package secret implements the secret handlers. |
apiserver/controller/v1/user
Package user implements the user handler.
|
Package user implements the user handler. |
apiserver/options
Package options contains flags and options for initializing an apiserver
|
Package options contains flags and options for initializing an apiserver |
apiserver/service/v1
Package v1 is the place where you can implements more complex business logic.
|
Package v1 is the place where you can implements more complex business logic. |
apiserver/store
Package store defines the storage interface for iam-apiserver.
|
Package store defines the storage interface for iam-apiserver. |
apiserver/store/etcd
Package etcd implements `github.com/marmotedu/iam/internal/apiserver/store.Store` interface.
|
Package etcd implements `github.com/marmotedu/iam/internal/apiserver/store.Store` interface. |
apiserver/store/fake
Package fake implements `github.com/marmotedu/iam/internal/apiserver/store.Store` interface.
|
Package fake implements `github.com/marmotedu/iam/internal/apiserver/store.Store` interface. |
apiserver/store/mysql
Package mysql implements `github.com/marmotedu/iam/internal/apiserver/store.Store` interface.
|
Package mysql implements `github.com/marmotedu/iam/internal/apiserver/store.Store` interface. |
authzserver
Package authzserver does all of the work necessary to create a authzserver
|
Package authzserver does all of the work necessary to create a authzserver |
authzserver/analytics
Package analytics defines functions and structs used to store authorization audit data to redis.
|
Package analytics defines functions and structs used to store authorization audit data to redis. |
authzserver/api/v1/authorize
Package authorize implements the authorize handlers.
|
Package authorize implements the authorize handlers. |
authzserver/authorization
Package authorization implement the authorize interface that use local repository to authorize the subject access review.
|
Package authorization implement the authorize interface that use local repository to authorize the subject access review. |
authzserver/authorization/authorizer
Package authorizer defines authorization interface.
|
Package authorizer defines authorization interface. |
authzserver/config
Package config defines iam-authz-server configuration.
|
Package config defines iam-authz-server configuration. |
authzserver/options
Package options contains flags and options for initializing an apiserver
|
Package options contains flags and options for initializing an apiserver |
authzserver/store
Package store defines the storage interface for authzserver.
|
Package store defines the storage interface for authzserver. |
authzserver/store/load
Package load loads pump plugins.
|
Package load loads pump plugins. |
iamctl
Package iamctl provides the functions used by the iamctl command line tool under github.com/marmotedu/iam/cmd.
|
Package iamctl provides the functions used by the iamctl command line tool under github.com/marmotedu/iam/cmd. |
iamctl/cmd
Package cmd create a root cobra command and add subcommands to it.
|
Package cmd create a root cobra command and add subcommands to it. |
iamctl/cmd/color
Package color print colors supported by the current terminal.
|
Package color print colors supported by the current terminal. |
iamctl/cmd/completion
Package completion output shell completion code for the specified shell (bash or zsh).
|
Package completion output shell completion code for the specified shell (bash or zsh). |
iamctl/cmd/info
Package info print the host information.
|
Package info print the host information. |
iamctl/cmd/jwt
Package jwt can be used to sign/show/verify jwt token with given secretID and secretKey.
|
Package jwt can be used to sign/show/verify jwt token with given secretID and secretKey. |
iamctl/cmd/new
Package new used to generate demo command code.
|
Package new used to generate demo command code. |
iamctl/cmd/options
Package options print a list of global command-line options (applies to all commands).
|
Package options print a list of global command-line options (applies to all commands). |
iamctl/cmd/policy
Package policy provides functions to manage authorization policies on iam platform.
|
Package policy provides functions to manage authorization policies on iam platform. |
iamctl/cmd/secret
Package secret provides functions to manage secrets on iam platform.
|
Package secret provides functions to manage secrets on iam platform. |
iamctl/cmd/set
Package set used to set specific features on objects.
|
Package set used to set specific features on objects. |
iamctl/cmd/user
Package user provides functions to manage users on iam platform.
|
Package user provides functions to manage users on iam platform. |
iamctl/cmd/validate
Package validate validate the basic environment for iamctl to run.
|
Package validate validate the basic environment for iamctl to run. |
iamctl/cmd/version
Package version print the client and server version information.
|
Package version print the client and server version information. |
iamctl/util/interrupt
Package interrupt deal with signals.
|
Package interrupt deal with signals. |
iamctl/util/templates
Package templates provides template functions for working with templates.
|
Package templates provides template functions for working with templates. |
iamctl/util/term
Package term provides structures and helper functions to work with terminal (state, sizes).
|
Package term provides structures and helper functions to work with terminal (state, sizes). |
pkg/code
Package code defines error codes for iam platform.
|
Package code defines error codes for iam platform. |
pkg/logger
Package logger defines gorm logger
|
Package logger defines gorm logger |
pkg/middleware
Package middleware defines multiple gin middlewares
|
Package middleware defines multiple gin middlewares |
pkg/middleware/auth
Package auth defines authentication strategy like Basic, Bearer.
|
Package auth defines authentication strategy like Basic, Bearer. |
pkg/options
Package options is the public flags and options used by a generic api server.
|
Package options is the public flags and options used by a generic api server. |
pkg/server
Package server defines the generic apiserver used by all iam platform.
|
Package server defines the generic apiserver used by all iam platform. |
pkg/util/gormutil
Package gormutil is a util to convert offset and limit to default values.
|
Package gormutil is a util to convert offset and limit to default values. |
pkg/validation
Package validation defines validate functions internal used by iam.
|
Package validation defines validate functions internal used by iam. |
pump
Package pump does all of the work necessary to create a iam pump server.
|
Package pump does all of the work necessary to create a iam pump server. |
pump/analytics
Package analytics defines all the functions and structs used to store traffic analytics.
|
Package analytics defines all the functions and structs used to store traffic analytics. |
pump/config
Package config defines pump configuration.
|
Package config defines pump configuration. |
pump/options
Package options contains flags and options for initializing an apiserver
|
Package options contains flags and options for initializing an apiserver |
pump/pumps
Package pumps defines multiple back-end service used to persistent store iam analytics data.
|
Package pumps defines multiple back-end service used to persistent store iam analytics data. |
pump/server
Package server runs a http server used to provide a api to check pump health status.
|
Package server runs a http server used to provide a api to check pump health status. |
pump/storage
Package storage defines storages which store the analytics data from iam-authz-server.
|
Package storage defines storages which store the analytics data from iam-authz-server. |
pump/storage/redis
Package redis provides an redis implementation of the AnalyticsStorage storage interface.
|
Package redis provides an redis implementation of the AnalyticsStorage storage interface. |
pkg
|
|
app
Package app defines an application framework used to create application.
|
Package app defines an application framework used to create application. |
cli/genericclioptions
Package genericclioptions contains flags which can be added to you command, bound, completed, and produce useful helper functions.
|
Package genericclioptions contains flags which can be added to you command, bound, completed, and produce useful helper functions. |
db
Package db provide useful functions to create mysql instance.
|
Package db provide useful functions to create mysql instance. |
shutdown
Package shutdown Providing shutdown callbacks for graceful app shutdown Installation To install run: go get github.com/marmotedu/iam/pkg/shutdown Example - posix signals Graceful shutdown will listen for posix SIGINT and SIGTERM signals.
|
Package shutdown Providing shutdown callbacks for graceful app shutdown Installation To install run: go get github.com/marmotedu/iam/pkg/shutdown Example - posix signals Graceful shutdown will listen for posix SIGINT and SIGTERM signals. |
shutdown/shutdownmanagers/posixsignal
Package posixsignal provides a listener for a posix signal.
|
Package posixsignal provides a listener for a posix signal. |
storage
Package storage defines redis storage.
|
Package storage defines redis storage. |
validator
Package validator defines iam custom binding validators used by gin.
|
Package validator defines iam custom binding validators used by gin. |
test
|
|
third_party
|
|
forked/murmur3
Package murmur3 implements Austin Appleby's non-cryptographic MurmurHash3.
|
Package murmur3 implements Austin Appleby's non-cryptographic MurmurHash3. |
tools
|
|
codegen
Package main is a tool to automate the creation of code init function.
|
Package main is a tool to automate the creation of code init function. |
Click to show internal directories.
Click to hide internal directories.