-
Luke Glasscock authoredLuke Glasscock authored
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
IronBank.vue 16.11 KiB
<template>
<div class="iron-bank">
<PageHeader
title="Iron Bank"
subtext
description="Iron Bank is Platform One's authorized, hardened, and approved container repository that supports the end to end lifecycle needed for modern software development."
buttonText="Visit the Website"
buttonUrl="https://ironbank.dso.mil"
buttonTarget="_blank"
:logoSource="ibLogo"
/>
<v-container class="px-md-8 px-auto">
<v-container class="px-md-16">
<h2 class="my-3 mx-md-16 mx-auto">
Why Iron Bank?
</h2>
<div class="row text-left px-xl-16">
<div class="col-md-6 mb-n10 mb-md-0">
<ul>
<li>
Automates, secures, and accelerates the approval process of
commercial and open source containers to be used within the DoD
with DoD-wide reciprocity
</li>
<li>
Brings accredited software to the DoD using processes and
procedures that are faster and more efficient than other methods
</li>
<li>Provides continuous monitoring of approved images</li>
<li>
Maintains continuously updated containers so that developers
have access to the latest tools
</li>
<li>
Provides a toolbox of commonly used and secured capabilities for
mission apps
</li>
</ul>
</div>
<div class="col-md-6">
<ul>
<li>
Provides end-to-end management of container justifications for
known vulnerabilities and container approval process via
Vulnerability Assessment Tool (VAT)
</li>
<li>Assists vendors with the hardening process of containers</li>
<li>
The
<a
href="https://ironbank.dso.mil/ironbank/repomap"
target="_blank"
>Iron Bank</a
>
website offers a view of all approved applications and provides
any necessary details in regards to the application
</li>
<li>
<a href="https://registry1.dso.mil" target="_blank"
>Registry One</a
>
is a fully compliant Open Container Initiative registry. All
containers found under the Iron Bank project are guaranteed to
be approved
</li>
<li>
<a href="https://repo1.dso.mil/dsop" target="_blank"
>Repo One</a
>
is the central repository for the source code to create hardened
and evaluated containers for the DoD
</li>
</ul>
</div>
</div>
</v-container>
<div class="row justify-center mt-14">
<div
class="col-md-10 white--text pa-md-12"
style="border-radius:10px; height:100%;width:100%;background-color: #031726 !important;"
>
<div class="row">
<div class="col-md-7 text-left pr-md-16 pa-12 pa-md-0">
<h2 class="ma-auto px-0 pb-10 white--text">
Process Highlights
</h2>
<p>
The Iron Bank approval process centralizes and standardizes
application hardening throughout the DoD. This information is
stored in Repo One.
</p>
<div class="row">
<div class="col-6 col-md-3" style="font-size:14px;">
<img
class="img-fluid mt-2 mb-3"
src="@/assets/images/iron-bank/rescan-icon.png"
alt="earth icon"
/>
<p>
Every 12 hours applications are built and scanned again for
findings
</p>
</div>
<div class="col-6 col-md-3" style="font-size:14px;">
<img
class="img-fluid mb-2"
src="@/assets/images/iron-bank/continuous-update.png"
alt="continuous update icon"
/>
<p>
Applications are continuously updated to the latest version
</p>
</div>
<div class="col-6 col-md-3" style="font-size:14px;">
<img
class="img-fluid mb-2"
src="@/assets/images/iron-bank/earth.png"
alt="earth icon"
/>
<p>
Body of evidence that is public facing and readily available
for use
</p>
</div>
<div class="col-6 col-md-3" style="font-size:14px;">
<img
class="img-fluid mb-2"
src="@/assets/images/iron-bank/lock-check.png"
alt="lock check icon"
/>
<p>
DISA STIGs, CIS benchmarks, and best practices applied
</p>
</div>
</div>
<div :class="$vuetify.breakpoint.smAndDown ? 'text-center' : ''">
<v-btn
:class="
$vuetify.breakpoint.smAndDown
? 'my-3 my-md-6 mx-3'
: 'my-6 mr-6'
"
color="primary"
href="https://ironbank.dso.mil/ironbank/repomap"
target="_blank"
>
Explore Iron Bank
</v-btn>
<v-btn
:class="
$vuetify.breakpoint.smAndDown
? 'my-3 mx-3 black--text'
: 'my-6 black--text'
"
color="light"
href="https://repo1.dso.mil/dsop"
target="_blank"
>
Repo One
</v-btn>
</div>
</div>
<div
class="col-md-5 text-left pl-md-16 pa-12 pa-md-0"
:style="
$vuetify.breakpoint.mdAndUp
? 'border-left: solid white 1px'
: ''
"
>
<h2 class="ma-auto px-0 pb-10 white--text">
How Do We Do It?
</h2>
<p>
We work with the open source community and commercial vendors to
centralize a hardened and approved version of an application
that is easily accessible to the entire DoD. By leveraging our
Certificate to Field (CtF) process, the DoD community can
quickly and easily deploy applications at unprecedented speed.
</p>
<v-btn
class="my-6"
color="primary"
href="https://registry1.dso.mil"
target="_blank"
>
Registry One
</v-btn>
</div>
</div>
</div>
</div>
<v-container class="px-md-8 px-auto mt-10">
<v-container class="px-lg-16">
<h2 class="my-3 mx-lg-16 mx-auto">
How Do I Contribute Containers to Iron Bank to be Hardened?
</h2>
<div class="row justify-center">
<div class="col-12 col-xl-8">
<p>
Before contributing a container, you should first make sure that
the application you are contributing is not already in the Iron
Bank. If the container image does not exist, requests can be
made with the Container Hardening Team on Repo One for
accreditation.
</p>
</div>
</div>
<v-btn
class="my-6 mx-auto"
color="primary"
href="https://repo1.dso.mil/dsop"
target="_blank"
>
Launch Repo One
</v-btn>
</v-container>
</v-container>
<div class="row justify-center">
<div class="image-wrapper" @click="() => showImg(0)">
<img
class="img-fluid"
src="@/assets/images/iron-bank/IBVS_diagram.png"
alt="Iron Bank Diagram"
/>
</div>
</div>
<div class="mx-auto mb-10">
<DownloadButton
text="Iron Bank Diagram"
:internalFilePath="ibvsDiagram"
/>
</div>
<v-container class="px-md-8 px-auto">
<v-container class="px-lg-16">
<h2 class="my-3 mx-lg-16">
Pulling Hardened Containers From Registry One
</h2>
<div class="row justify-center">
<div class="col-12 col-xl-8">
<p>
All containers under the Iron Bank project are officially
approved. See the following diagram on how to manually pull
containers from Registry One. Automated pull capabilities coming
soon.
</p>
</div>
</div>
<v-btn
class="my-6 mx-auto"
color="primary"
href="https://registry1.dso.mil"
target="_blank"
>
Launch Registry One
</v-btn>
</v-container>
</v-container>
<div class="row justify-center" v-if="$vuetify.breakpoint.mdAndUp">
<div class="image-wrapper" @click="() => showImg(1)">
<img
class="img-fluid"
src="@/assets/images/iron-bank/IBVS_registry1_process.png"
alt="Iron Bank Registry1 Process"
/>
</div>
</div>
<div class="mt-16" v-if="$vuetify.breakpoint.smAndDown">
<IBCollapsiblesDownloadSteps />
</div>
<div class="mx-auto mt-4 mb-10">
<DownloadButton
text="Pulling Containers"
:internalFilePath="ibvsRegistryProcess"
/>
</div>
<v-container class="px-md-8 px-auto mt-10">
<v-container class="px-lg-16 text-center">
<h2 class="my-3 mx-lg-16 mx-auto">
How Do I Use A Hardened Container at a Multi-Security Level?
</h2>
<div class="row justify-center">
<div class="col-12 col-xl-8">
<p>
Applications are typically approved at multiple Impact Levels
(IL). Each organization is welcome to accept reciprocity with
our approvals, but may choose to do additional assessments such
as an Intelligence Review. We are working on automatically
transferring images from lower classification levels to higher
classifications for immediate use.
</p>
</div>
</div>
</v-container>
</v-container>
<v-container class="px-md-8 px-auto">
<v-container class="px-lg-16 text-center">
<h2 class="my-3 mx-lg-16 mx-auto">
The Iron Bank Pipeline
</h2>
<div class="row justify-center">
<div class="col-12 col-xl-8">
<p>
Every container must pass each phase of the Iron Bank pipeline
to be available on Iron Bank and Registry One. Passing these six
phases results in a container being signed and accredited.
</p>
</div>
</div>
<v-btn
class="my-6 mx-auto"
color="primary"
href="https://repo1.dso.mil/ironbank-tools/ironbank-pipeline/-/blob/master/README.md"
target="_blank"
>
Learn More
</v-btn>
</v-container>
</v-container>
<div class="row justify-center" v-if="$vuetify.breakpoint.mdAndUp">
<div class="image-wrapper" @click="() => showImg(2)">
<img
class="img-fluid"
src="@/assets/images/iron-bank/IBVS_pipeline.png"
alt="Iron Bank Pipeline"
/>
</div>
</div>
<div class="mt-16" v-if="$vuetify.breakpoint.smAndDown">
<IBCollapsiblesPipeline />
</div>
<div class="mx-auto mt-4 mb-10">
<DownloadButton
text="Iron Bank Pipeline"
:internalFilePath="ibvsPipeline"
/>
</div>
<v-container class="px-md-8 px-auto">
<v-container class="px-md-16">
<h2 class="my-3 mx-md-16 mx-auto">
Onboarding
</h2>
<div class="row justify-center">
<div class="col-12 col-xl-8">
<p>
Interested in submitting a container to be hardened and
published on Iron Bank and Registry One? Check out the
Contributor Onboarding Guide and see how to successfully scan
and harden your container(s) through the
<Tooltip
text="DevSecOps"
tooltip="Development, Security, and Operations"
/>
Platform.
</p>
</div>
</div>
<v-btn
class="my-6 mx-auto"
color="primary"
href="https://repo1.dso.mil/dsop/dccscr/-/tree/master/contributor-onboarding"
target="_blank"
>
Onboarding Guide
</v-btn>
</v-container>
</v-container>
</v-container>
<Wave :bottom="false">
<div class="container">
<div class="row justify-content-center px-8">
<div class="col-md-6">
<div>
<h2 class="mx-auto">
Have More Questions?
</h2>
</div>
<p class="mx-auto">
Check out our FAQ page.
</p>
</div>
</div>
<div>
<v-btn
class="mx-auto mt-6"
color="primary"
href="https://confluence.il2.dso.mil/cq/questions.action?spaceKey=P1"
target="_blank"
>FAQ</v-btn
>
</div>
</div>
</Wave>
<vue-easy-lightbox
escDisabled
moveDisabled
:visible="lightbox.visible"
:imgs="lightbox.imgs"
:index="lightbox.index"
@hide="handleHide"
></vue-easy-lightbox>
</div>
</template>
<script>
import PageHeader from "@/components/PageHeader";
import Wave from "@/components/Wave";
import VueEasyLightbox from "vue-easy-lightbox";
import IBLogo from "@/assets/images/logos/Iron_Bank_Logo_LIGHT.png";
import IBVSDiagram from "@/assets/images/iron-bank/IBVS_diagram.png";
import IBVSRegistryProcess from "@/assets/images/iron-bank/IBVS_registry1_process.png";
import IBVSPipeline from "@/assets/images/iron-bank/IBVS_pipeline.png";
import DownloadButton from "@/components/Base/DownloadButton";
import IBCollapsiblesPipeline from "@/components/IBCollapsiblesPipeline";
import IBCollapsiblesDownloadSteps from "@/components/IBCollapsiblesDownloadSteps";
import Tooltip from "@/components/Base/Tooltip";
export default {
name: "IronBank",
components: {
PageHeader,
Wave,
VueEasyLightbox,
DownloadButton,
IBCollapsiblesPipeline,
IBCollapsiblesDownloadSteps,
Tooltip,
},
methods: {
showImg(index) {
this.lightbox.index = index;
this.lightbox.visible = true;
},
handleHide() {
this.lightbox.visible = false;
},
getImageUrl(filename) {
return require(`@/assets/images/${filename}`);
},
},
data: function() {
return {
ibLogo: IBLogo,
ibvsDiagram: IBVSDiagram,
ibvsRegistryProcess: IBVSRegistryProcess,
ibvsPipeline: IBVSPipeline,
// lightbox state
lightbox: {
visible: false,
index: 0, // default: 0
imgs: [
require("@/assets/images/iron-bank/IBVS_diagram.png"),
require("@/assets/images/iron-bank/IBVS_registry1_process.png"),
require("@/assets/images/iron-bank/IBVS_pipeline.png"),
],
},
};
},
};
</script>
<style lang="scss">
.iron-bank {
li {
margin: 15px 0;
}
}
</style>