EmbeddedIamApi provides IAM API functionality embedded in the S3 server. This allows running a single server that handles both S3 and IAM requests.
| 35 | // EmbeddedIamApi provides IAM API functionality embedded in the S3 server. |
| 36 | // This allows running a single server that handles both S3 and IAM requests. |
| 37 | type EmbeddedIamApi struct { |
| 38 | credentialManager *credential.CredentialManager |
| 39 | iam *IdentityAccessManagement |
| 40 | policyLock sync.RWMutex |
| 41 | // Test hook |
| 42 | getS3ApiConfigurationFunc func(*iam_pb.S3ApiConfiguration) error |
| 43 | putS3ApiConfigurationFunc func(*iam_pb.S3ApiConfiguration) error |
| 44 | reloadConfigurationFunc func() error |
| 45 | readOnly bool |
| 46 | } |
| 47 | |
| 48 | // NewEmbeddedIamApi creates a new embedded IAM API handler. |
| 49 | func NewEmbeddedIamApi(credentialManager *credential.CredentialManager, iam *IdentityAccessManagement, readOnly bool) *EmbeddedIamApi { |
nothing calls this directly
no outgoing calls
no test coverage detected