Private/Set-CIEMSecret.ps1

function Set-CIEMSecret {
    <#
    .SYNOPSIS
        Stores a secret in PSU's Secret: drive.

    .DESCRIPTION
        Safe wrapper for setting PSU secrets. Does nothing when not running
        in PSU context. Avoids parse-time errors from $Secret: variable syntax.

    .PARAMETER Name
        The secret name (without 'Secret:' prefix).

    .PARAMETER Value
        The secret value to store.

    .EXAMPLE
        Set-CIEMSecret 'CIEM_Azure_ClientSecret' $clientSecret
    #>

    [CmdletBinding()]
    param(
        [Parameter(Mandatory, Position = 0)]
        [string]$Name,

        [Parameter(Mandatory, Position = 1)]
        [string]$Value
    )

    $inPSUContext = $null -ne (Get-PSDrive -Name 'Secret' -ErrorAction SilentlyContinue)
    if ($inPSUContext) {
        Set-Item -Path "Secret:$Name" -Value $Value -ErrorAction SilentlyContinue
    }
}