-1
A
回答
0
通过使用Java获取存储帐户访问键,你可以使用Azure的REST API。 Java sdk可用,它可以让您轻松管理您的存储帐户。
要获取访问密钥,您需要使用存储帐户所在的资源组名称和存储帐户名称。一旦您使用这些信息取回您的存储帐户,称为“密钥”的方法会返回访问密钥。
List<StorageAccountKey> storageAccountKeys = storageAccount.keys();
Here是一个完整的文档样本。
问候
0
@Prit,您需要使用Azure存储服务管理SDK for Java来获得帐号键,请参阅下面的步骤。
- 创建一个自签名证书,并上传在标签的
SETTINGS
MANAGEMENT CERTIFICATES
在Azure上经典的门户网站,请参阅blog。
I.使用Java keytool创建证书,请参阅下面的命令。
密钥工具-genkeypair -alias MYDOMAIN -keyalg RSA -keystore WindowsAzureKeyStore.jks -keysize 2048 -storepass “test123”;
密钥工具-v -export -file d:\ WindowsAzureSMAPI.cer -keystore WindowsAzureKeyStore.jks -alias MYDOMAIN
您需要将这些依赖项添加到您的maven项目的pom.xml
文件中。
<!-- https://mvnrepository.com/artifact/com.microsoft.azure/azure-svc-mgmt -->
<dependency>
<groupId>com.microsoft.azure</groupId>
<artifactId>azure-svc-mgmt</artifactId>
<version>0.9.3</version>
</dependency>
<!-- https://mvnrepository.com/artifact/com.microsoft.azure/azure-svc-mgmt-storage -->
<dependency>
<groupId>com.microsoft.azure</groupId>
<artifactId>azure-svc-mgmt-storage</artifactId>
<version>0.9.3</version>
</dependency>
这是我的代码获取帐户密钥。
import org.xml.sax.SAXException;
import com.microsoft.windowsazure.Configuration;
import com.microsoft.windowsazure.core.utils.KeyStoreType;
import com.microsoft.windowsazure.exception.ServiceException;
import com.microsoft.windowsazure.management.configuration.ManagementConfiguration;
import com.microsoft.windowsazure.management.storage.StorageManagementClient;
import com.microsoft.windowsazure.management.storage.StorageManagementService;
import com.microsoft.windowsazure.management.storage.models.StorageAccountGetKeysResponse;
public class AccountKeys {
public static void main(String[] args) throws IOException, URISyntaxException, ServiceException, ParserConfigurationException, SAXException {
String uri = "https://management.core.windows.net/";
String subscriptionId = "<subscription-id>";
String keyStorePath = "<path>/WindowsAzureKeyStore.jks";
String keyStorePassword = "test123";
String storageName
Configuration config = ManagementConfiguration.configure(
new URI(uri),
subscriptionId,
keyStorePath, // the file path to the JKS
keyStorePassword, // the password for the JKS
KeyStoreType.jks // flags that I'm using a JKS keystore
);
StorageManagementClient client = StorageManagementService.create(config);
StorageAccountGetKeysResponse response = client.getStorageAccountsOperations().getKeys(storageName);
String pk = response.getPrimaryKey();
String sk = response.getSecondaryKey();
System.out.println(pk);
System.out.println(sk);
}
}
作为参考,相关的REST API是here。
+0
谢谢彼得。 Azure建议现在使用ARM而不是证书,因此应该有某种方法而不使用证书。 – Prit
相关问题
- 1. 无法以编程方式获取Azure存储帐户的密钥
- 2. c#以编程方式获取Azure存储帐户权限
- 3. 如何获取Azure存储帐户密钥
- 4. 如何以编程方式获取Azure存储端点URL?
- 5. 如何以编程方式在Java中生成并存储HMacSHA256密钥?
- 6. 使用Java从MacOS X密钥存储区获取私钥
- 7. 为什么Azure存储帐户有两个密钥?
- 8. Java:从编码密钥获取密钥
- 9. 以编程方式获取Gmail存储使用
- 10. 如何在android中以编程方式获取存储信息?
- 11. ARM - 如何从存储帐户获取访问密钥以便在稍后的模板中使用AppSettings?
- 12. 以编程方式更改java密钥库的密码
- 13. 如何使用Android密钥存储提供程序存储密钥
- 14. 如何以编程方式获取App使用的存储状态?
- 15. 使用门户将图像上传到Azure存储(不是以编程方式)
- 16. 如何以编程方式添加用户帐户策略?
- 17. 如何以编程方式将用户帐户添加到openDS?
- 18. 解密存储Java密钥存储
- 19. 如何以编程方式从库文件获取产品密钥标记?
- 20. 如何使用Java将映像从Azure存储帐户复制到ARM存储帐户?
- 21. objective C以编程方式从钥匙串中删除帐户
- 22. 是否可以使用密钥保管库对文件进行加密并使用“Azure存储数据移动库”将其存储在存储帐户中
- 23. 有没有办法以编程方式获取Azure AD客户端密钥的描述?
- 24. 如何以编程方式查找当前的Azure存储帐户数量和限制?
- 25. 以编程方式创建Outlook帐户
- 26. 以编程方式添加SIP帐户
- 27. 以编程方式注销Twitter帐户
- 28. 钥匙串来存储和读取用户名和密码
- 29. 以编程方式从iCloud帐户获取图像到Android应用程序
- 30. 存储帐户/密码
谢谢Thibaut。此示例似乎并未使用Azure提供的标准Java SDK。 – Prit