Missing Licenses
[aaf/authz.git] / docs / sections / installation / AAF_Environment_Beijing.rst
1 .. This work is licensed under a Creative Commons Attribution 4.0 International License.
2 .. http://creativecommons.org/licenses/by/4.0
3 .. Copyright © 2017 AT&T Intellectual Property. All rights reserved.
4
5 AAF Environment - Beijing
6 =========================
7
8 Access
9 ~~~~~~
10
11 You must be connected to the WindRiver "pod-onap-01" VPN to gain access
12 to AAF Beijing
13
14 DNS (/etc/hosts)
15 ~~~~~~~~~~~~~~~~
16
17 At this time, there is no known DNS available for ONAP Entities.  It is
18 recommended that you add the following entry into your "/etc/hosts" on
19 your accessing machine:
20
21     /etc/hosts:
22
23     10.12.6.214 aaf-onap-beijing-test aaf-onap-beijing-test.osaaf.org
24
25 Environment Artifacts (AAF FS)
26 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
27
28     AAF has an HTTP Fileserver to gain access to needed public info.
29
30     http://aaf-onap-beijing-test.osaaf.org/-
31
32 Credentials
33 ~~~~~~~~~~~
34
35     AAF does support User/Password, and allows additional plugins as it
36     did in Amsterdam, however, User/Password credentials are inferior to
37     PKI technology, and does not match the ONAP Design goal of TLS and
38     PKI Identity across the board.  Therefore, while an individual
39     organization might avail themselves of the User/Password facilities
40     within AAF, for ONAP, we are avoiding.
41
42     THEREFORE: **GO WITH CERTIFICATE IDENTITY**
43
44 Certificates
45 ~~~~~~~~~~~~
46
47 Root Certificate
48 ^^^^^^^^^^^^^^^^
49
50     `AAF\_RootCA.cer <http://aaf-onap-beijing-test.osaaf.org/AAF_RootCA.cer>`__
51
52 AAF CA
53 ^^^^^^
54
55     At time of Beijing, an official Certificate Authority for ONAP was
56     not declared, installed or operationalized.  Secure TLS requires
57     certificates, so for the time being, the Certificate Authority is
58     being run by AAF Team.
59
60 Root Certificate
61 ''''''''''''''''
62
63     | The Root Certificate for ONAP Certificate Authority used by AAF
64       is \ `AAF\_RootCA.cer <http://aaf-onap-beijing-test.osaaf.org/AAF_RootCA.cer>`__
65     | Depending on your Browser/ Operating System, clicking on this link
66       will allow you to install this Cert into your Browser for GUI
67       access (see next)
68
69     This Root Certificate is also available in "truststore" form, ready
70     to be used by Java or other processes:
71
72 -  
73
74    -  
75
76       -  `truststoreONAP.p12 <http://aaf-onap-beijing-test.osaaf.org/truststoreONAP.p12>`__ 
77              -  This Truststore has ONLY the ONAP AAF\_RootCA in it.
78
79       -  `truststoreONAPall.jks <http://aaf-onap-beijing-test.osaaf.org/truststoreONAPall.jks>`__
80              - This Truststore has the ONAP AAF\_RootCA in it PLUS all
81              the Public CA Certs that are in Java 1.8.131 (note: this is
82              in jks format, because the original JAVA truststore was in
83              jks format)
84
85     Note: as of Java 8, pkcs12 format is recommended, rather than jks.
86      Java's "keytool" utility provides a conversion for .jks for Java 7
87     and previous.
88
89 Identity
90 ''''''''
91
92     Certificates certify nothing if there is no identity or process to
93     verify the Identity.  Typically, for a company, an HR department
94     will establish the formal organization, specifically, who reports to
95     whom.  For ONAP, at time of Beijing, no such formalized "Org Chart"
96     existed, so we'll be building this up as we go along.
97
98     Therefore, with each Certificate Request, we'll need identity
99     information as well, that will be entered into an ONAP Identity
100     file.  Again, as a real company, this can be derived or accessed
101     real-time (if available) as an "Organization Plugin".  Again, as
102     there appears to be no such central formal system in ONAP, though,
103     of course, Linux Foundation logins have some of this information for
104     ALL LF projects.  Until ONAP declares such a system or decides how
105     we might integrate with LF for Identity and we have time to create
106     an Integration strategy, AAF will control this data.
107
108     For each Identity, we'll need:
109
110   People
111         
112
113     | # 0 - unique ID (for Apps, just make sure it is unique, for
114       People, one might consider your LinuxFoundation ID)
115     | # 1 - full name (for App, name of the APP)
116     | # 2 - first name (for App, 
117     | # 3 - last name
118     | # 4 - phone
119     | # 5 - official email
120     | # 6 - type - person
121     | # 7 - reports to: If you are working as part of a Project, list
122       the PTL of your Project.  If you are PTL, just declare you are the
123       PTL 
124
125   Applications
126               
127
128     | # 0 - unique ID - For ONAP Test, this will be the same a the App
129       Acronym.
130     | # 1 - full name of the App
131     | # 2 - App Acronym
132     | # 3 - App Description, or just "Application"
133     | # 5 - official email - a Distribution list for the Application, or
134       the Email of the Owner
135     | # 6 - type - application
136     | # 7 - reports to: give the Application Owner's Unique ID.  Note,
137       this should also be the Owner in AAF Namespace
138
139 Obtaining a Certificate
140 '''''''''''''''''''''''
141
142     There are 3 types of Certificates available for AAF and ONAP
143     community through AAF.  People, App Client-only, and App Service
144     (can be used for both Client and Service)
145
146 Process (This process may fluctuate, or move to iTrack, so revisit this page for each certificate you request)
147                                                                                                               
148
149 1. 
150
151    1. 
152
153       1. 
154
155          1. Email the AAF Team
156             (jonathan.gathman@`att.com <http://att.com>`__, for now)
157
158          2. Put "REQUEST ONAP CERTIFICATE" in the Subject Line
159
160          3. If you have NOT established an Identity, see above, put the
161             Identity information in first
162
163          4. Then declare which of the three kinds of Certificates you
164             want.
165
166             1. **People** and **App Client-only** certificates will be
167                Manual
168
169                1. You will receive a reply email with instructions on
170                   creating and signing a CSR, with a specific Subject.
171
172                2. Reply back with the CSR attached. DO NOT CHANGE the
173                   Subject.  
174
175                   1. Subject is NOT NEGOTIABLE. If it does not match the
176                      original Email, you will be rejected, and will
177                      waste everyone's time.
178
179                3. You will receive back the certificate itself, and some
180                   openssl instructions to build a .p12 file (or maybe a
181                   ready-to-run Shell Script)
182
183             2. *App Service Certificate* is supported by AAF's Certman
184
185                1. However, this requires the establishment of Deployer
186                   Identities, as no Certificate is deployed without
187                   Authorization.
188
189                2. Therefore, for now, follow the "Manual" method,
190                   described in 4.a, but include the Machine to be the
191                   "cn="
192
193 People
194       
195
196     People Certificates can be used for browsers, curl, etc.
197
198     Automation and tracking of People Certificates will be proposed for
199     Casablanca.
200
201     In the meantime, for testing purposes, you may request a certificate
202     from AAF team, see process.
203
204 Application Client-only
205                        
206
207     Application Client-only certificates are not tied to a specific
208     machine.  They function just like people, only it is expected that
209     they are used within "keystores" as identity when talking to AAF
210     enabled components.
211
212     PLEASE USE your APP NAME IN CI/CD (OOM, etc) in your request.  That
213     makes the most sense for identity.
214
215     Automation and tracking of Application Certificates will be proposed
216     for Casablanca. 
217
218     In the meantime, for testing purposes, you may request a certificate
219     from AAF team, see process.
220
221 Application Service 
222                     
223
224     This kind of Certificate must have the Machine Name in the "CN="
225     position.  
226
227     AAF supports Automated Certificate Deployment, but this has not been
228     integrated with OOM at this time (April 12, 2018).  
229
230 -  
231
232    -  Please request Manual Certificate, but specify the Machine as
233           well.  Machine should be a name, so you might need to provide
234           your Clients with instructions on adding to /etc/hosts until
235           ONAP address Name Services for ONAP Environments (i.e. DNS)
236
237     **GUI**
238
239     https://aaf-onap-beijing-test.osaaf.org
240
241     Note: this link is actually to the AAF Locator, which redirects you
242     to an available GUI
243
244     The GUI uses the ONAP AAF Certificate Authority (private).  Before
245     you can use the Browser, you will need to
246
247 -  
248
249    -  Accept the `Root
250       Certificate <#AAFEnvironment-Beijing-RootCertificate>`__
251
252    -  Obtain a Personal Certificate above
253
254    -  Add the Personal Certificate/Private key to your Browser.
255       Typically, this is done by having it packaged in a
256       P\ https://zoom.us/j/793296315