Azure-CLI/Powershell 密码要求

2023-12-28

所以我试图让一个变量与在 azure CLI 中创建虚拟机的密码要求相匹配

为此,它必须具有以下 3 个!大写字母、1 个小写字母、1 个特殊字符或数字

这是我试图更改的主要代码

$AdminPassword = Read-Host -Prompt "Please insert a Admin Password (Password must have 3 of the following: 1 lower case character, 1 upper case character, 1 number and 1 special character)"

这是我更改的代码,但无法正常工作

do 
    {
        $AdminPassword = Read-Host -Prompt "Please insert a Admin Password (Password must have the 3 of the following: 1 lower case character, 1 upper case character, 1 number and 1 special character)"
    }
    until($AdminPassword -Like "[A-Z][A-Z][A-Z][a-z][a-z][a-z][0-9][0-9][0-9][!@$#$%^&*()_+\-=\[\]{};'':"\\|,.<>\/? ][!@$#$%^&*()_+\-=\[\]{};'':"\\|,.<>\/? ][!@$#$%^&*()_+\-=\[\]{};'':"\\|,.<>\/? ]")
    Write Match

通过写入匹配线我知道它何时成功

the real trouble i have here is that i want all 4 of the requirements 3 times so 3 uppercase's 3 lowercase's etc and i also want to have the special characters but the # comments all the code that follows out like this

预先感谢您阅读本文并发布您的答案!


我不确定这是否可以只用一个正则表达式来完成.. 作为替代方案,下面是一个小辅助函数来进行测试。

function Test-AdminPassword {
    [CmdletBinding()]
    Param(
        [Parameter(Position = 0, Mandatory=$true)]
        [string]$Password,

        [Parameter(Position = 1)]
        [int]$Requirements = 5
    )
    $result = 0

    # test length between 12 and 24
    if ($Password.Length -in 12..24) {
        $result++
    }
    # test uppercase
    if (($Password -creplace '[^A-Z]', '').Length -ge 3) {
        $result++
    }
    # test lowercase
    if (($Password -creplace '[^a-z]', '').Length -ge 3) {
        $result++
    }
    # test digits
    if (($Password -replace '[^0-9]', '').Length -ge 3) {
        $result++
    }
    # test special characters
    if (($Password -creplace '[^!@$#%^&*()_+\-=\[\]{};'':"\\|,.<>\/? ]', '').Length -ge 3) {
        $result++
    }

    # return $true if the password complies with at least $requirements
    return ($result -ge $Requirements)
}

do {
    $AdminPassword = Read-Host -Prompt "Please insert an Admin Password (must have the 3 lower case characters, 3 upper case characters, 3 digits and 3 special characters)"
} until (Test-AdminPassword $AdminPassword)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Azure-CLI/Powershell 密码要求 的相关文章

随机推荐

  • Google Sheet API V4(Java) 在单元格中附加日期

    我尝试在单元格中添加日期 但工作表自动将值存储在带有单引号的字符串中 对于在日期中存储值 我们还尝试添加userEnteredFormat但这对我们不起作用 以下是附加请求 requests appendCells fields userE
  • 如何检查鼠标单击是否位于 JavaScript 中 HTML5 Canvas 上的旋转文本内?

    我已经在画布上以坐标 X Y 绘制了文本并保存了它们 我有一个简单的方法来检查鼠标单击是否发生在文本边界内 问题是当我将文本旋转 45 度时 我无法检查旋转文本中是否发生了鼠标单击 简而言之 如何检查鼠标单击是否在旋转的文本或形状内 创建一
  • 使用固定长度和空格填充格式化整数的正确方法

    我有 0 到 包括 100 范围内的整数 我想将它们转换为固定长度 3 的字符串 并带有空格填充和右侧对齐 我尝试使用以下格式字符串 但它为三位数添加了另一个空格 这使得它们的长度为 4 而不是 3 fmt lambda x 3d form
  • 如何在 java 中使用 org.json.JSONObject 将值设置为 null?

    如何在 java 中使用 org json JSONObject 将值设置为 null 我当然可以使用 isNull 读取值是否为 null 但似乎当我输入 null 时 它只是忽略我 JSONObject o new JSONObject
  • VS2017 RC - 尝试配置 IIS Express 时发生以下错误

    安装了 VS2017 RC 启动了新项目 ASP NET Core Web 应用程序 Net CORE 选择个人用户帐户作为身份验证类型 尝试运行不进行任何更改生成的代码 并收到以下错误 尝试为项目配置 IIS Express 时出错 错误
  • 无法从资源目录加载属性文件

    我从 Git 存储库导入了一个项目 并在 Eclipse 中为其添加了 Maven 性质 在资源文件夹中 我添加了一个名为的配置文件myconf properties 现在 每当我尝试从 Java 代码打开这个文件时 我都会得到FileNo
  • 来自 C# 自定义操作的 MsiSetProperty

    action1如何从 C 自定义操作中设置 MSI 属性 到目前为止我已经有了这个 但如何获取句柄 DllImport msi dll CharSet CharSet Unicode static extern int MsiSetProp
  • 获取VBA中的子目录列表

    我想获取目录中所有子目录的列表 如果这有效 我想将其扩展为递归函数 然而 我最初获取子目录的方法失败了 它只是显示包括文件在内的所有内容 sDir Dir sPath vbDirectory Do Until LenB sDir 0 Deb
  • 第三方应用程序中是否有用于图像编辑的 iOS API?

    从iOS 8开始 图库应用程序可以使用第三方图像编辑工具来编辑照片 是否有 API 允许我自己的应用程序使用相同的第三方应用程序在我的应用程序中进行图像编辑 UIDocumentInteractionController 似乎不允许这样做
  • org.xml.sax.SAXParseException:cvc-complex-type.2.4.c:匹配通配符严格

    org xml sax SAXParseException cvc complex type 2 4 c The matching wildcard is strict but no declaration can be found for
  • 查找未执行的 C++ 代码行

    作为单元测试的一部分 我想确保测试的代码覆盖率 目的是放置类似的东西REQUIRE TEST代码中某处的宏并检查是否所有这些都被调用 void foo bool b if b REQUIRE TEST else REQUIRE TEST v
  • 为什么内置 sum 在“from numpy import *”之后表现错误?

    我有一些代码 例如 import math csv sys re time datetime pickle os gzip from numpy import x 1 2 3 y sum x 实际值的总和x为2165496761 大于32位
  • 如何获取程序文件x86环境变量?

    我想知道如何在命令提示符中显示程序文件 x86 的位置 我使用的是 Windows 7 64 位 我试过了 echo programfiles x86 and echo programfiles 这两个输出C Program Files 当
  • WPF-如何获取绑定到 ListBoxItem 的对象

    这就是我想做的 我从数据库获取对象列表并将该列表绑定到 ListBox 控件 ListBoxItems 由一个文本框和一个按钮组成 这是我想出的 到目前为止 它按预期工作 该对象有许多属性 如 ID 名称 如果我单击 ListBoxItem
  • 用户授权 Java SE

    我需要创建具有不同用户角色 管理员和简单用户 的用户授权 管理员将拥有更多的功能 那么 我应该使用哪些类或引擎来实现对我的桌面应用程序的用户授权 我应该使用类javax security auth login 在桌面应用程序中实现授权的两种
  • 将私有文件写入内部存储

    我试图在内部存储上写入一些文件 我看到了FileOutputStream fos openFileOutput FILENAME Context MODE PRIVATE on 数据存储 http developer android com
  • 如何读取文件并将其重定向到变量?

    我有一个文件 上面写着一个字 我希望我的脚本将该词放入变量中 我怎样才能做到这一点 以数百万种方式 最简单的可能是 my var cat my file 如果你使用 bash 并且想要变得更漂亮 你可以使用 bash4 的映射文件 它将整个
  • 如何让容易出错的忽略我生成的源代码?

    我最近发现容易出错 http errorprone info并使用以下命令将其集成到我的 Android 版本中Gradle插件 https github com tbroyer gradle errorprone plugin在他们的页面
  • 服务器不随 spring 应用程序启动[重复]

    这个问题在这里已经有答案了 尝试运行 Spring Temple 项目时收到此错误消息 不知道为什么 有什么建议 这是控制台的完整日志 INFO The APR based Apache Tomcat Native library whic
  • Azure-CLI/Powershell 密码要求

    所以我试图让一个变量与在 azure CLI 中创建虚拟机的密码要求相匹配 为此 它必须具有以下 3 个 大写字母 1 个小写字母 1 个特殊字符或数字 这是我试图更改的主要代码 AdminPassword Read Host Prompt