@voidkey/broker-core
Version:
Core credential minting logic for the voidkey zero-trust credential broker
36 lines • 1.15 kB
TypeScript
import { AccessProvider, AccessProviderConfiguration, CredentialRequest, CredentialResponse } from './base';
export interface MinIOConfiguration extends AccessProviderConfiguration {
type: 'minio-sts';
endpoint: string;
region?: string;
roleArn?: string;
brokerAuth: {
tokenSource: 'broker-oidc';
expectedIssuer: string;
expectedAudience: string;
jwksUri?: string;
};
}
export interface MinIOKeyConfiguration {
provider: string;
policy?: string;
role?: string;
duration?: number;
outputs: {
[envVarName: string]: string;
};
}
export declare class MinIOProvider extends AccessProvider {
protected config: MinIOConfiguration;
constructor(config: MinIOConfiguration);
getName(): string;
getType(): string;
mintCredential(request: CredentialRequest): Promise<CredentialResponse>;
healthCheck(): Promise<boolean>;
private createServiceAccount;
private generateAWSSignature;
private parseSTSResponse;
cleanupServiceAccount(accessKey: string): Promise<void>;
private validateBrokerToken;
}
//# sourceMappingURL=minio.d.ts.map