-
Notifications
You must be signed in to change notification settings - Fork 7.6k
Add Get-SecureRandom
cmdlet
#19587
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add Get-SecureRandom
cmdlet
#19587
Conversation
src/Microsoft.PowerShell.Commands.Utility/commands/utility/GetSecureRandomCommand.cs
Outdated
Show resolved
Hide resolved
src/Microsoft.PowerShell.Commands.Utility/commands/utility/GetSecureRandomCommand.cs
Outdated
Show resolved
Hide resolved
Is "Secure" right term if "strong crypto" is assumed? Maybe "Get-StrongRandom". |
Why not just emit a warning if the |
@MartinGC94 I considered adding a warning when @iSazonov I chose |
test/powershell/Modules/Microsoft.PowerShell.Utility/Get-SecureRandom.Tests.ps1
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
src/Microsoft.PowerShell.Commands.Utility/commands/utility/GetSecureRandomCommand.cs
Outdated
Show resolved
Hide resolved
src/Microsoft.PowerShell.Commands.Utility/commands/utility/GetSecureRandomCommand.cs
Outdated
Show resolved
Hide resolved
src/Microsoft.PowerShell.Commands.Utility/commands/utility/GetSecureRandomCommand.cs
Outdated
Show resolved
Hide resolved
…eRandom.Tests.ps1 Co-authored-by: James Truher [MSFT] <[email protected]>
src/Microsoft.PowerShell.Commands.Utility/commands/utility/GetRandomCommandBase.cs
Show resolved
Hide resolved
This PR has Quantification details
Why proper sizing of changes matters
Optimal pull request sizes drive a better predictable PR flow as they strike a
What can I do to optimize my changes
How to interpret the change counts in git diff output
Was this comment helpful? 👍 :ok_hand: :thumbsdown: (Email) |
🎉 Handy links: |
PR Summary
Add a
Get-SecureRandom
cmdlet which does not expose a-SetSeed
parameter ensuring results are always cryptographically secure.Get-Random
is derived from this cmdlet and maintains the-SetSeed
parameter. The only changes to the move of code fromGetRandomCommand
is changing some members to internal from private so thatGet-Random
can call them.The tests are a copy of the
Get-Random
tests removing the-SetSeed
tests and adding a specific test to ensure that parameter doesn't exist.PR Context
Users of
Get-Random
who use-SetSeed
may mistakenly think they are cryptographically secure but is not since a seed is used. This new cmdlet makes it easy to not make this mistake.PR Checklist
.h
,.cpp
,.cs
,.ps1
and.psm1
files have the correct copyright headerWIP:
or[ WIP ]
to the beginning of the title (theWIP
bot will keep its status check atPending
while the prefix is present) and remove the prefix when the PR is ready.Get-SecureRandom
cmdlet MicrosoftDocs/PowerShell-Docs#10041(which runs in a different PS Host).