Merge pull request #3174 from charhate/ui_changes
Authority create: Email added to subject DN
This commit is contained in:
commit
e078d33103
|
@ -43,13 +43,13 @@ class AuthorityInputSchema(LemurInputSchema):
|
||||||
organization = fields.String(
|
organization = fields.String(
|
||||||
missing=lambda: current_app.config.get("LEMUR_DEFAULT_ORGANIZATION")
|
missing=lambda: current_app.config.get("LEMUR_DEFAULT_ORGANIZATION")
|
||||||
)
|
)
|
||||||
location = fields.String(
|
location = fields.String()
|
||||||
missing=lambda: current_app.config.get("LEMUR_DEFAULT_LOCATION")
|
|
||||||
)
|
|
||||||
country = fields.String(
|
country = fields.String(
|
||||||
missing=lambda: current_app.config.get("LEMUR_DEFAULT_COUNTRY")
|
missing=lambda: current_app.config.get("LEMUR_DEFAULT_COUNTRY")
|
||||||
)
|
)
|
||||||
state = fields.String(missing=lambda: current_app.config.get("LEMUR_DEFAULT_STATE"))
|
state = fields.String(missing=lambda: current_app.config.get("LEMUR_DEFAULT_STATE"))
|
||||||
|
# Creating a String field instead of Email to allow empty value
|
||||||
|
email = fields.String()
|
||||||
|
|
||||||
plugin = fields.Nested(PluginInputSchema)
|
plugin = fields.Nested(PluginInputSchema)
|
||||||
|
|
||||||
|
|
|
@ -107,9 +107,7 @@ class CertificateInputSchema(CertificateCreationSchema):
|
||||||
organization = fields.String(
|
organization = fields.String(
|
||||||
missing=lambda: current_app.config.get("LEMUR_DEFAULT_ORGANIZATION")
|
missing=lambda: current_app.config.get("LEMUR_DEFAULT_ORGANIZATION")
|
||||||
)
|
)
|
||||||
location = fields.String(
|
location = fields.String()
|
||||||
missing=lambda: current_app.config.get("LEMUR_DEFAULT_LOCATION")
|
|
||||||
)
|
|
||||||
country = fields.String(
|
country = fields.String(
|
||||||
missing=lambda: current_app.config.get("LEMUR_DEFAULT_COUNTRY")
|
missing=lambda: current_app.config.get("LEMUR_DEFAULT_COUNTRY")
|
||||||
)
|
)
|
||||||
|
|
|
@ -124,4 +124,8 @@ angular.module('lemur')
|
||||||
opened: false
|
opened: false
|
||||||
};
|
};
|
||||||
|
|
||||||
|
$scope.populateSubjectEmail = function () {
|
||||||
|
$scope.authority.email = $scope.authority.owner;
|
||||||
|
};
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
|
@ -26,8 +26,7 @@
|
||||||
Location
|
Location
|
||||||
</label>
|
</label>
|
||||||
<div class="col-sm-10">
|
<div class="col-sm-10">
|
||||||
<input name="location" ng-model="authority.location" placeholder="Location" class="form-control" required/>
|
<input name="location" ng-model="authority.location" placeholder="Location" class="form-control"/>
|
||||||
<p ng-show="dnForm.location.$invalid && !dnForm.location.$pristine" class="help-block">You must enter a location</p>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group"
|
<div class="form-group"
|
||||||
|
@ -49,6 +48,15 @@
|
||||||
<input name="organizationalUnit" ng-model="authority.organizationalUnit" placeholder="Organizational Unit" class="form-control"/>
|
<input name="organizationalUnit" ng-model="authority.organizationalUnit" placeholder="Organizational Unit" class="form-control"/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="form-group"
|
||||||
|
ng-class="{'has-error': dnForm.email.$invalid, 'has-success': !dnForm.$invalid&&dnForm.email.$dirty}">
|
||||||
|
<label class="control-label col-sm-2">
|
||||||
|
Email
|
||||||
|
</label>
|
||||||
|
<div class="col-sm-10">
|
||||||
|
<input type="email" name="email" ng-model="authority.email" placeholder="Email Address" class="form-control"/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</form>
|
</form>
|
||||||
|
|
||||||
|
|
|
@ -21,7 +21,7 @@
|
||||||
<div class="col-sm-10">
|
<div class="col-sm-10">
|
||||||
<input type="email" name="owner" ng-model="authority.owner" placeholder="TeamDL@example.com"
|
<input type="email" name="owner" ng-model="authority.owner" placeholder="TeamDL@example.com"
|
||||||
uib-tooltip="This is the authorities team distribution list or the main point of contact for this authority"
|
uib-tooltip="This is the authorities team distribution list or the main point of contact for this authority"
|
||||||
class="form-control" required/>
|
class="form-control" ng-change="populateSubjectEmail()" required/>
|
||||||
<p ng-show="trackingForm.owner.$invalid && !trackingForm.owner.$pristine" class="help-block">You must
|
<p ng-show="trackingForm.owner.$invalid && !trackingForm.owner.$pristine" class="help-block">You must
|
||||||
enter an Certificate Authority owner</p>
|
enter an Certificate Authority owner</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -38,9 +38,7 @@
|
||||||
Location
|
Location
|
||||||
</label>
|
</label>
|
||||||
<div class="col-sm-10">
|
<div class="col-sm-10">
|
||||||
<input name="location" ng-model="certificate.location" placeholder="Location" class="form-control" required/>
|
<input name="location" ng-model="certificate.location" placeholder="Location" class="form-control"/>
|
||||||
<p ng-show="dnForm.location.$invalid && !dnForm.location.$pristine" class="help-block">You must enter a
|
|
||||||
location</p>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group"
|
<div class="form-group"
|
||||||
|
|
|
@ -154,7 +154,7 @@ def test_get_certificate_primitives(certificate):
|
||||||
|
|
||||||
with freeze_time(datetime.date(year=2016, month=10, day=30)):
|
with freeze_time(datetime.date(year=2016, month=10, day=30)):
|
||||||
primitives = get_certificate_primitives(certificate)
|
primitives = get_certificate_primitives(certificate)
|
||||||
assert len(primitives) == 26
|
assert len(primitives) == 25
|
||||||
assert (primitives["key_type"] == "RSA2048")
|
assert (primitives["key_type"] == "RSA2048")
|
||||||
|
|
||||||
|
|
||||||
|
@ -254,17 +254,18 @@ def test_certificate_input_schema(client, authority):
|
||||||
"validityStart": arrow.get(2018, 11, 9).isoformat(),
|
"validityStart": arrow.get(2018, 11, 9).isoformat(),
|
||||||
"validityEnd": arrow.get(2019, 11, 9).isoformat(),
|
"validityEnd": arrow.get(2019, 11, 9).isoformat(),
|
||||||
"dnsProvider": None,
|
"dnsProvider": None,
|
||||||
|
"location": "A Place"
|
||||||
}
|
}
|
||||||
|
|
||||||
data, errors = CertificateInputSchema().load(input_data)
|
data, errors = CertificateInputSchema().load(input_data)
|
||||||
|
|
||||||
assert not errors
|
assert not errors
|
||||||
assert data["authority"].id == authority.id
|
assert data["authority"].id == authority.id
|
||||||
|
assert data["location"] == "A Place"
|
||||||
|
|
||||||
# make sure the defaults got set
|
# make sure the defaults got set
|
||||||
assert data["common_name"] == "test.example.com"
|
assert data["common_name"] == "test.example.com"
|
||||||
assert data["country"] == "US"
|
assert data["country"] == "US"
|
||||||
assert data["location"] == "Los Gatos"
|
|
||||||
|
|
||||||
assert len(data.keys()) == 19
|
assert len(data.keys()) == 19
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue