Skip to content

Commit 4eb6d1d

Browse files
authored
Merge pull request #376 from Venafi/cyberark-rebrand
2 parents 4009e1b + 50a44bd commit 4eb6d1d

15 files changed

+1681
-12
lines changed

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
11
.vscode
22
.DS_Store
33
Output
4+
.venv

README.md

Lines changed: 14 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
<img src="images/CyberArk_Logo_Horizontal_White_Tag-No-R.svg#only-dark" alt="CyberArk"/>
44
</p>
55

6-
# VenafiPS - Automate your CyberArk Certificate Manager (Venafi TLS Protect) Self-Hosted and SaaS platforms!
6+
# VenafiPS - Automate your CyberArk Certificate Manager Self-Hosted and SaaS platforms!
77

88
[![CI](https://github.com/Venafi/VenafiPS/actions/workflows/ci.yml/badge.svg)](https://github.com/Venafi/VenafiPS/actions/workflows/ci.yml)
99
[![Deployment](https://github.com/Venafi/VenafiPS/actions/workflows/cd.yml/badge.svg?branch=main)](https://github.com/Venafi/VenafiPS/actions/workflows/cd.yml)
@@ -22,18 +22,26 @@ VenafiPS works on PowerShell v5.1 as well as cross-platform PowerShell on Window
2222

2323
## Install Module
2424

25+
### Online
26+
2527
VenafiPS is published to the PowerShell Gallery. The most recent version is listed in the badge 'powershell gallery' above and can be viewed by clicking on it. To install the module, you need to have PowerShell installed first. On Windows, Windows PowerShell will already be installed, but is recommended to [install the latest version](https://learn.microsoft.com/en-us/powershell/scripting/install/installing-powershell-on-windows) of cross-platform PowerShell. For [Linux](https://docs.microsoft.com/en-us/powershell/scripting/install/installing-powershell-core-on-linux?view=powershell-7) or [macOS](https://docs.microsoft.com/en-us/powershell/scripting/install/installing-powershell-core-on-macos?view=powershell-7), you will need to install PowerShell; follow those links for guidance. Once PowerShell is installed, start a PowerShell prompt and execute `Install-Module -Name VenafiPS` which will install from the gallery.
2628

2729
> :warning: If using an older operating system, eg. Windows Server 2016, and you receive errors downloading/installing nuget when attempting to install VenafiPS, your SSL/TLS version is most likely at the default and will not work. Execute the following before installing the module,
2830
``` powershell
2931
[System.Net.ServicePointManager]::SecurityProtocol = [System.Net.SecurityProtocolType]::Tls12
3032
```
3133

34+
### Offline
35+
36+
If you are on a server without internet access or unable to reach/install from the PowerShell Gallery, a downloadable copy of the module is available as a fallback; this can be found at [Releases](https://github.com/Venafi/venafips/releases). Download VenafiPS.zip from the latest release, extract, and execute the following from a PowerShell prompt, `Import-Module <unzipped-path>/VenafiPS.psd1 -Force`.
37+
3238
### Additional Modules
3339

3440
- If running on Windows with PowerShell v5, multithreading is supported with [Microsoft.PowerShell.ThreadJob](https://github.com/PowerShell/ThreadJob), a Microsoft PowerShell module. Install this via `Install-Module -Name Microsoft.PowerShell.ThreadJob` for increased performance on the functions that support it. Version 2.1.0 has been tested.
3541
- There are a few SaaS functions which require Sodium encryption. These functions require the `PSSodium` module be installed from the PowerShell Gallery via `Install-Module -Name PSSodium`; version 0.4.2 has been tested. Optionally, you can provide `-Force` to the VenafiPS function for the module to be automatically installed. Also for those functions, on Windows, the latest C++ runtime must be installed.
3642

43+
As some users are on Self-Hosted and others on SaaS, it was decided to not include these modules by default.
44+
3745
## Usage
3846

3947
As the module supports both Self-Hosted and SaaS, you will note different names for the functions. Functions with `-Vdc` are for Self-Hosted only, `-Vc` are for SaaS only, and `-Venafi` are for both. You can easily see the available commands for each platform with
@@ -127,13 +135,16 @@ Most of the same functionality from the above examples exist for SaaS as well.
127135

128136
## Token/Key Secret Storage
129137

130-
To securely store and retrieve secrets, VenafiPS has added support for the [PowerShell SecretManagement module](https://github.com/PowerShell/SecretManagement). This can be used to store your access tokens, refresh tokens, or vaas key. To use this feature, a vault will need to be created. You can use [SecretStore](https://github.com/PowerShell/SecretStore) provided by the PowerShell team or any other vault type. All of this functionality has been added to `New-VenafiSession`. To prepare your environment, execute the following:
138+
To securely store and retrieve secrets, VenafiPS has added support for the [PowerShell SecretManagement module](https://github.com/PowerShell/SecretManagement). This can be used to store your access tokens, refresh tokens, or vaas key. To use this feature, a vault will need to be created. You can use [SecretStore](https://github.com/PowerShell/SecretStore) provided by the PowerShell team or any other vault type. All of this functionality has been added to `New-VenafiSession`.
139+
140+
To prepare your environment, execute the following:
141+
131142
- `Install-Module Microsoft.PowerShell.SecretManagement`
132143
- `Install-Module Microsoft.PowerShell.SecretStore` or whichever vault you would like to use
133144
- `Register-SecretVault -Name VenafiPS -ModuleName Microsoft.PowerShell.SecretStore`. If you are using a different vault type, replace the value for `-ModuleName`.
134145
- If using the vault Microsoft.PowerShell.SecretStore, execute `Set-SecretStoreConfiguration -Authentication None -Confirm:$false`. Note, although the vault authentication is set to none, this just turns off the password required to access the vault, it does not mean your secrets are not encrypted. This is required for automation purposes. If using a different vault type, ensure you turn off any features which inhibit automation.
135146
- Check out the help for `New-VenafiSession` for the many ways you can store and retrieve secrets from the vault, but the easiest way to get started is:
136-
- `New-VenafiSession -Server my.venafi.com -Credential $myCred -ClientId MyApp -Scope $scope -VaultRefreshTokenName mytoken`. This will create a new token based session and store the refresh token in the vault. The server and clientid will be stored with the refresh token as metadata. Scope does not need to be stored as it is inherent in the token.
147+
- `New-VenafiSession -Server cmsh.company.com -Credential $myCred -ClientId MyApp -Scope $scope -VaultRefreshTokenName mytoken`. This will create a new token based session and store the refresh token in the vault. The server and clientid will be stored with the refresh token as metadata. Scope does not need to be stored as it is inherent in the token.
137148
- To create a new session going forward, `New-VenafiSession -VaultRefreshTokenName mytoken`. This will retrieve the refresh token and associated metadata from the vault, retrieve a new access token based on that refresh token and create a new session.
138149

139150
Note, extension vaults are registered to the current logged in user context, and will be available only to that user (unless also registered to other users).

docs/assets/css/branding.css

Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,68 @@
1+
/* ==========================
2+
BRAND TOKENS
3+
========================== */
4+
:root {
5+
6+
/* Company Colors */
7+
--cyberark-navy: #082233; /* 30% Bkg, Highlight Bkg, Workmark, Headlines, Subtitles, Body Copy, Eyebrow Copy, logo, Mark, infographics, iconography, badges, CTAs, section dividers */
8+
--cyberark-white: #FFFFFF; /* 30% Background */
9+
--primary-white: var(--cyberark-white); /* Generic white */
10+
--cyberark-electric-cyan: #29B5E8; /* 13% Highlight Bkg, Mark, Headline (on dark), Subtitles (on dark), Border accents, infographics, iconography, Badges, CTAs, Section dividers */
11+
--cyberark-bright-chartreuse: #D6F77A; /* 12% Border accents, Headline Accents (on dark), Subtitle highlights (on Dark), infographics, Iconography, Badges */
12+
--cyberark-amethyst: #8874FF; /* 5% Infographics, Iconography, Quote Graphic device, Infographics, Eyebrow Underlines, Badges */
13+
--cyberark-sand: #E8E8E3; /* 5% Highlight backgrounds, Backgrounds, Section Divders */
14+
--cyberark-slate: #5383A2; /* 5% Headlines, subtitles, Callouts, Section Dividers */
15+
16+
/* Foreground colors (light scheme) */
17+
--primary-color: var(--cyberark-navy);
18+
--secondary-color: var(--cyberark-electric-cyan);
19+
--third-color: var(--cyberark-bright-chartreuse);
20+
--fourth-color: var(--cyberark-amethyst);
21+
--fifth-color: var(--cyberark-slate);
22+
23+
/* Background colors (light scheme) */
24+
--primary-background: var(--primary-white);
25+
--secondary-background: var(--cyberark-sand);
26+
--third-background: color-mix(in oklch, var(--cyberark-electric-cyan), var(--primary-white) 95%);
27+
28+
/* Define variants of core colors using math */
29+
--lighten-step: 20%; /* Determines the step size for the color lightening math below */
30+
31+
--primary-80: color-mix(in oklch, var(--primary-color), var(--primary-white) var(--lighten-step));
32+
--primary-60: color-mix(in oklch, var(--primary-color), var(--primary-white) calc(var(--lighten-step) * 2));
33+
--primary-40: color-mix(in oklch, var(--primary-color), var(--primary-white) calc(var(--lighten-step) * 3));
34+
--primary-20: color-mix(in oklch, var(--primary-color), var(--primary-white) calc(var(--lighten-step) * 4));
35+
36+
--secondary-80: color-mix(in oklch, var(--secondary-color), var(--primary-white) var(--lighten-step));
37+
--secondary-60: color-mix(in oklch, var(--secondary-color), var(--primary-white) calc(var(--lighten-step) * 2));
38+
--secondary-40: color-mix(in oklch, var(--secondary-color), var(--primary-white) calc(var(--lighten-step) * 3));
39+
--secondary-20: color-mix(in oklch, var(--secondary-color), var(--primary-white) calc(var(--lighten-step) * 4));
40+
41+
--third-80: color-mix(in oklch, var(--third-color), var(--primary-white) var(--lighten-step));
42+
--third-60: color-mix(in oklch, var(--third-color), var(--primary-white) calc(var(--lighten-step) * 2));
43+
--third-40: color-mix(in oklch, var(--third-color), var(--primary-white) calc(var(--lighten-step) * 3));
44+
--third-20: color-mix(in oklch, var(--third-color), var(--primary-white) calc(var(--lighten-step) * 4));
45+
46+
--fourth-80: color-mix(in oklch, var(--fourth-color), var(--primary-white) var(--lighten-step));
47+
--fourth-60: color-mix(in oklch, var(--fourth-color), var(--primary-white) calc(var(--lighten-step) * 2));
48+
--fourth-40: color-mix(in oklch, var(--fourth-color), var(--primary-white) calc(var(--lighten-step) * 3));
49+
--fourth-20: color-mix(in oklch, var(--fourth-color), var(--primary-white) calc(var(--lighten-step) * 4));
50+
51+
52+
--fifth-80: color-mix(in oklch, var(--fifth-color), var(--primary-white) var(--lighten-step));
53+
--fifth-60: color-mix(in oklch, var(--fifth-color), var(--primary-white) calc(var(--lighten-step) * 2));
54+
--fifth-40: color-mix(in oklch, var(--fifth-color), var(--primary-white) calc(var(--lighten-step) * 3));
55+
--fifth-20: color-mix(in oklch, var(--fifth-color), var(--primary-white) calc(var(--lighten-step) * 4));
56+
57+
/* CyberArk Docs colors - These aren't official, but I found them used on their docs site. */
58+
/* START - Don't use, as they are for reference */
59+
60+
--alternate-background: #FCFCFC;
61+
--cyberark-menu-blue: #3165BD;
62+
--cyberark-menu-gray: #333333;
63+
--cyberark-link-blue: #047AD4;
64+
--cyberark-text-black: #000000;
65+
--cyberark-table-header-background: #F3F6F9;
66+
--cyberark-table-header-border: #DDD;
67+
/* END - Don't use */
68+
}
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
/* ### FONTS *### */
2+
@font-face {
3+
font-family: "PublicSans";
4+
src: url("/assets/css/fonts/PublicSans[wght].woff2") format("woff2");
5+
font-weight: 100 900;
6+
font-style: normal;
7+
font-display: swap;
8+
}
9+
@font-face {
10+
font-family: "PublicSans";
11+
src: url("/assets/css/fonts/PublicSans-Italic[wght].woff2") format("woff2");
12+
font-weight: 100 900;
13+
font-style: italic;
14+
font-display: swap;
15+
}
16+
@font-face {
17+
font-family: "RobotoMono";
18+
src: url("/assets/css/fonts/RobotoMono[wght].woff2") format("woff2");
19+
font-weight: 100 700;
20+
font-style: normal;
21+
font-display: swap;
22+
}
23+
@font-face {
24+
font-family: "RobotoMono";
25+
src: url("/assets/css/fonts/RobotoMono-Italic[wght].woff2") format("woff2");
26+
font-weight: 100 700;
27+
font-style: italic;
28+
font-display: swap;
29+
}

0 commit comments

Comments
 (0)