You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+41-22Lines changed: 41 additions & 22 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,5 +1,5 @@
1
-
## Welcome to the Blazegraph Database
2
-
Blazegraph™ DB is a ultra high-performance graph database supporting Blueprints and RDF/SPARQL APIs. It supports up to 50 Billion edges on a single machine and has a enterprise features for High Availability, Scale-out architecture, and [GPU Acceleration](https://www.blazegraph.com/product/gpu-accelerated/). It is in production use for Fortune 500 customers such as EMC, Autodesk, and many others. It is supporting key [Precision Medicine](http://www.syapse.com) applications and has wide-spread usage for life science applications. It is used extensively to support Cyber anaytics in commercial and government applications. It powers the Wikimedia Foundation's [Wiki Data Query Service](https://query.wikidata.org/). See the latest [Feature Matrix](http://www.blazegraph.com/product/).
1
+
## Welcome to the Blazegraph Database ##
2
+
Blazegraph™ DB is a ultra high-performance graph database supporting Blueprints and RDF/SPARQL APIs. It supports up to 50 Billion edges on a single machine. It is in production use for Fortune 500 customers such as EMC, Autodesk, and many others. It is supporting key [Precision Medicine](http://www.syapse.com) applications and has wide-spread usage for life science applications. It is used extensively to support Cyber anaytics in commercial and government applications. It powers the Wikimedia Foundation's [Wikidata Query Service](https://query.wikidata.org/).
@@ -9,20 +9,47 @@ Please see the release notes in [releases](bigdata/src/releases) for version cha
9
9
10
10
Please also visit us at our: [website](https://www.blazegraph.com), [wiki](https://wiki.blazegraph.com), and [blog](https://blog.blazegraph.com/).
11
11
12
-
Find an issue? Need help? See [JIRA](https://jira.blazegraph.com) or purchase [Support](https://www.blazegraph.com/buy).
12
+
Find an issue? Need help? See [JIRA](https://jira.blazegraph.com).
13
13
14
14
Reporting a security issue: [Security Reporting](Security.md).
15
15
16
-
###Quick Start with the Executable Jar
16
+
###Quick Start with the Executable Jar ###
17
17
Up and running with Blazegraph in under 30 seconds: [Quick Start](https://wiki.blazegraph.com/wiki/index.php/Quick_Start).
18
18
19
-
###Samples and Examples
19
+
### Deploying in Production ###
20
+
Blazegraph is designed to be easy to use and get started. It ships without SSL or authentication by default for this reason. For production deployments, we _strongly_ recommend you enable SSL, authentication, and appropriate network configurations. There are some helpful links below to enable you to do this.
21
+
22
+
#### Enabling SSL support ####
23
+
To enable SSL support, uncomment the example [jetty.xml](blazegraph-jar/src/main/resources/jetty.xml#L141) and configure it for your local keystore.
24
+
25
+
#### Configuration Authentication ####
26
+
By default, Blazegraph ships without authentication enabled. This is great for developing, getting started, and doing research with Blazegraph. However, it's not recommended for any production deployment. To configuration authentication, you must configure it either within the web app container or via a reverse-proxy configuration.
27
+
28
+
Note that the Blazegraph namespace feature for [multi-tenancy](https://wiki.blazegraph.com/wiki/index.php/REST_API#Multi-Tenancy_API) does not provide security isolation. Users that can access the base URI of the server can access any of the available namespaces. You can further restrict this through a combination of authentication configuration and restricting access to specific namespace URIs, i.e. `/blazegraph/namespace/NAMESPACE/sparql`.
29
+
30
+
There are three basic options:
31
+
32
+
1.**Configuring Jetty Authentication for a standalone Jetty deployment**: Follow the [jetty](http://www.eclipse.org/jetty/documentation/9.2.22.v20170531/configuring-security-authentication.html) guide to configure authentication for the [jetty.xml](blazegraph-jar/src/main/resources/jetty.xml) you use to deploy the server by uncommenting the `<Get name="securityHandler">` section. You'll need to create a [realm.properties](blazegraph-jar/src/main/resources/realm.properties) and update the jetty.xml to point to its location on the filesystem. Then configure the [web.xml](bigdata-war-html/src/main/webapp/WEB-INF/web.xml) to uncomment the security-constraint.
33
+
1.**Configuring Tomcat Authentication for a standalone Tomcat deployment**: First configure a Tomcat [Realm](https://tomcat.apache.org/tomcat-7.0-doc/realm-howto.html) with your choice of authentication method (JDBC, JNDI, etc.). Then configure the [web.xml](bigdata-war-html/src/main/webapp/WEB-INF/web.xml) to uncomment the security-constraint.
34
+
1.**Setup a reverse-proxy configuration with authentication**: You can setup an http or https reverse proxy configuration that has authentication and forward requests to the local Blazegraph instance (typically running on localhost:9999). This is a good option with [Nginx](https://community.openhab.org/t/using-nginx-reverse-proxy-authentication-and-https/14542) and [Apache](https://stackoverflow.com/questions/5011102/apache-reverse-proxy-with-basic-authentication).
If you enable authentication and expose the Blazegraph workbench, you should also take steps to protect against CSRF. Tomcat8 provides a [CSRF filter](https://tomcat.apache.org/tomcat-8.0-doc/config/filter.html#CSRF_Prevention_Filter_for_REST_APIs) that can be configured. For Jetty, if you configure authentication the default value for `SecurityHandler.setSessionRenewedOnAuthentication(true)` can also be used. CSRF protection may require REST clients to implement HTTP headers to be used to interact with the service.
38
+
39
+
### Building the code ###
40
+
As a quick start, run `mvn install -DskipTests` or the utility script `./scripts/mavenInstall.sh `.
41
+
42
+
For more detailed maven information see the [wiki](https://wiki.blazegraph.com/wiki/index.php/MavenNotes).
43
+
44
+
If you build with Java 7, you need to add Maven options for TLS 1.2, i.e. `export MAVEN_OPTS="-Dhttps.protocols=TLSv1.2"`.
45
+
46
+
### Samples and Examples ###
20
47
There are code samples and examples to get started with the Blazegraph Database [here] (https://github.com/blazegraph/blazegraph-samples). Tinkerpop3 examples are included directly within the Tinkerpop3 repository per below.
21
48
22
-
###Javadocs
49
+
###Javadocs ###
23
50
Click here to view the lastest [API Javadocs](https://blazegraph.github.io/database/apidocs/index.html).
24
51
25
-
###Maven Central
52
+
###Maven Central ###
26
53
Starting with the 2.0.0 release, the Blazegraph Database is available on Maven Central. To include the core platform and dependencies, include the artifact below in your dependencies. [Developing with Maven](https://wiki.blazegraph.com/wiki/index.php/MavenNotes) has notes on developing with Blazegraph Database source code and Maven.
27
54
28
55
```
@@ -49,13 +76,13 @@ If you'd just link the Blazegraph Database dependencies without any of the exter
49
76
</dependency>
50
77
```
51
78
52
-
###Deployers
79
+
###Deployers ###
53
80
54
81
Starting with 2.0.0, the default context path for deployment is `http://localhost:9999/blazegraph/`. There are also Maven artifacts for WAR deployers (`blazegraph-war`), executable Jar files (`blazegraph-jar`), [Debian Package](blazegraph-deb/) (`blazegraph-deb`), [RPM](blazegraph-rpm/) (`blazegraph-rpm`), and a [Tarball](blazegraph-tgz/) (`blazegraph-tgz`).
55
82
56
83
The `bigdata-war` and `bigdata-jar` artifacts are included for legacy purposes and use the `/bigdata/` context path.
57
84
58
-
###Tinkerpop3
85
+
###Tinkerpop3 ###
59
86
Tinkerpop3 supports requires Java 1.8 and is now in a separate repository. See [Tinkerpop3](https://github.com/blazegraph/tinkerpop3). It is also available as Maven Central artifact.
60
87
61
88
```
@@ -67,19 +94,11 @@ Tinkerpop3 supports requires Java 1.8 and is now in a separate repository. See
67
94
68
95
```
69
96
70
-
###Triple Pattern Fragment (TPF) Server
71
-
There is a [Triple Pattern Fragment (TPF) for Blazegraph](https://github.com/TPF4Blazegraph/TPF4Blazegraph) server that supports [Linked Data Fragments](http://linkeddatafragments.org/).
72
-
73
-
```
74
-
<dependency>
75
-
<groupId>com.blazegraph</groupId>
76
-
<artifactId>BlazegraphBasedTPFServer</artifactId>
77
-
<version>0.1.0</version>
78
-
</dependency>
79
-
```
97
+
### Triple Pattern Fragment (TPF) Server ###
98
+
There is a [Blazegraph Triple Pattern Fragment TPF](https://github.com/hartig/BlazegraphBasedTPFServer) server that supports [Linked Data Fragments](http://linkeddatafragments.org/).
80
99
81
-
###Blazegraph Python Client
82
-
There is a Blazegraph Python Client [here](https://github.com/blazegraph/blazegraph-python)
100
+
###Blazegraph Python Client ###
101
+
There is a Blazegraph Python Client [here](https://github.com/blazegraph/blazegraph-python)
83
102
84
-
###Blazegraph Dot Net RDF Client
103
+
###Blazegraph Dot Net RDF Client ###
85
104
There is a Blazegraph Dot Net RDF Client [here](https://github.com/blazegraph/blazegraph-dotnetrdf)
Copy file name to clipboardExpand all lines: Security.md
+2-2Lines changed: 2 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,10 +1,10 @@
1
-
##Reporting a Blazegraph Security Issue##
1
+
##Reporting a Blazegraph Security Issue##
2
2
3
3
For customers and Blazegraph users, please send an email to security [at] blazegraph.com to report a security issue. You may send an encrypted message using the public key below.
4
4
5
5
This alias is monitored on a daily basis. All security reports are acknowledged within 24 hours. Mitigations for reported security issues are made in a reasonable timeframe, which may be as quickly as 24 hours for high-severity issues.
6
6
7
-
###Public Key###
7
+
###Public Key###
8
8
Please use the public key below for transmitting any sensitive information to the security alias.
0 commit comments