214 lines
7.0 KiB
Plaintext
214 lines
7.0 KiB
Plaintext
|
const smithy = @import("smithy.zig");
|
||
|
|
||
|
pub const sts: struct {
|
||
|
version: []const u8 = "2011-06-15",
|
||
|
sdk_id: []const u8 = "STS",
|
||
|
arn_namespace: []const u8 = "sts",
|
||
|
endpoint_prefix: []const u8 = "sts",
|
||
|
sigv4_name: []const u8 = "sts",
|
||
|
aws_protocol: smithy.AwsProtocol = smithy.AwsProtocol.query,
|
||
|
assume_role: struct {
|
||
|
action_name: []const u8 = "AssumeRole",
|
||
|
Request: type = struct {
|
||
|
role_session_name: []const u8,
|
||
|
transitive_tag_keys: ?[][]const u8 = null,
|
||
|
serial_number: ?[]const u8 = null,
|
||
|
token_code: ?[]const u8 = null,
|
||
|
tags: ?[]struct {
|
||
|
value: []const u8,
|
||
|
key: []const u8,
|
||
|
} = null,
|
||
|
policy_arns: ?[]struct {
|
||
|
arn: ?[]const u8 = null,
|
||
|
} = null,
|
||
|
role_arn: []const u8,
|
||
|
source_identity: ?[]const u8 = null,
|
||
|
duration_seconds: ?i64 = null,
|
||
|
policy: ?[]const u8 = null,
|
||
|
external_id: ?[]const u8 = null,
|
||
|
},
|
||
|
Response: type = struct {
|
||
|
credentials: struct {
|
||
|
access_key_id: []const u8,
|
||
|
secret_access_key: []const u8,
|
||
|
session_token: []const u8,
|
||
|
expiration: i64,
|
||
|
},
|
||
|
source_identity: []const u8,
|
||
|
assumed_role_user: struct {
|
||
|
assumed_role_id: []const u8,
|
||
|
arn: []const u8,
|
||
|
},
|
||
|
packed_policy_size: i64,
|
||
|
},
|
||
|
ServiceError: type = error{
|
||
|
ExpiredToken,
|
||
|
MalformedPolicyDocument,
|
||
|
PackedPolicyTooLarge,
|
||
|
RegionDisabled,
|
||
|
},
|
||
|
} = .{},
|
||
|
assume_role_with_saml: struct {
|
||
|
action_name: []const u8 = "AssumeRoleWithSAML",
|
||
|
Request: type = struct {
|
||
|
policy_arns: ?[]struct {
|
||
|
arn: ?[]const u8 = null,
|
||
|
} = null,
|
||
|
role_arn: []const u8,
|
||
|
principal_arn: []const u8,
|
||
|
saml_assertion: []const u8,
|
||
|
duration_seconds: ?i64 = null,
|
||
|
policy: ?[]const u8 = null,
|
||
|
},
|
||
|
Response: type = struct {
|
||
|
credentials: struct {
|
||
|
access_key_id: []const u8,
|
||
|
secret_access_key: []const u8,
|
||
|
session_token: []const u8,
|
||
|
expiration: i64,
|
||
|
},
|
||
|
packed_policy_size: i64,
|
||
|
subject_type: []const u8,
|
||
|
name_qualifier: []const u8,
|
||
|
source_identity: []const u8,
|
||
|
assumed_role_user: struct {
|
||
|
assumed_role_id: []const u8,
|
||
|
arn: []const u8,
|
||
|
},
|
||
|
issuer: []const u8,
|
||
|
audience: []const u8,
|
||
|
subject: []const u8,
|
||
|
},
|
||
|
ServiceError: type = error{
|
||
|
ExpiredToken,
|
||
|
IDPRejectedClaim,
|
||
|
InvalidIdentityToken,
|
||
|
MalformedPolicyDocument,
|
||
|
PackedPolicyTooLarge,
|
||
|
RegionDisabled,
|
||
|
},
|
||
|
} = .{},
|
||
|
assume_role_with_web_identity: struct {
|
||
|
action_name: []const u8 = "AssumeRoleWithWebIdentity",
|
||
|
Request: type = struct {
|
||
|
role_session_name: []const u8,
|
||
|
duration_seconds: ?i64 = null,
|
||
|
policy_arns: ?[]struct {
|
||
|
arn: ?[]const u8 = null,
|
||
|
} = null,
|
||
|
role_arn: []const u8,
|
||
|
provider_id: ?[]const u8 = null,
|
||
|
web_identity_token: []const u8,
|
||
|
policy: ?[]const u8 = null,
|
||
|
},
|
||
|
Response: type = struct {
|
||
|
subject_from_web_identity_token: []const u8,
|
||
|
credentials: struct {
|
||
|
access_key_id: []const u8,
|
||
|
secret_access_key: []const u8,
|
||
|
session_token: []const u8,
|
||
|
expiration: i64,
|
||
|
},
|
||
|
provider: []const u8,
|
||
|
packed_policy_size: i64,
|
||
|
source_identity: []const u8,
|
||
|
assumed_role_user: struct {
|
||
|
assumed_role_id: []const u8,
|
||
|
arn: []const u8,
|
||
|
},
|
||
|
audience: []const u8,
|
||
|
},
|
||
|
ServiceError: type = error{
|
||
|
ExpiredToken,
|
||
|
IDPCommunicationError,
|
||
|
IDPRejectedClaim,
|
||
|
InvalidIdentityToken,
|
||
|
MalformedPolicyDocument,
|
||
|
PackedPolicyTooLarge,
|
||
|
RegionDisabled,
|
||
|
},
|
||
|
} = .{},
|
||
|
decode_authorization_message: struct {
|
||
|
action_name: []const u8 = "DecodeAuthorizationMessage",
|
||
|
Request: type = struct {
|
||
|
encoded_message: []const u8,
|
||
|
},
|
||
|
Response: type = struct {
|
||
|
decoded_message: []const u8,
|
||
|
},
|
||
|
ServiceError: type = error{InvalidAuthorizationMessage},
|
||
|
} = .{},
|
||
|
get_access_key_info: struct {
|
||
|
action_name: []const u8 = "GetAccessKeyInfo",
|
||
|
Request: type = struct {
|
||
|
access_key_id: []const u8,
|
||
|
},
|
||
|
Response: type = struct {
|
||
|
account: []const u8,
|
||
|
},
|
||
|
} = .{},
|
||
|
get_caller_identity: struct {
|
||
|
action_name: []const u8 = "GetCallerIdentity",
|
||
|
Request: type = struct {
|
||
|
pub fn metaInfo(self: @This()) struct { service: @TypeOf(sts), action: @TypeOf(sts.get_caller_identity) } {
|
||
|
return .{ .service = sts, .action = sts.get_caller_identity };
|
||
|
}
|
||
|
},
|
||
|
Response: type = struct {
|
||
|
user_id: []const u8,
|
||
|
arn: []const u8,
|
||
|
account: []const u8,
|
||
|
},
|
||
|
} = .{},
|
||
|
get_federation_token: struct {
|
||
|
action_name: []const u8 = "GetFederationToken",
|
||
|
Request: type = struct {
|
||
|
policy_arns: ?[]struct {
|
||
|
arn: ?[]const u8 = null,
|
||
|
} = null,
|
||
|
name: []const u8,
|
||
|
tags: ?[]struct {
|
||
|
value: []const u8,
|
||
|
key: []const u8,
|
||
|
} = null,
|
||
|
duration_seconds: ?i64 = null,
|
||
|
policy: ?[]const u8 = null,
|
||
|
},
|
||
|
Response: type = struct {
|
||
|
credentials: struct {
|
||
|
access_key_id: []const u8,
|
||
|
secret_access_key: []const u8,
|
||
|
session_token: []const u8,
|
||
|
expiration: i64,
|
||
|
},
|
||
|
federated_user: struct {
|
||
|
arn: []const u8,
|
||
|
federated_user_id: []const u8,
|
||
|
},
|
||
|
packed_policy_size: i64,
|
||
|
},
|
||
|
ServiceError: type = error{
|
||
|
MalformedPolicyDocument,
|
||
|
PackedPolicyTooLarge,
|
||
|
RegionDisabled,
|
||
|
},
|
||
|
} = .{},
|
||
|
get_session_token: struct {
|
||
|
action_name: []const u8 = "GetSessionToken",
|
||
|
Request: type = struct {
|
||
|
duration_seconds: ?i64 = null,
|
||
|
serial_number: ?[]const u8 = null,
|
||
|
token_code: ?[]const u8 = null,
|
||
|
},
|
||
|
Response: type = struct {
|
||
|
credentials: struct {
|
||
|
access_key_id: []const u8,
|
||
|
secret_access_key: []const u8,
|
||
|
session_token: []const u8,
|
||
|
expiration: i64,
|
||
|
},
|
||
|
},
|
||
|
ServiceError: type = error{RegionDisabled},
|
||
|
} = .{},
|
||
|
} = .{}; // end of service: sts
|