Skip to content

Commit 0a7442e

Browse files
authored
chore: kickoff release
2 parents c142c21 + aa1d240 commit 0a7442e

File tree

15 files changed

+365
-60
lines changed

15 files changed

+365
-60
lines changed

AmplifyPlugins/Analytics/Sources/AWSPinpointAnalyticsPlugin/Dependency/Pinpoint/Analytics/PinpointEvent+PinpointClientTypes.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ extension PinpointEvent {
2222
appTitle: Bundle.main.appName,
2323
appVersionCode: Bundle.main.appVersion,
2424
attributes: attributes,
25-
clientSdkVersion: AmplifyAWSServiceConfiguration.version,
25+
clientSdkVersion: AmplifyAWSServiceConfiguration.amplifyVersion,
2626
eventType: eventType,
2727
metrics: metrics,
2828
sdkName: AmplifyAWSServiceConfiguration.platformName,

AmplifyPlugins/Auth/Sources/AWSCognitoAuthPlugin/Actions/SignIn/SRPAuth/SRPSignInHelper.swift

Lines changed: 0 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -27,20 +27,4 @@ struct SRPSignInHelper {
2727
throw error
2828
}
2929
}
30-
31-
static func clientSecretHash(
32-
username: String,
33-
userPoolClientId: String,
34-
clientSecret: String
35-
) -> String {
36-
let clientSecretData = clientSecret.data(using: .utf8)!
37-
let clientSecretByteArray = [UInt8](clientSecretData)
38-
let key = SymmetricKey(data: clientSecretByteArray)
39-
40-
let clientData = (username + userPoolClientId).data(using: .utf8)!
41-
42-
let mac = HMAC<SHA256>.authenticationCode(for: clientData, using: key)
43-
let macBase64 = Data(mac).base64EncodedString()
44-
return macBase64
45-
}
4630
}
Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
//
2+
// Copyright Amazon.com Inc. or its affiliates.
3+
// All Rights Reserved.
4+
//
5+
// SPDX-License-Identifier: Apache-2.0
6+
//
7+
8+
import Foundation
9+
import CryptoKit
10+
11+
enum ClientSecretHelper {
12+
13+
static func calculateSecretHash(
14+
username: String,
15+
userPoolConfiguration: UserPoolConfigurationData
16+
) -> String? {
17+
let userPoolClientId = userPoolConfiguration.clientId
18+
if let clientSecret = userPoolConfiguration.clientSecret {
19+
20+
return Self.clientSecretHash(
21+
username: username,
22+
userPoolClientId: userPoolClientId,
23+
clientSecret: clientSecret
24+
)
25+
}
26+
return nil
27+
}
28+
29+
static func clientSecretHash(
30+
username: String,
31+
userPoolClientId: String,
32+
clientSecret: String
33+
) -> String {
34+
let clientSecretData = clientSecret.data(using: .utf8)!
35+
let clientSecretByteArray = [UInt8](clientSecretData)
36+
let key = SymmetricKey(data: clientSecretByteArray)
37+
38+
let clientData = (username + userPoolClientId).data(using: .utf8)!
39+
40+
let mac = HMAC<SHA256>.authenticationCode(for: clientData, using: key)
41+
let macBase64 = Data(mac).base64EncodedString()
42+
return macBase64
43+
}
44+
45+
}

AmplifyPlugins/Auth/Sources/AWSCognitoAuthPlugin/Support/Utils/ConfirmSignUpInput+Amplify.swift

Lines changed: 1 addition & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ extension ConfirmSignUpInput {
1717
) {
1818

1919
let configuration = environment.userPoolConfiguration
20-
let secretHash = Self.calculateSecretHash(
20+
let secretHash = ClientSecretHelper.calculateSecretHash(
2121
username: username,
2222
userPoolConfiguration: configuration)
2323
var userContextData: CognitoIdentityProviderClientTypes.UserContextDataType?
@@ -40,19 +40,4 @@ extension ConfirmSignUpInput {
4040
secretHash: secretHash,
4141
userContextData: userContextData, username: username)
4242
}
43-
44-
private static func calculateSecretHash(
45-
username: String,
46-
userPoolConfiguration: UserPoolConfigurationData) -> String? {
47-
let userPoolClientId = userPoolConfiguration.clientId
48-
if let clientSecret = userPoolConfiguration.clientSecret {
49-
50-
return SRPSignInHelper.clientSecretHash(
51-
username: username,
52-
userPoolClientId: userPoolClientId,
53-
clientSecret: clientSecret
54-
)
55-
}
56-
return nil
57-
}
5843
}

