如何修改Azure Storage Emulator存储路径以解决AD用户名含点号报错问题
可行解决方案
方案1:修改Azure Storage Emulator默认存储路径
- 先完全关闭Azure Storage Explorer和Storage Emulator,打开任务管理器确认后台无
AzureStorageEmulator.exe运行进程 - 进入Storage Emulator默认安装目录:
C:\Program Files (x86)\Microsoft SDKs\Azure\Storage Emulator - 用管理员权限打开配置文件
AzureStorageEmulator.exe.config - 找到配置节点
<StorageEmulator>下的Path参数,将默认的用户目录路径修改为不含点号的自定义路径,例如D:\AzureEmulatorStorage,修改前需手动创建对应文件夹 - 保存配置文件后,打开cmd进入Storage Emulator安装目录,执行初始化命令:
AzureStorageEmulator.exe init /forceCreate - 初始化完成后执行启动命令:
AzureStorageEmulator.exe start,再打开Storage Explorer即可正常读取本地Blob资源
如果需要保留原有测试数据,可在修改路径后,将原用户目录下的Storage Emulator存储文件全部复制到新路径,再启动服务即可
方案2:替换为Azurite本地存储模拟器(官方推荐长期兼容方案)
旧版Azure Storage Emulator已停止维护,微软官方推出的Azurite不存在用户名带点号的兼容问题,且接口完全兼容旧版emulator,原有业务代码无需修改:
- 关闭旧版Storage Emulator避免端口冲突
- 可通过npm直接全局安装:
npm install -g azurite,也可选择Docker镜像快速启动 - 执行启动命令时可自定义存储路径,示例:
azurite --location D:\AzuriteData - 启动后打开Azure Storage Explorer,即可直接识别到本地存储服务,原有配置无需调整
报错
The specified resource name contains invalid characters本质是旧版Storage Emulator解析路径时,将用户名中的点号误判为Blob资源名的非法字符,上述两种方案均可绕过这个逻辑缺陷,无需申请修改AD用户名。
内容的提问来源于stack exchange,提问作者ReiMasuro
相关产品推荐
相关产品推荐

