Guest User

Untitled

a guest
Jan 19th, 2019
159
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.57 KB | None | 0 0
  1. const AWS = require('aws-sdk');
  2. const aws_access_key_id = "aws_access_key_id";
  3. const aws_secret_access_key = "aws_secret_access_key";
  4. const region = "region";
  5. const UserPoolId = "UserPoolId";
  6. const ClientId = "ClientId";
  7.  
  8. AWS.config.update({
  9. accessKeyId: aws_access_key_id,
  10. secretAccessKey: aws_secret_access_key,
  11. region: region
  12. });
  13.  
  14. var cognitoServiceProvider = new AWS.CognitoIdentityServiceProvider();
  15.  
  16. function initiateLogin(username, password) {
  17. let params = {
  18. AuthFlow: "ADMIN_NO_SRP_AUTH",
  19. ClientId: ClientId,
  20. UserPoolId: UserPoolId,
  21. AuthParameters: {
  22. 'USERNAME': username,
  23. "PASSWORD": password
  24. }
  25. };
  26.  
  27. return new Promise((resolve, reject) => {
  28. cognitoServiceProvider.adminInitiateAuth(params, (err, data) => {
  29. if (err) {
  30. reject(new Error(err));
  31. } else {
  32. resolve(data);
  33. }
  34. });
  35. });
  36. }
  37.  
  38.  
  39. function confirmLogin(username, confirmationcode, session) {
  40. var params = {
  41. ChallengeName: "SMS_MFA",
  42. ClientId: ClientId,
  43. UserPoolId: UserPoolId,
  44. ChallengeResponses: {
  45. 'USERNAME': username,
  46. 'SMS_MFA_CODE': confirmationcode
  47. },
  48. Session: session
  49. };
  50.  
  51. return new Promise((resolve, reject) => {
  52. cognitoServiceProvider.adminRespondToAuthChallenge(params, function (err, data) {
  53. if (err) reject(new Error(err));
  54. else resolve(data);
  55. });
  56. });
  57. }
  58.  
  59. function verifyUserAttribute(username, confirmationcode, accessToken) {
  60. var params = {
  61. AccessToken: accessToken,
  62. AttributeName: 'phone_number',
  63. Code: confirmationcode
  64. };
  65. return new Promise((resolve, reject) => {
  66. cognitoServiceProvider.verifyUserAttribute(params, function (err, data) {
  67. if (err) reject(new Error(err));
  68. else resolve(data);
  69. });
  70. });
  71. }
  72.  
  73. function adminSetUserMFAPreference(username) {
  74. let params = {
  75. UserPoolId: UserPoolId,
  76. Username: username,
  77. SMSMfaSettings: {
  78. Enabled: true,
  79. PreferredMfa: true
  80. }
  81. };
  82. return new Promise((resolve, reject) => {
  83. cognitoServiceProvider.adminSetUserMFAPreference(params, (err, data) => {
  84. if (err) reject(new Error(err));
  85. else resolve(data);
  86. });
  87. })
  88. }
  89.  
  90. function updateUserAttributes(username, phonenumber) {
  91. let params = {
  92. UserAttributes: [{
  93. Name: 'phone_number',
  94. Value: phonenumber
  95. }],
  96. UserPoolId: UserPoolId,
  97. Username: username
  98. };
  99. return new Promise((resolve, reject) => {
  100. cognitoServiceProvider.adminUpdateUserAttributes(params, (err, data) => {
  101. if (err) reject(new Error(err));
  102. else resolve(data);
  103. });
  104. })
  105. }
  106.  
  107. function getUserAttributeVerificationCode(accessToken) {
  108. var params = {
  109. AccessToken: accessToken,
  110. AttributeName: 'phone_number'
  111. };
  112. return new Promise((resolve, reject) => {
  113. cognitoServiceProvider.getUserAttributeVerificationCode(params, function (err, data) {
  114. if (err) reject(err);
  115. else resolve(data);
  116. });
  117. })
  118. }
  119.  
  120. function signUp(username, password) {
  121. var params = {
  122. ClientId: ClientId,
  123. Username: username,
  124. Password: password,
  125. UserAttributes: [{
  126. Name: 'email',
  127. Value: username
  128. }]
  129. };
  130.  
  131. return new Promise((resolve, reject) => {
  132. cognitoServiceProvider.signUp(params, (err, data) => {
  133. if (err) reject(new Error(err));
  134. else resolve(data);
  135. });
  136. })
  137. };
  138.  
  139. function confirmSignup(username, confirmationCode) {
  140. var params = {
  141. ClientId: ClientId,
  142. ConfirmationCode: confirmationCode,
  143. Username: username
  144. };
  145.  
  146. return new Promise((resolve, reject) => {
  147. cognitoServiceProvider.confirmSignUp(params, (err, data) => {
  148. if (err) p.reject(new Error(err));
  149. else resolve(data);
  150. });
  151. });
  152. }
  153.  
  154. function forgotPassword(username) {
  155. var params = {
  156. ClientId: ClientId,
  157. Username: username
  158. };
  159.  
  160. return new Promise((resolve, reject) => {
  161. cognitoServiceProvider.forgotPassword(params, (err, data) => {
  162. if (err) reject(new Error(err))
  163. else resolve(data)
  164. });
  165. });
  166. }
  167.  
  168. function confirmForgotPassword(username, confirmationcode, password) {
  169. var params = {
  170. ClientId: ClientId,
  171. ConfirmationCode: confirmationcode,
  172. Password: password,
  173. Username: username,
  174. };
  175. return new Promise((resolve, reject) => {
  176. cognitoServiceProvider.confirmForgotPassword(params, function (err, data) {
  177. if (err) return err;
  178. else return data;
  179. });
  180. })
  181. }
  182.  
  183. function resendConfirmationCode(data) {
  184. var params = {
  185. ClientId: ClientId,
  186. Username: data.username
  187. };
  188. return new Promise((resolve, reject) => {
  189. cognitoServiceProvider.resendConfirmationCode(params, (err, data) => {
  190. if (err) reject(new Error(err));
  191. else resolve(data);
  192. });
  193. })
  194. }
Add Comment
Please, Sign In to add comment