AmplifyPlugins/Auth/Sources/AWSCognitoAuthPlugin/Support/Utils/InitiateAuthInput+Amplify.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -109,7 +109,7 @@ extension InitiateAuthInput {
109109
let userPoolClientId = configuration.clientId
110110

111111
if let clientSecret = configuration.clientSecret {
112-
let clientSecretHash = SRPSignInHelper.clientSecretHash(
112+
let clientSecretHash = ClientSecretHelper.clientSecretHash(
113113
username: username,
114114
userPoolClientId: userPoolClientId,
115115
clientSecret: clientSecret

AmplifyPlugins/Auth/Sources/AWSCognitoAuthPlugin/Support/Utils/RespondToAuthChallengeInput+Amplify.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -116,7 +116,7 @@ extension RespondToAuthChallengeInput {
116116
let userPoolClientId = environment.userPoolConfiguration.clientId
117117
if let clientSecret = environment.userPoolConfiguration.clientSecret {
118118

119-
let clientSecretHash = SRPSignInHelper.clientSecretHash(
119+
let clientSecretHash = ClientSecretHelper.clientSecretHash(
120120
username: username,
121121
userPoolClientId: userPoolClientId,
122122
clientSecret: clientSecret

AmplifyPlugins/Auth/Sources/AWSCognitoAuthPlugin/Support/Utils/SignUpInput+Amplify.swift

Lines changed: 1 addition & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ extension SignUpInput {
2222
environment: UserPoolEnvironment) {
2323

2424
let configuration = environment.userPoolConfiguration
25-
let secretHash = Self.calculateSecretHash(username: username,
25+
let secretHash = ClientSecretHelper.calculateSecretHash(username: username,
2626
userPoolConfiguration: configuration)
2727
let validationData = Self.getValidationData(with: validationData)
2828
let convertedAttributes = Self.convertAttributes(attributes)
@@ -49,21 +49,6 @@ extension SignUpInput {
4949
validationData: validationData)
5050
}
5151

52-
private static func calculateSecretHash(
53-
username: String,
54-
userPoolConfiguration: UserPoolConfigurationData) -> String? {
55-
let userPoolClientId = userPoolConfiguration.clientId
56-
if let clientSecret = userPoolConfiguration.clientSecret {
57-
58-
return SRPSignInHelper.clientSecretHash(
59-
username: username,
60-
userPoolClientId: userPoolClientId,
61-
clientSecret: clientSecret
62-
)
63-
}
64-
return nil
65-
}
66-
6752
private static func getValidationData(with devProvidedData: [String: String]?)
6853
-> [CognitoIdentityProviderClientTypes.AttributeType]? {
6954

AmplifyPlugins/Auth/Sources/AWSCognitoAuthPlugin/Task/AWSAuthConfirmResetPasswordTask.swift

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -74,12 +74,18 @@ class AWSAuthConfirmResetPasswordTask: AuthConfirmResetPasswordTask {
7474
let analyticsMetadata = userPoolEnvironment
7575
.cognitoUserPoolAnalyticsHandlerFactory()
7676
.analyticsMetadata()
77+
let secretHash = ClientSecretHelper.calculateSecretHash(
78+
username: request.username,
79+
userPoolConfiguration: userPoolConfigurationData
80+
)
7781
let input = ConfirmForgotPasswordInput(
7882
analyticsMetadata: analyticsMetadata,
7983
clientId: userPoolConfigurationData.clientId,
8084
clientMetadata: clientMetaData,
8185
confirmationCode: request.confirmationCode,
82-
password: request.newPassword, userContextData: userContextData,
86+
password: request.newPassword,
87+
secretHash: secretHash,
88+
userContextData: userContextData,
8389
username: request.username)
8490

8591
_ = try await userPoolService.confirmForgotPassword(input: input)

AmplifyPlugins/Auth/Sources/AWSCognitoAuthPlugin/Task/AWSAuthResendSignUpCodeTask.swift

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -73,10 +73,15 @@ class AWSAuthResendSignUpCodeTask: AuthResendSignUpCodeTask {
7373
let analyticsMetadata = userPoolEnvironment
7474
.cognitoUserPoolAnalyticsHandlerFactory()
7575
.analyticsMetadata()
76+
let secretHash = ClientSecretHelper.calculateSecretHash(
77+
username: request.username,
78+
userPoolConfiguration: userPoolConfigurationData
79+
)
7680
let input = ResendConfirmationCodeInput(
7781
analyticsMetadata: analyticsMetadata,
7882
clientId: userPoolConfigurationData.clientId,
7983
clientMetadata: clientMetaData,
84+
secretHash: secretHash,
8085
userContextData: userContextData,
8186
username: request.username)
8287

AmplifyPlugins/Auth/Sources/AWSCognitoAuthPlugin/Task/AWSAuthResetPasswordTask.swift

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,10 +72,15 @@ class AWSAuthResetPasswordTask: AuthResetPasswordTask {
7272
let analyticsMetadata = userPoolEnvironment
7373
.cognitoUserPoolAnalyticsHandlerFactory()
7474
.analyticsMetadata()
75+
let secretHash = ClientSecretHelper.calculateSecretHash(
76+
username: request.username,
77+
userPoolConfiguration: userPoolConfigurationData
78+
)
7579
let input = ForgotPasswordInput(
7680
analyticsMetadata: analyticsMetadata,
7781
clientId: userPoolConfigurationData.clientId,
7882
clientMetadata: clientMetaData,
83+
secretHash: secretHash,
7984
userContextData: userContextData,
8085
username: request.username)
8186

0 commit comments

Comments
 (0)