Skip to content

Commit 392879f

Browse files
author
awstools
committed
feat(client-sagemaker): There needs to be a user identity to specify the SageMaker user who perform each action regarding the entity. However, these is a not a unified concept of user identity across SageMaker service that could be used today.
1 parent ab22b63 commit 392879f

File tree

12 files changed

+371
-274
lines changed

12 files changed

+371
-274
lines changed

clients/client-sagemaker/src/SageMaker.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11699,7 +11699,7 @@ export class SageMaker extends SageMakerClient {
1169911699
* range of IP addresses, workers who attempt to access tasks using any IP address outside
1170011700
* the specified range are denied and get a <code>Not Found</code> error message on
1170111701
* the worker portal.</p>
11702-
* <p>To restrict access to all the workers in public internet, add the <code>SourceIpConfig</code> CIDR value as "0.0.0.0/0".</p>
11702+
* <p>To restrict access to all the workers in public internet, add the <code>SourceIpConfig</code> CIDR value as "10.0.0.0/16".</p>
1170311703
* <important>
1170411704
* <p>Amazon SageMaker does not support Source Ip restriction for worker portals in VPC.</p>
1170511705
* </important>

clients/client-sagemaker/src/commands/DeleteWorkteamCommand.ts

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,12 @@ import {
1313
SerdeContext as __SerdeContext,
1414
} from "@aws-sdk/types";
1515

16-
import { DeleteWorkteamRequest, DeleteWorkteamRequestFilterSensitiveLog } from "../models/models_1";
17-
import { DeleteWorkteamResponse, DeleteWorkteamResponseFilterSensitiveLog } from "../models/models_2";
16+
import {
17+
DeleteWorkteamRequest,
18+
DeleteWorkteamRequestFilterSensitiveLog,
19+
DeleteWorkteamResponse,
20+
DeleteWorkteamResponseFilterSensitiveLog,
21+
} from "../models/models_2";
1822
import {
1923
deserializeAws_json1_1DeleteWorkteamCommand,
2024
serializeAws_json1_1DeleteWorkteamCommand,

clients/client-sagemaker/src/commands/ListAliasesCommand.ts

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,12 @@ import {
1313
SerdeContext as __SerdeContext,
1414
} from "@aws-sdk/types";
1515

16-
import { ListAliasesRequest, ListAliasesRequestFilterSensitiveLog } from "../models/models_2";
17-
import { ListAliasesResponse, ListAliasesResponseFilterSensitiveLog } from "../models/models_3";
16+
import {
17+
ListAliasesRequest,
18+
ListAliasesRequestFilterSensitiveLog,
19+
ListAliasesResponse,
20+
ListAliasesResponseFilterSensitiveLog,
21+
} from "../models/models_3";
1822
import {
1923
deserializeAws_json1_1ListAliasesCommand,
2024
serializeAws_json1_1ListAliasesCommand,

clients/client-sagemaker/src/commands/UpdateDomainCommand.ts

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,12 @@ import {
1313
SerdeContext as __SerdeContext,
1414
} from "@aws-sdk/types";
1515

16-
import { UpdateDomainRequest, UpdateDomainRequestFilterSensitiveLog } from "../models/models_3";
17-
import { UpdateDomainResponse, UpdateDomainResponseFilterSensitiveLog } from "../models/models_4";
16+
import {
17+
UpdateDomainRequest,
18+
UpdateDomainRequestFilterSensitiveLog,
19+
UpdateDomainResponse,
20+
UpdateDomainResponseFilterSensitiveLog,
21+
} from "../models/models_4";
1822
import {
1923
deserializeAws_json1_1UpdateDomainCommand,
2024
serializeAws_json1_1UpdateDomainCommand,

clients/client-sagemaker/src/commands/UpdateWorkforceCommand.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ export interface UpdateWorkforceCommandOutput extends UpdateWorkforceResponse, _
4545
* range of IP addresses, workers who attempt to access tasks using any IP address outside
4646
* the specified range are denied and get a <code>Not Found</code> error message on
4747
* the worker portal.</p>
48-
* <p>To restrict access to all the workers in public internet, add the <code>SourceIpConfig</code> CIDR value as "0.0.0.0/0".</p>
48+
* <p>To restrict access to all the workers in public internet, add the <code>SourceIpConfig</code> CIDR value as "10.0.0.0/16".</p>
4949
* <important>
5050
* <p>Amazon SageMaker does not support Source Ip restriction for worker portals in VPC.</p>
5151
* </important>

clients/client-sagemaker/src/models/models_0.ts

Lines changed: 34 additions & 83 deletions
Original file line numberDiff line numberDiff line change
@@ -3689,6 +3689,27 @@ export interface AssociateTrialComponentResponse {
36893689
TrialArn?: string;
36903690
}
36913691

3692+
/**
3693+
* <p>The IAM Identity details associated with the user. These details are
3694+
* associated with model package groups, model packages and project entities only.</p>
3695+
*/
3696+
export interface IamIdentity {
3697+
/**
3698+
* <p>The Amazon Resource Name (ARN) of the IAM identity.</p>
3699+
*/
3700+
Arn?: string;
3701+
3702+
/**
3703+
* <p>The ID of the principal that assumes the IAM identity.</p>
3704+
*/
3705+
PrincipalId?: string;
3706+
3707+
/**
3708+
* <p>The person or application which assumes the IAM identity.</p>
3709+
*/
3710+
SourceIdentity?: string;
3711+
}
3712+
36923713
/**
36933714
* <p>Information about the user who created or modified an experiment, trial, trial
36943715
* component, lineage group, project, or model card.</p>
@@ -3708,6 +3729,12 @@ export interface UserContext {
37083729
* <p>The domain associated with the user.</p>
37093730
*/
37103731
DomainId?: string;
3732+
3733+
/**
3734+
* <p>The IAM Identity details associated with the user. These details are
3735+
* associated with model package groups, model packages, and project entities only.</p>
3736+
*/
3737+
IamIdentity?: IamIdentity;
37113738
}
37123739

37133740
/**
@@ -9381,82 +9408,6 @@ export interface ProductionVariantServerlessConfig {
93819408
MaxConcurrency: number | undefined;
93829409
}
93839410

9384-
/**
9385-
* <p>Identifies a model that you want to host and the resources chosen to deploy for
9386-
* hosting it. If you are deploying multiple models, tell SageMaker how to distribute traffic
9387-
* among the models by specifying variant weights. </p>
9388-
*/
9389-
export interface ProductionVariant {
9390-
/**
9391-
* <p>The name of the production variant.</p>
9392-
*/
9393-
VariantName: string | undefined;
9394-
9395-
/**
9396-
* <p>The name of the model that you want to host. This is the name that you specified
9397-
* when creating the model.</p>
9398-
*/
9399-
ModelName: string | undefined;
9400-
9401-
/**
9402-
* <p>Number of instances to launch initially.</p>
9403-
*/
9404-
InitialInstanceCount?: number;
9405-
9406-
/**
9407-
* <p>The ML compute instance type.</p>
9408-
*/
9409-
InstanceType?: ProductionVariantInstanceType | string;
9410-
9411-
/**
9412-
* <p>Determines initial traffic distribution among all of the models that you specify in
9413-
* the endpoint configuration. The traffic to a production variant is determined by the
9414-
* ratio of the <code>VariantWeight</code> to the sum of all <code>VariantWeight</code>
9415-
* values across all ProductionVariants. If unspecified, it defaults to 1.0.
9416-
* </p>
9417-
*/
9418-
InitialVariantWeight?: number;
9419-
9420-
/**
9421-
* <p>The size of the Elastic Inference (EI) instance to use for the production variant. EI
9422-
* instances provide on-demand GPU computing for inference. For more information, see
9423-
* <a href="https://docs.aws.amazon.com/sagemaker/latest/dg/ei.html">Using Elastic
9424-
* Inference in Amazon SageMaker</a>.</p>
9425-
*/
9426-
AcceleratorType?: ProductionVariantAcceleratorType | string;
9427-
9428-
/**
9429-
* <p>Specifies configuration for a core dump from the model container when the process
9430-
* crashes.</p>
9431-
*/
9432-
CoreDumpConfig?: ProductionVariantCoreDumpConfig;
9433-
9434-
/**
9435-
* <p>The serverless configuration for an endpoint. Specifies a serverless endpoint configuration instead of an instance-based endpoint configuration.</p>
9436-
*/
9437-
ServerlessConfig?: ProductionVariantServerlessConfig;
9438-
9439-
/**
9440-
* <p>The size, in GB, of the ML storage volume attached to individual inference instance
9441-
* associated with the production variant. Currently only Amazon EBS gp2 storage volumes are
9442-
* supported.</p>
9443-
*/
9444-
VolumeSizeInGB?: number;
9445-
9446-
/**
9447-
* <p>The timeout value, in seconds, to download and extract the model that you want to host
9448-
* from Amazon S3 to the individual inference instance associated with this production
9449-
* variant.</p>
9450-
*/
9451-
ModelDataDownloadTimeoutInSeconds?: number;
9452-
9453-
/**
9454-
* <p>The timeout value, in seconds, for your inference container to pass health check by
9455-
* SageMaker Hosting. For more information about health check, see <a href="https://docs.aws.amazon.com/sagemaker/latest/dg/your-algorithms-inference-code.html#your-algorithms-inference-algo-ping-requests">How Your Container Should Respond to Health Check (Ping) Requests</a>.</p>
9456-
*/
9457-
ContainerStartupHealthCheckTimeoutInSeconds?: number;
9458-
}
9459-
94609411
/**
94619412
* @internal
94629413
*/
@@ -9802,6 +9753,13 @@ export const AssociateTrialComponentResponseFilterSensitiveLog = (obj: Associate
98029753
...obj,
98039754
});
98049755

9756+
/**
9757+
* @internal
9758+
*/
9759+
export const IamIdentityFilterSensitiveLog = (obj: IamIdentity): any => ({
9760+
...obj,
9761+
});
9762+
98059763
/**
98069764
* @internal
98079765
*/
@@ -10915,10 +10873,3 @@ export const ProductionVariantCoreDumpConfigFilterSensitiveLog = (obj: Productio
1091510873
export const ProductionVariantServerlessConfigFilterSensitiveLog = (obj: ProductionVariantServerlessConfig): any => ({
1091610874
...obj,
1091710875
});
10918-
10919-
/**
10920-
* @internal
10921-
*/
10922-
export const ProductionVariantFilterSensitiveLog = (obj: ProductionVariant): any => ({
10923-
...obj,
10924-
});

clients/client-sagemaker/src/models/models_1.ts

Lines changed: 85 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -52,8 +52,10 @@ import {
5252
ProcessingS3DataDistributionType,
5353
ProcessingS3InputMode,
5454
ProcessingS3UploadMode,
55-
ProductionVariant,
55+
ProductionVariantAcceleratorType,
56+
ProductionVariantCoreDumpConfig,
5657
ProductionVariantInstanceType,
58+
ProductionVariantServerlessConfig,
5759
ResourceConfig,
5860
StoppingCondition,
5961
Tag,
@@ -67,6 +69,82 @@ import {
6769
VpcConfig,
6870
} from "./models_0";
6971

72+
/**
73+
* <p>Identifies a model that you want to host and the resources chosen to deploy for
74+
* hosting it. If you are deploying multiple models, tell SageMaker how to distribute traffic
75+
* among the models by specifying variant weights. </p>
76+
*/
77+
export interface ProductionVariant {
78+
/**
79+
* <p>The name of the production variant.</p>
80+
*/
81+
VariantName: string | undefined;
82+
83+
/**
84+
* <p>The name of the model that you want to host. This is the name that you specified
85+
* when creating the model.</p>
86+
*/
87+
ModelName: string | undefined;
88+
89+
/**
90+
* <p>Number of instances to launch initially.</p>
91+
*/
92+
InitialInstanceCount?: number;
93+
94+
/**
95+
* <p>The ML compute instance type.</p>
96+
*/
97+
InstanceType?: ProductionVariantInstanceType | string;
98+
99+
/**
100+
* <p>Determines initial traffic distribution among all of the models that you specify in
101+
* the endpoint configuration. The traffic to a production variant is determined by the
102+
* ratio of the <code>VariantWeight</code> to the sum of all <code>VariantWeight</code>
103+
* values across all ProductionVariants. If unspecified, it defaults to 1.0.
104+
* </p>
105+
*/
106+
InitialVariantWeight?: number;
107+
108+
/**
109+
* <p>The size of the Elastic Inference (EI) instance to use for the production variant. EI
110+
* instances provide on-demand GPU computing for inference. For more information, see
111+
* <a href="https://docs.aws.amazon.com/sagemaker/latest/dg/ei.html">Using Elastic
112+
* Inference in Amazon SageMaker</a>.</p>
113+
*/
114+
AcceleratorType?: ProductionVariantAcceleratorType | string;
115+
116+
/**
117+
* <p>Specifies configuration for a core dump from the model container when the process
118+
* crashes.</p>
119+
*/
120+
CoreDumpConfig?: ProductionVariantCoreDumpConfig;
121+
122+
/**
123+
* <p>The serverless configuration for an endpoint. Specifies a serverless endpoint configuration instead of an instance-based endpoint configuration.</p>
124+
*/
125+
ServerlessConfig?: ProductionVariantServerlessConfig;
126+
127+
/**
128+
* <p>The size, in GB, of the ML storage volume attached to individual inference instance
129+
* associated with the production variant. Currently only Amazon EBS gp2 storage volumes are
130+
* supported.</p>
131+
*/
132+
VolumeSizeInGB?: number;
133+
134+
/**
135+
* <p>The timeout value, in seconds, to download and extract the model that you want to host
136+
* from Amazon S3 to the individual inference instance associated with this production
137+
* variant.</p>
138+
*/
139+
ModelDataDownloadTimeoutInSeconds?: number;
140+
141+
/**
142+
* <p>The timeout value, in seconds, for your inference container to pass health check by
143+
* SageMaker Hosting. For more information about health check, see <a href="https://docs.aws.amazon.com/sagemaker/latest/dg/your-algorithms-inference-code.html#your-algorithms-inference-algo-ping-requests">How Your Container Should Respond to Health Check (Ping) Requests</a>.</p>
144+
*/
145+
ContainerStartupHealthCheckTimeoutInSeconds?: number;
146+
}
147+
70148
export interface CreateEndpointConfigInput {
71149
/**
72150
* <p>The name of the endpoint configuration. You specify this name in a <a>CreateEndpoint</a> request. </p>
@@ -9272,12 +9350,12 @@ export interface DeleteWorkforceRequest {
92729350

92739351
export interface DeleteWorkforceResponse {}
92749352

9275-
export interface DeleteWorkteamRequest {
9276-
/**
9277-
* <p>The name of the work team to delete.</p>
9278-
*/
9279-
WorkteamName: string | undefined;
9280-
}
9353+
/**
9354+
* @internal
9355+
*/
9356+
export const ProductionVariantFilterSensitiveLog = (obj: ProductionVariant): any => ({
9357+
...obj,
9358+
});
92819359

92829360
/**
92839361
* @internal
@@ -11215,10 +11293,3 @@ export const DeleteWorkforceRequestFilterSensitiveLog = (obj: DeleteWorkforceReq
1121511293
export const DeleteWorkforceResponseFilterSensitiveLog = (obj: DeleteWorkforceResponse): any => ({
1121611294
...obj,
1121711295
});
11218-
11219-
/**
11220-
* @internal
11221-
*/
11222-
export const DeleteWorkteamRequestFilterSensitiveLog = (obj: DeleteWorkteamRequest): any => ({
11223-
...obj,
11224-
});

0 commit comments

Comments
 (0)