@@ -18,3 +18,50 @@ def get_groups(self, username: str):
1818 return []
1919 belonged_groups = [k ['GroupName' ] for k in response ['Groups' ]]
2020 return belonged_groups
21+
22+ def add_user_to_group (self , username : str , group_name : str ):
23+ # https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/cognito-idp/client/admin_add_user_to_group.html
24+
25+ response = self .__cognito .admin_add_user_to_group (
26+ UserPoolId = self .__user_pool_id ,
27+ Username = username ,
28+ GroupName = group_name ,
29+ )
30+ if response ['ResponseMetadata' ]['HTTPStatusCode' ] != 200 :
31+ raise RuntimeError (response )
32+ return response
33+
34+ def remove_user_from_group (self , username : str , group_name : str ):
35+ # https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/cognito-idp/client/admin_remove_user_from_group.html
36+ response = self .__cognito .admin_remove_user_from_group (
37+ UserPoolId = self .__user_pool_id ,
38+ Username = username ,
39+ GroupName = group_name ,
40+ )
41+ if response ['ResponseMetadata' ]['HTTPStatusCode' ] != 200 :
42+ raise RuntimeError (response )
43+ return response
44+
45+ def add_group (self , group_name : str ):
46+ # https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/cognito-idp/client/create_group.html
47+ response = self .__cognito .create_group (
48+ GroupName = group_name ,
49+ UserPoolId = self .__user_pool_id ,
50+ # Description='NA',
51+ # RoleArn='string',
52+ )
53+ if response ['ResponseMetadata' ]['HTTPStatusCode' ] != 200 :
54+ raise RuntimeError (response )
55+ return response
56+
57+ def delete_group (self , group_name : str ):
58+ # https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/cognito-idp/client/delete_group.html
59+ response = self .__cognito .delete_group (
60+ GroupName = group_name ,
61+ UserPoolId = self .__user_pool_id ,
62+ # Description='NA',
63+ # RoleArn='string',
64+ )
65+ if response ['ResponseMetadata' ]['HTTPStatusCode' ] != 200 :
66+ raise RuntimeError (response )
67+ return response
0 commit comments