QcloudCVMFullAccess and QcloudAPIFullAccess preset policies.python --version
yum install python3
sudo apt install python3
python --version
test.py file on the target machine and enter the following code:import jsonfrom tencentcloud.common import credentialfrom tencentcloud.common.profile.client_profile import ClientProfilefrom tencentcloud.common.profile.http_profile import HttpProfilefrom tencentcloud.common.exception.tencent_cloud_sdk_exception import TencentCloudSDKExceptionfrom tencentcloud.cvm.v20170312 import cvm_client, models# By default, the environment variables `TENCENTCLOUD_SECRET_ID` and `TENCENTCLOUD_SECRET_KEY` are read to get the `SecretId` and `SecretKey`.# For information about more credential management methods, see https://github.com/TencentCloud/tencentcloud-sdk-python#%E5%87%AD%E8%AF%81%E7%AE%A1%E7%90%86cred = credential.EnvironmentVariableCredential().get_credential()httpProfile = HttpProfile()httpProfile.endpoint = "cvm.tencentcloudapi.com"clientProfile = ClientProfile()clientProfile.httpProfile = httpProfile# Nanjing is used in this example. Modify the region according to actual situation. For example, in the case of Shanghai, change the region to `ap-shanghai`.aria = 'ap-nanjing'client = cvm_client.CvmClient(cred,aria, clientProfile)def img_share(img_id,img_name,accountids):try:req1 = models.ModifyImageSharePermissionRequest()params1 = {"ImageId": img_id,"AccountIds": accountids,"Permission": "SHARE"}req1.from_json_string(json.dumps(params1))resp1 = client.ModifyImageSharePermission(req1)response1 = json.loads(resp1.to_json_string())print(img_name,'Shared successfully!',response1)except TencentCloudSDKException as err:print(img_name,'Sharing failed!',err)try:req = models.DescribeImagesRequest()params = {"Filters": [{"Name": "image-type","Values": ["PRIVATE_IMAGE"]}],"Limit": 100}req.from_json_string(json.dumps(params))resp = client.DescribeImages(req)response = json.loads(resp.to_json_string())img_num = response["TotalCount"]print('Obtaining the image list...')share_config = input('1. Share all images\\n\\n2. Manually determine the images to share\\n\\n Enter 1 or 2 and press the Enter key. Default value: 2:') or '2'accountids = input('Enter the UINs of users with whom the images are to share, and separate the UINs with commas:').split(",")for i in range(img_num):basic = response['ImageSet'][i]img_id = basic['ImageId']img_name = basic['ImageName']if share_config == '1':img_share(img_id,img_name,accountids)elif share_config == '2':print('Image ID: ',img_id,'Image name: ',img_name)share_choice = input('Whether to share this image y/n:') or 'y'if share_choice == 'y':img_share(img_id,img_name,accountids)elif share_choice == 'n':continueelse:print('Please specify a correct option!')else:print('Please specify a correct option!')except TencentCloudSDKException as err:print(err)
python test.py
Feedback