首先我要说的是,我并不完全确定我在寻找什么.我希望我可以解释我所处的情况,并且有人可以指出我正确的方向.
所以这就是我要反对的.我想构建一个ruby on rails应用程序,该应用程序将由某个域organizationA.com上的oranization A托管.然后,多个其他组织(X,Y,Z)将从其他域(orgx.com,orgy.com等)访问此工具.我现在还不知道X,Y和Z将使用哪种形式的身份验证,最有可能是LDAP或本机Windows,但重要的是它可能因组织而异.
在这种情况下,允许X,Y和Z的用户使用SSO使用该应用程序的最佳方法是什么?是否有任何现有工具可供您推荐或使用?是否有我正在描述的名称,所以我可以做更好的谷歌搜索?
任何帮助深表感谢.
CASino - http://casino.rbcas.com/
看起来这将是一个单独的服务器,仅用于身份验证,使用CAS身份验证协议,并且可以用于不同组织的多种不同类型的身份验证.我得检查一下.
我正在努力测试一个监视几个变量的控制器.在我的单元测试中,即使调用scope,我也无法调用$ watch函数的回调.$ digest().看起来这应该很简单,但我没有运气.
这是我在控制器中的内容:
angular.module('app')
.controller('ClassroomsCtrl', function ($scope, Classrooms) {
$scope.subject_list = [];
$scope.$watch('subject_list', function(newValue, oldValue){
if(newValue !== oldValue) {
$scope.classrooms = Classrooms.search(ctrl.functions.search_params());
}
});
});
Run Code Online (Sandbox Code Playgroud)
这是我的单元测试:
angular.module('MockFactories',[]).
factory('Classrooms', function(){
return jasmine.createSpyObj('ClassroomsStub', [
'get','save','query','remove','delete','search', 'subjects', 'add_subject', 'remove_subject', 'set_subjects'
]);
});
describe('Controller: ClassroomsCtrl', function () {
var scope, Classrooms, controllerFactory, ctrl;
function createController() {
return controllerFactory('ClassroomsCtrl', {
$scope: scope,
Classrooms: Classrooms
});
}
// load the controller's module
beforeEach(module('app'));
beforeEach(module('MockFactories'));
beforeEach(inject(function($controller, $rootScope, _Classrooms_ ){
scope = $rootScope.$new();
Classrooms = _Classrooms_;
controllerFactory …Run Code Online (Sandbox Code Playgroud) 我在使用表单时遇到了一些基本问题.这就是我做的.
我从这里抓住了这个很酷的指令:https://github.com/TheSharpieOne/angular-input-match
它看起来像这样:
directive('match', function () {
return {
require: 'ngModel',
restrict: 'A',
scope: {
match: '='
},
link: function(scope, elem, attrs, ngModel) {
scope.$watch(function() {
return (ngModel.$pristine && angular.isUndefined(ngModel.$modelValue)) || scope.match === ngModel.$viewValue;
}, function(currentValue, previousValue) {
ngModel.$setValidity('match', currentValue);
});
}
};
});
Run Code Online (Sandbox Code Playgroud)
本质上,该指令监视它附加到模型值的元素,并将其与match属性中的模型值进行比较.
所以...例如,下面我们正在观察两个密码是否匹配:
Password: <input ng-model="password" type="password" />
Confirm: <input ng-model="passwordConfirm" type="password" match="password" />
Run Code Online (Sandbox Code Playgroud)
该指令似乎正在起作用,因为它适当地设置了ng-valid-match和ng-invalid-match.
但是,一旦将其设置为无效,passwordConfirm模型将永远不会再次更新.我已经完成了大量的console.loggin,在指令中查看ngModel,这是两个密码匹配时的样子:
Constructor {$viewValue: "asdf", $modelValue: undefined, $validators: Object, $parsers: Array[0], $formatters: Array[0]…}
$$debounceViewValueCommit: function (trigger, revalidate) {
$$invalidModelValue: "asdf" …Run Code Online (Sandbox Code Playgroud) 我正在尝试让Elasticsearch索引.txt文件,以便我可以搜索内容.我已经取得了一些进展,但在搜索部分没有运气.
这是我的映射:
mappings: {
file: {
properties: {
allow_token_share: {
type: string
},
file: {
type: string
},
deny_token_document: {
type: string
},
_name: {
type: string
},
_content_type: {
type: string
},
type: {
type: string
},
uri: {
type: string
},
deny_token_share: {
type: string
},
allow_token_document: {
type: string
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
这是我索引的文档:
{
_index: f_drive,
_type: file,
_id: file:/C:/Users/ttobinca.EPIC/Documents/Dev/Epicsearch/TestDocs/Test.txt,
_version: 1,
_score: 1,
_source: {
uri: C:\Users\ttobinca.EPIC\Documents\Dev\Epicsearch\TestDocs\Test.txt,
allow_token_document: __nosecurity__,
deny_token_document: __nosecurity__,
allow_token_share: __nosecurity__,
deny_token_share: __nosecurity__, …Run Code Online (Sandbox Code Playgroud)